63#define QOF_OBJECT_VERSION 3
65#define QOF_MOD_OBJECT "qof.object"
68typedef void (*QofForeachCB) (gpointer obj, gpointer user_data);
69typedef void (*QofForeachTypeCB) (QofObject *type, gpointer user_data);
71 gpointer backend_data,
78 gint interface_version;
80 const char * type_label;
115 const char * (*printable)(gpointer instance);
125 int (*
version_cmp)(gpointer instance_left, gpointer instance_right);
132void qof_object_initialize (
void);
133void qof_object_shutdown (
void);
void(* QofInstanceForeachCB)(QofInstance *, gpointer user_data)
Callback type for qof_collection_foreach.
const gchar * QofIdType
QofIdType declaration.
const gchar * QofIdTypeConst
QofIdTypeConst declaration.
void qof_object_foreach(QofIdTypeConst type_name, QofBook *book, QofInstanceForeachCB cb, gpointer user_data)
Invoke the callback 'cb' on every instance ov a particular object type.
gboolean qof_object_register(const QofObject *object)
Register new types of object objects.
void qof_object_foreach_sorted(QofIdTypeConst type_name, QofBook *book, QofInstanceForeachCB cb, gpointer user_data)
Invoke callback 'cb' on each instance in guid orted order.
const char * qof_object_printable(QofIdTypeConst type_name, gpointer instance)
void qof_object_foreach_type(QofForeachTypeCB cb, gpointer user_data)
Invoke the callback 'cb' on every object class definition.
const QofObject * qof_object_lookup(QofIdTypeConst type_name)
Lookup an object definition.
gpointer qof_object_new_instance(QofIdTypeConst type_name, QofBook *book)
Create an instance of the indicated type, returning a pointer to that instance.
const char * qof_object_get_type_label(QofIdTypeConst type_name)
Get the printable label for a type.
Encapsulate all the information about a dataset.
QOF entity type identification system.
This is the QofObject Class descriptor.
int(* version_cmp)(gpointer instance_left, gpointer instance_right)
Given a pair of items of this type, this routine returns value indicating which item is 'newer'.
void(* mark_clean)(QofCollection *)
Mark this object's book clean (for after a load)
void(* book_end)(QofBook *)
book_end is called when the book is being closed, to clean up (and free memory).
gpointer(* create)(QofBook *)
Create a new instance of this object type.
void(* book_begin)(QofBook *)
book_begin is called from within the Book routines to create module-specific hooks in a book whenever...
gboolean(* is_dirty)(const QofCollection *)
Determine if there are any dirty items in this book.