qofnumeric.h File Reference

An exact-rational-number library for QOF. More...

Go to the source code of this file.

Data Structures

struct  _QofNumeric

Defines

Deprecated, backwards-compatible definitions
#define QOF_RND_FLOOR   QOF_HOW_RND_FLOOR
#define QOF_RND_CEIL   QOF_HOW_RND_CEIL
#define QOF_RND_TRUNC   QOF_HOW_RND_TRUNC
#define QOF_RND_PROMOTE   QOF_HOW_RND_PROMOTE
#define QOF_RND_ROUND_HALF_DOWN   QOF_HOW_RND_ROUND_HALF_DOWN
#define QOF_RND_ROUND_HALF_UP   QOF_HOW_RND_ROUND_HALF_UP
#define QOF_RND_ROUND   QOF_HOW_RND_ROUND
#define QOF_RND_NEVER   QOF_HOW_RND_NEVER
#define QOF_DENOM_EXACT   QOF_HOW_DENOM_EXACT
#define QOF_DENOM_REDUCE   QOF_HOW_DENOM_REDUCE
#define QOF_DENOM_LCD   QOF_HOW_DENOM_LCD
#define QOF_DENOM_FIXED   QOF_HOW_DENOM_FIXED
#define QOF_DENOM_SIGFIG   QOF_HOW_DENOM_SIGFIG
#define QOF_DENOM_SIGFIGS(X)   QOF_HOW_DENOM_SIGFIGS(X)
#define QOF_NUMERIC_GET_SIGFIGS(X)   QOF_HOW_GET_SIGFIGS(X)

Typedefs

typedef struct _QofNumeric QofNumeric
 A rational-number type.

Functions

Constructors
static QofNumeric qof_numeric_create (gint64 num, gint64 denom)
static QofNumeric qof_numeric_zero (void)
QofNumeric qof_numeric_from_double (gdouble in, gint64 denom, gint how)
gboolean qof_numeric_from_string (const gchar *str, QofNumeric *n)
QofNumeric qof_numeric_error (QofNumericErrorCode error_code)
Value Accessors
static gint64 qof_numeric_num (QofNumeric a)
static gint64 qof_numeric_denom (QofNumeric a)
gdouble qof_numeric_to_double (QofNumeric in)
gchar * qof_numeric_to_string (QofNumeric n)
gchar * qof_numeric_dbg_to_string (QofNumeric n)
Comparisons and Predicates
QofNumericErrorCode qof_numeric_check (QofNumeric a)
gint qof_numeric_compare (QofNumeric a, QofNumeric b)
gboolean qof_numeric_zero_p (QofNumeric a)
gboolean qof_numeric_negative_p (QofNumeric a)
gboolean qof_numeric_positive_p (QofNumeric a)
gboolean qof_numeric_eq (QofNumeric a, QofNumeric b)
gboolean qof_numeric_equal (QofNumeric a, QofNumeric b)
gint qof_numeric_same (QofNumeric a, QofNumeric b, gint64 denom, gint how)
Arithmetic Operations
QofNumeric qof_numeric_add (QofNumeric a, QofNumeric b, gint64 denom, gint how)
QofNumeric qof_numeric_sub (QofNumeric a, QofNumeric b, gint64 denom, gint how)
QofNumeric qof_numeric_mul (QofNumeric a, QofNumeric b, gint64 denom, gint how)
QofNumeric qof_numeric_div (QofNumeric x, QofNumeric y, gint64 denom, gint how)
QofNumeric qof_numeric_neg (QofNumeric a)
QofNumeric qof_numeric_abs (QofNumeric a)
static QofNumeric qof_numeric_add_fixed (QofNumeric a, QofNumeric b)
static QofNumeric qof_numeric_sub_fixed (QofNumeric a, QofNumeric b)
Arithmetic Functions with Exact Error Returns
QofNumeric qof_numeric_add_with_error (QofNumeric a, QofNumeric b, gint64 denom, gint how, QofNumeric *error)
QofNumeric qof_numeric_sub_with_error (QofNumeric a, QofNumeric b, gint64 denom, gint how, QofNumeric *error)
QofNumeric qof_numeric_mul_with_error (QofNumeric a, QofNumeric b, gint64 denom, gint how, QofNumeric *error)
QofNumeric qof_numeric_div_with_error (QofNumeric a, QofNumeric b, gint64 denom, gint how, QofNumeric *error)
Change Denominator
QofNumeric qof_numeric_convert (QofNumeric in, gint64 denom, gint how)
QofNumeric qof_numeric_convert_with_error (QofNumeric in, gint64 denom, gint how, QofNumeric *error)
QofNumeric qof_numeric_reduce (QofNumeric in)


Detailed Description

An exact-rational-number library for QOF.

Author:
Copyright (C) 2000 Bill Gribble

Copyright (C) 2004 Linas Vepstas <linas@linas.org>

Copyright (c) 2006 Neil Williams <linux@codehelp.co.uk>

Definition in file qofnumeric.h.


Generated on Mon Feb 23 12:52:22 2009 for QOF by  doxygen 1.5.7