Libgda values were stored in
GdaValue structures, this is no longer the case
as the standard
GValue container is now used. As a consequence data types are now
identified by their
GType identifier, there is thus no more any
GdaDataModel has been transformed into an interface (as defined by the Glib
object system), and the old
GdaDataModel has been replaced by the
GdaDataModelRow class. No code using the
assume that data is internally stored as rows (vectors) of values as it was the case in the previous
In the new version, many objects implement the
GdaDataModel interface for various usages which did not exist in the previous version
such as data import and filtering.
GdaDataModel objects should now be considered
as non writable, and if they need to be modified, the modifications permissions should be checked
gda_data_model_get_attributes_at() function. See the
section about the various data models for more information.
The following UML schema shows the various implementations of the
interface and what they are for. Note that the
GdaDataModelRow should not be instantiated directly but either
used as a base class, or used through its children classes.