[Gnucash-changes] twaks to make doxygen run more nicely also,
fold in old/obsolete query
Linas Vepstas
linas at cvs.gnucash.org
Wed May 5 11:43:04 EDT 2004
Log Message:
-----------
twaks to make doxygen run more nicely
also, fold in old/obsolete query docuemntation
Modified Files:
--------------
gnucash/src/engine:
gnc-numeric.h
gnc-trace.h
guid.h
kvp-util-p.h
kvp-util.h
kvp_frame.h
qofbackend.h
qofbook.h
qofclass.h
qofgobj.h
qofid.h
qofinstance.h
qofobject-p.h
qofobject.h
qofquery-deserial.h
qofquery-serialize.h
qofquery.h
qofquerycore.h
qofsession.h
qofsql.h
Revision Data
-------------
Index: qofsql.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofsql.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -Lsrc/engine/qofsql.h -Lsrc/engine/qofsql.h -u -r1.4 -r1.5
--- src/engine/qofsql.h
+++ src/engine/qofsql.h
@@ -20,11 +20,11 @@
* *
\********************************************************************/
-/** @addtogroup Engine
+/** @addtogroup Query_SQL
@{ */
/**
@file qofsql.h
- @breif QOF client-side SQL parser.
+ @brief QOF client-side SQL parser.
@author Copyright (C) 2004 Linas Vepstas <linas at linas.org>
*/
Index: qofquery.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofquery.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -Lsrc/engine/qofquery.h -Lsrc/engine/qofquery.h -u -r1.9 -r1.10
--- src/engine/qofquery.h
+++ src/engine/qofquery.h
@@ -20,10 +20,56 @@
* *
\********************************************************************/
+/** @addtogroup Query_Core_API
+ @{ */
+
/** @file qofquery.h
- @breif find objects that match a certain expression.
+ @brief find objects that match a certain expression.
@author Copyright (C) 2002 Derek Atkins <warlord at MIT.EDU>
@author Copyright (C) 2003 Linas Vepstas <linas at linas.org>
+
+BASIC QUERY API:
+With this API you can create arbitrary logical
+queries to find sets of arbitrary object. To make simple
+queries (1 term, such as a search for a parameter with one value),
+create the appropriate
+QueryTerm structure and stick it in a Query object using
+xaccInitQuery. The QueryTerm should be malloced but the Query object
+will handle freeing it. To make compound queries, make multiple
+simple queries and combine them using qof_query_merge() and the logical
+operations of your choice.
+
+STRUCTURE OF A QUERY: A Query is a logical function of any number of
+QueryTerms. A QueryTerm consists of a C function pointer (the
+Predicate) and a PredicateData structure containing data passed to the
+predicate funtion. The PredicateData structure is a constant
+associated with the Term and is identical for every object that is
+tested.
+
+The terms of the Query may represent any logical function and are
+stored in canonical form, i.e. the function is expressed as a logical
+sum of logical products. So if you have QueryTerms a, b, c, d, e and
+you have the logical function a(b+c) + !(c(d+e)), it gets stored as
+ab + ac + !c + !c!e +!d!c + !d!e. This may not be optimal for evaluation
+of some functions but it's easy to store, easy to manipulate, and it
+doesn't require a complete algebra system to deal with.
+
+The representation is of a GList of GLists of QueryTerms. The
+"backbone" GList q->terms represents the OR-chain, and every item on
+the backbone is a GList of QueryTerms representing an AND-chain
+corresponding to a single product-term in the canonical
+representation. QueryTerms are duplicated when necessary to fill out
+the canonical form, and the same predicate may be evaluated multiple
+times per split for complex queries. This is a place where we could
+probably optimize.
+
+Evaluation of a Query (see qof_query_run()) is optimized as much as
+possible by short-circuited evaluation. The predicates in each
+AND-chain are sorted by predicate type, with Account queries sorted
+first to allow the evaluator to completely eliminate accounts from the
+search if there's no chance of them having splits that match.
+(XXX above no longer applies)
+
*/
@@ -74,12 +120,19 @@
GSList * qof_query_build_param_list (char const *param, ...);
-/** Create a new query. A Query MUST be set with a 'search-for'
- * type. The results of the query is a list of the indicated
- * search-for type.
+/** Create a new query.
+ * Before running the query, a 'search-for' type must be set
+ * otherwise nothing will be returned. The results of the query
+ * is a list of the indicated search-for type.
+ *
+ * Allocates and initializes a Query structure which must be
+ * freed by the user with qof_query_destroy(). A newly-allocated
+ * QofQuery object matches nothing (qof_query_run() will return NULL).
*/
QofQuery * qof_query_create (void);
QofQuery * qof_query_create_for (QofIdTypeConst obj_type);
+
+/** Frees the resources associate with a Query object. */
void qof_query_destroy (QofQuery *q);
/** Set the object type to be searched for. The results of
@@ -87,9 +140,14 @@
*/
void qof_query_search_for (QofQuery *query, QofIdTypeConst obj_type);
-/** Set the book to be searched (you can search multiple books)
- * If no books are set, no results will be returned (since there
- * is nothing to search over).
+/** Set the book to be searched. Books contain/identify collections
+ * of objects; the search will be performed over those books
+ * specified with this function. If no books are set, no results
+ * will be returned (since there is nothing to search over).
+ *
+ * You can search multiple books. To specify multiple books, call
+ * this function multiple times with different arguments.
+ * XXX needed qof_query_clear_books() to reset the list ...
*/
void qof_query_set_book (QofQuery *q, QofBook *book);
@@ -156,15 +214,27 @@
*/
GList * qof_query_last_run (QofQuery *query);
-/** DOCUMENT ME !! */
+/** Remove all query terms from query. query matches nothing
+ * after qof_query_clear().
+ */
void qof_query_clear (QofQuery *query);
-/** DOCUMENT ME !! */
+
+/** Remove query terms of a particular type from q. The "type" of a term
+ * is determined by the type of data that gets passed to the predicate
+ * function.
+ * XXX ??? Huh? remove anything of that predicate type, or just
+ * the particular predicate ?
+ */
void qof_query_purge_terms (QofQuery *q, GSList *param_list);
-/** Return boolean FALSE if there are no terms in the query */
+/** Return boolean FALSE if there are no terms in the query
+ * Can be used as a predicate to see if the query has been
+ * initialized (return value > 0) or is "blank" (return value == 0).
+ */
int qof_query_has_terms (QofQuery *q);
-/** Return the number of terms in thq query. */
+/** Return the number of terms in the canonical form of the query.
+ */
int qof_query_num_terms (QofQuery *q);
/** DOCUMENT ME !! */
@@ -174,17 +244,32 @@
QofQuery * qof_query_copy (QofQuery *q);
/** Make a copy of the indicated query, inverting the sense
- * of the search. In other words, if the original query search
- * for all objects with a certain condition, the inverted query
- * will search for all object with NOT that condition.
+ * of the search. In other words, if the original query search
+ * for all objects with a certain condition, the inverted query
+ * will search for all object with NOT that condition. The union
+ * of the results returned by the original and inverted queries
+ * equals the set of all searched objects. These to sets are
+ * disjoint (share no members in common).
+ *
+ * This will return a newly allocated QofQuery object, or NULL
+ * on error. Free it with qof_query_destroy() when no longer needed.
*/
QofQuery * qof_query_invert(QofQuery *q);
-/** Merges two queries together. Both queries must be compatible
- * search-types. If both queries are set, they must search for the
- * same object type. If only one is set, the resulting query will
- * search for the set type. If neither query has the search-type set,
- * the result will be unset as well.
+/** Combine two queries together using the Boolean set (logical)
+ * operator 'op'. For example, if the operator 'op' is set to
+ * QUERY_AND, then the set of results returned by the query will
+ * will be the Boolean set intersection of the results returned
+ * by q1 and q2. Similarly, QUERY_OR maps to set union, etc.
+ *
+ * Both queries must have compatible
+ * search-types. If both queries are set, they must search for the
+ * same object type. If only one is set, the resulting query will
+ * search for the set type. If neither query has the search-type set,
+ * the result will be unset as well.
+ *
+ * This will return a newly allocated QofQuery object, or NULL
+ * on error. Free it with qof_query_destroy() when no longer needed.
*/
QofQuery * qof_query_merge(QofQuery *q1, QofQuery *q2, QofQueryOp op);
@@ -268,3 +353,4 @@
GList * qof_query_get_books (QofQuery *q);
#endif /* QOF_QUERYNEW_H */
+/* @} */
Index: qofid.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofid.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -Lsrc/engine/qofid.h -Lsrc/engine/qofid.h -u -r1.9 -r1.10
--- src/engine/qofid.h
+++ src/engine/qofid.h
@@ -23,7 +23,7 @@
#ifndef QOF_ID_H
#define QOF_ID_H
-/** @addtogroup Engine
+/** @addtogroup Entity
@{ */
/** @file qofid.h
@brief QOF entity type identification system
Index: gnc-trace.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/gnc-trace.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -Lsrc/engine/gnc-trace.h -Lsrc/engine/gnc-trace.h -u -r1.10 -r1.11
--- src/engine/gnc-trace.h
+++ src/engine/gnc-trace.h
@@ -22,7 +22,11 @@
* Author: Linas Vepstas (linas at linas.org) *
\********************************************************************/
-/** @file gnc-trace.h @brief GnuCash error loging and tracing facility */
+/** @addtogroup Engine
+ @{ */
+
+/** @file gnc-trace.h
+ * @brief GnuCash error loging and tracing facility */
#ifndef GNC_TRACE_H
#define GNC_TRACE_H
@@ -224,3 +228,4 @@
}
#endif /* GNC_TRACE_H */
+/* @} */
Index: qofquerycore.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofquerycore.h,v
retrieving revision 1.13
retrieving revision 1.14
diff -Lsrc/engine/qofquerycore.h -Lsrc/engine/qofquerycore.h -u -r1.13 -r1.14
--- src/engine/qofquerycore.h
+++ src/engine/qofquerycore.h
@@ -21,8 +21,11 @@
* *
\********************************************************************/
+/** @addtogroup Query_Core_Predicates
+ @{ */
+
/** @file qofquerycore.h
- @breif API for providing core Query data types
+ @brief API for providing core Query data types
@author Copyright (C) 2002 Derek Atkins <warlord at MIT.EDU>
*/
@@ -36,6 +39,11 @@
#include "kvp_frame.h"
#include "qofclass.h"
+/**
+ * PREDICATE DATA TYPES: All the predicate data types are rolled up into
+ * the union type PredicateData. The "type" field specifies which type
+ * the union is.
+ */
typedef struct _QofQueryPredData QofQueryPredData;
/** Standard Query comparitors, for how to compare objects in a predicate.
@@ -73,7 +81,18 @@
QOF_DATE_MATCH_DAY
} QofDateMatch;
-/* Comparisons for QOF_TYPE_NUMERIC, QOF_TYPE_DEBCRED */
+/* Comparisons for QOF_TYPE_NUMERIC, QOF_TYPE_DEBCRED
+ *
+ * XXX Should be deprecated, or at least wrapped up as a convnience
+ * function, this is based on the old bill gribble code, which assumed
+ * the amount was always positive, and the then specified a funds-flow
+ * direction (credit, debit, or either).
+ *
+ * The point being that 'match credit' is equivalent to the compound
+ * predicate (amount >= 0) && (amount 'op' value) while the 'match
+ * debit' predicate is equivalent to (amount <= 0) && (abs(amount) 'op' value)
+*/
+
typedef enum {
QOF_NUMERIC_MATCH_DEBIT = 1,
QOF_NUMERIC_MATCH_CREDIT,
@@ -95,17 +114,23 @@
QOF_GUID_MATCH_LIST_ANY,
} QofGuidMatch;
-/** No extended comparisons for QOF_TYPE_INT32, QOF_TYPE_INT64,
- * QOF_TYPE_DOUBLE, QOF_TYPE_BOOLEAN, QOF_TYPE_KVP
+/** A CHAR type is for a RECNCell, Comparisons for QOF_TYPE_CHAR
+ * 'ANY' will match any charagter in the string.
+ *
+ * Match 'ANY' is a convenience/performance-enhanced predicate
+ * for the compound statement (value==char1) || (value==char2) || etc.
+ * Match 'NONE' is equivalent to
+ * (value != char1) && (value != char2) && etc.
*/
-
-/** A CHAR type is for a RECNCell */
-/* Comparisons for QOF_TYPE_CHAR */
typedef enum {
QOF_CHAR_MATCH_ANY = 1,
QOF_CHAR_MATCH_NONE
} QofCharMatch;
+/** No extended comparisons for QOF_TYPE_INT32, QOF_TYPE_INT64,
+ * QOF_TYPE_DOUBLE, QOF_TYPE_BOOLEAN, QOF_TYPE_KVP
+ */
+
/** Head of Predicate Data structures. All PData must start like this. */
struct _QofQueryPredData {
QofType type_name; /* QOF_TYPE_* */
@@ -161,3 +186,4 @@
char * qof_query_core_to_string (QofType, gpointer object, QofParam *getter);
#endif /* QOF_QUERYCORE_H */
+/* @} */
Index: qofobject-p.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofobject-p.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -Lsrc/engine/qofobject-p.h -Lsrc/engine/qofobject-p.h -u -r1.4 -r1.5
--- src/engine/qofobject-p.h
+++ src/engine/qofobject-p.h
@@ -18,10 +18,10 @@
* Boston, MA 02111-1307, USA gnu at gnu.org *
* *
\********************************************************************/
-/** @addtogroup Engine
+/** @addtogroup Entity
@{ */
/** @file qofobject-p.h
- * @breif the Core Object Registration/Lookup Private Interface
+ * @brief the Core Object Registration/Lookup Private Interface
*
* @author Copyright (c) 2001,2002, Derek Atkins <warlord at MIT.EDU>
*/
Index: qofbackend.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofbackend.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -Lsrc/engine/qofbackend.h -Lsrc/engine/qofbackend.h -u -r1.5 -r1.6
--- src/engine/qofbackend.h
+++ src/engine/qofbackend.h
@@ -18,7 +18,7 @@
* Boston, MA 02111-1307, USA gnu at gnu.org *
* *
\********************************************************************/
-/** @addtogroup Engine
+/** @addtogroup Backend
@{ */
/** @file qofbackend.h
@brief api for data storage Backend
Index: qofinstance.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofinstance.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -Lsrc/engine/qofinstance.h -Lsrc/engine/qofinstance.h -u -r1.10 -r1.11
--- src/engine/qofinstance.h
+++ src/engine/qofinstance.h
@@ -19,11 +19,12 @@
* Boston, MA 02111-1307, USA gnu at gnu.org *
* *
\********************************************************************/
-/*
- * Object instance holds many common fields that most
- * gnucash objects use.
+/** @addtogroup Entity
+ @{ */
+/** @file qofinstance.h
+ * @brief Object instance holds common fields that most gnucash objects use.
*
- * Copyright (C) 2003 Linas Vepstas <linas at linas.org>
+ * @author Copyright (C) 2003 Linas Vepstas <linas at linas.org>
*/
#ifndef QOF_INSTANCE_H
@@ -87,4 +88,5 @@
*/
QofInstance * qof_instance_lookup_twin (QofInstance *src, QofBook *book);
+/* @} */
#endif /* QOF_INSTANCE_H */
Index: gnc-numeric.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/gnc-numeric.h,v
retrieving revision 1.13
retrieving revision 1.14
diff -Lsrc/engine/gnc-numeric.h -Lsrc/engine/gnc-numeric.h -u -r1.13 -r1.14
--- src/engine/gnc-numeric.h
+++ src/engine/gnc-numeric.h
@@ -18,10 +18,10 @@
* *
*******************************************************************/
-/** @addtogroup Engine
+/** @addtogroup Numeric
@{ */
/** @file gnc-numeric.h
- @brief An exact-number library for gnucash.
+ @brief An exact-rational-number library for gnucash.
@author Copyright (C) 2000 Bill Gribble
*/
Index: kvp-util.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/kvp-util.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -Lsrc/engine/kvp-util.h -Lsrc/engine/kvp-util.h -u -r1.2 -r1.3
--- src/engine/kvp-util.h
+++ src/engine/kvp-util.h
@@ -20,7 +20,10 @@
* Boston, MA 02111-1307, USA gnu at gnu.org *
\********************************************************************/
-/** @file kvp-util.h @brief GnuCash KVP utility functions */
+/** @addtogroup KVP_Util
+ @{ */
+/** @file kvp-util.h
+ @brief GnuCash KVP utility functions */
#ifndef GNC_KVP_UTIL_H
#define GNC_KVP_UTIL_H
@@ -52,4 +55,5 @@
/***********************************************************************/
+/* @} */
#endif /* GNC_KVP_UTIL_H */
Index: qofbook.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofbook.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -Lsrc/engine/qofbook.h -Lsrc/engine/qofbook.h -u -r1.9 -r1.10
--- src/engine/qofbook.h
+++ src/engine/qofbook.h
@@ -17,7 +17,7 @@
* Boston, MA 02111-1307, USA gnu at gnu.org *
* *
\********************************************************************/
-/** @addtogroup Engine
+/** @addtogroup Book
@{ */
/** @file qofbook.h
* @brief dataset access (an "accounting book")
Index: kvp_frame.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/kvp_frame.h,v
retrieving revision 1.34
retrieving revision 1.35
diff -Lsrc/engine/kvp_frame.h -Lsrc/engine/kvp_frame.h -u -r1.34 -r1.35
--- src/engine/kvp_frame.h
+++ src/engine/kvp_frame.h
@@ -18,7 +18,7 @@
* Boston, MA 02111-1307, USA gnu at gnu.org *
* *
\********************************************************************/
-/** @addtogroup Engine
+/** @addtogroup KVP
@{ */
/** @file kvp_frame.h
@brief A key-value frame system
Index: qofsession.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofsession.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -Lsrc/engine/qofsession.h -Lsrc/engine/qofsession.h -u -r1.4 -r1.5
--- src/engine/qofsession.h
+++ src/engine/qofsession.h
@@ -20,7 +20,7 @@
* *
\********************************************************************/
-/** @addtogroup Engine
+/** @addtogroup Backend
* @{ */
/** @file qofsession.h
* @brief Encapsulates a connection to a backednd (persistent store)
Index: qofquery-deserial.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofquery-deserial.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -Lsrc/engine/qofquery-deserial.h -Lsrc/engine/qofquery-deserial.h -u -r1.1 -r1.2
--- src/engine/qofquery-deserial.h
+++ src/engine/qofquery-deserial.h
@@ -20,8 +20,10 @@
* Boston, MA 02111-1307, USA gnu at gnu.org *
* *
\********************************************************************/
+/** @addtogroup Query_XML
+ @{ */
/** @file qofquery-deserial.h
- @breif Convert Qof-Query XML to QofQuery
+ @brief Convert Qof-Query XML to QofQuery
Qof Queries can be convrted to and from XML so that they
can be sent from here to there. This file implements the
@@ -40,3 +42,4 @@
QofQuery *qof_query_from_xml (xmlNodePtr);
#endif /* QOF_QUERY_DESERIAL_H */
+/* @} */
Index: qofquery-serialize.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofquery-serialize.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -Lsrc/engine/qofquery-serialize.h -Lsrc/engine/qofquery-serialize.h -u -r1.1 -r1.2
--- src/engine/qofquery-serialize.h
+++ src/engine/qofquery-serialize.h
@@ -20,9 +20,10 @@
* Boston, MA 02111-1307, USA gnu at gnu.org *
* *
\********************************************************************/
-
+/* @addtogroup Query_XML
+ @{ */
/** @file qofquery-serialize.h
- @breif Convert QofQuery to XML
+ @brief Convert QofQuery to XML
@author Copyright (C) 2001,2002,2004 Linas Vepstas <linas at linas.org>
*/
@@ -39,3 +40,4 @@
xmlNodePtr qof_query_to_xml (QofQuery *q);
#endif /* QOF_QUERY_SERIALIZE_H */
+/* @} */
Index: kvp-util-p.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/kvp-util-p.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -Lsrc/engine/kvp-util-p.h -Lsrc/engine/kvp-util-p.h -u -r1.8 -r1.9
--- src/engine/kvp-util-p.h
+++ src/engine/kvp-util-p.h
@@ -1,5 +1,5 @@
/********************************************************************\
- * kvp_util.h -- misc odd-job kvp utils *
+ * kvp-util-p.h -- misc odd-job kvp utils (private file) *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License as *
@@ -28,8 +28,10 @@
#include "guid.h"
#include "kvp_frame.h"
-/* @file kvp_util.h
- * @breif misc odd-job kvp utils engine-private routines
+/** @addtogroup KVP_Util
+ @{ */
+/* @file kvp-util-p.h
+ * @brief misc odd-job kvp utils engine-private routines
* @author Copyright (C) 2001, 2003 Linas Vepstas <linas at linas.org> *
* @note PRIVATE FILE
* -- these routines are private to the engine. The should not be used
@@ -100,4 +102,5 @@
void gnc_kvp_bag_remove_frame (KvpFrame *root, const char *path,
KvpFrame *fr);
+/* @} */
#endif /* XACC_KVP_UTIL_P_H */
Index: qofgobj.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofgobj.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -Lsrc/engine/qofgobj.h -Lsrc/engine/qofgobj.h -u -r1.1 -r1.2
--- src/engine/qofgobj.h
+++ src/engine/qofgobj.h
@@ -23,7 +23,7 @@
#ifndef QOF_GOBJ_H
#define QOF_GOBJ_H
-/** @addtogroup Engine
+/** @addtogroup GObject
@{ */
/** @file qofgobj.h
@brief QOF to GLib GObject mapping
Index: qofclass.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofclass.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -Lsrc/engine/qofclass.h -Lsrc/engine/qofclass.h -u -r1.5 -r1.6
--- src/engine/qofclass.h
+++ src/engine/qofclass.h
@@ -20,6 +20,9 @@
* *
\********************************************************************/
+/** @addtogroup Entity
+ @{ */
+
/** @file qofclass.h
@brief API for registering paramters on objects
@author Copyright (C) 2002 Derek Atkins <warlord at MIT.EDU>
@@ -168,3 +171,4 @@
#endif /* QOF_CLASS_H */
+/* @} */
Index: guid.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/guid.h,v
retrieving revision 1.20
retrieving revision 1.21
diff -Lsrc/engine/guid.h -Lsrc/engine/guid.h -u -r1.20 -r1.21
--- src/engine/guid.h
+++ src/engine/guid.h
@@ -24,16 +24,17 @@
#ifndef GUID_H
#define GUID_H
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
-
#include <glib.h>
#include <stddef.h>
-/* This file defines an API for using globally unique identifiers. */
+/** @addtogroup GUID
+ @{ */
+/** @file guid.h
+ @brief globally unique ID User API
+ @author Copyright (C) 2000 Dave Peticolas <peticola at cs.ucdavis.edu>
+*/
-/* The type used to store guids */
+/** The type used to store guids */
typedef union _GUID
{
unsigned char data[16];
@@ -179,4 +180,5 @@
GHashTable *guid_hash_table_new(void);
+/* @} */
#endif
Index: qofobject.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/engine/qofobject.h,v
retrieving revision 1.13
retrieving revision 1.14
diff -Lsrc/engine/qofobject.h -Lsrc/engine/qofobject.h -u -r1.13 -r1.14
--- src/engine/qofobject.h
+++ src/engine/qofobject.h
@@ -19,10 +19,10 @@
* Boston, MA 02111-1307, USA gnu at gnu.org *
* *
\********************************************************************/
-/** @addtogroup Engine
+/** @addtogroup Entity
@{ */
/** @file qofobject.h
- * @breif the Core Object Registration/Lookup Interface
+ * @brief the Core Object Registration/Lookup Interface
*
* @author Copyright (c) 2001,2002, Derek Atkins <warlord at MIT.EDU>
*/
@@ -88,8 +88,16 @@
void qof_object_initialize (void);
void qof_object_shutdown (void);
+/** Invoke the callback 'cb' on every object class definition.
+ * The user_data pointer is passed back to the callback.
+ */
void qof_object_foreach_type (QofForeachTypeCB cb, gpointer user_data);
+/** Invoke the callback 'cb' on every instance ov a particular
+ * object type. It is presumed that the 'book' stores or somehow
+ * identifies a colllection of instances; thus the callback will
+ * be invoked only for those instances stored in the book.
+ */
void qof_object_foreach (QofIdTypeConst type_name, QofBook *book,
QofEntityForeachCB cb, gpointer user_data);
More information about the Gnucash-changes
mailing list