|  |  |  | GNOME Data Access 5 manual |  | 
|---|---|---|---|---|
| Top | Description | Object Hierarchy | Implemented Interfaces | Properties | ||||
| GdaDataModelArrayGdaDataModelArray — An implementation of GdaDataModel based on a GArray | 
struct GdaDataModelArray; struct GdaDataModelArrayClass; GdaDataModelArrayPrivate; GdaDataModel * gda_data_model_array_new (gint cols); GdaDataModel * gda_data_model_array_new_with_g_types (gint cols,...); GdaDataModel * gda_data_model_array_new_with_g_types_v (gint cols,GType *types); GdaDataModelArray * gda_data_model_array_copy_model (GdaDataModel *src,GError **error); GdaDataModelArray * gda_data_model_array_copy_model_ext (GdaDataModel *src,gint ncols,gint *cols,GError **error); GdaRow * gda_data_model_array_get_row (GdaDataModelArray *model,gint row,GError **error); void gda_data_model_array_set_n_columns (GdaDataModelArray *model,gint cols); void gda_data_model_array_clear (GdaDataModelArray *model);
The GdaDataModelArray object is a data model which internally uses a GArray to index all its rows (represented as GdaRow objects). In this data model, all the data is stored in memory, which can be a memory limitation if the number of rows is huge. This type of data model is easy to use to store some temporary data, and has a random access mode (any value can be accessed at any time without the need for an iterator).
GdaDataModel *      gda_data_model_array_new            (gint cols);
Creates a new GdaDataModel object without initializing the column
types. Using gda_data_model_array_new_with_g_types() is usually better.
| 
 | number of columns for rows in this data model. | 
| Returns : | a pointer to the newly created GdaDataModel. [transfer full] | 
GdaDataModel * gda_data_model_array_new_with_g_types (gint cols,...);
Creates a new GdaDataModel object with the column types as specified.
| 
 | number of columns for rows in this data model. | 
| 
 | types of the columns of the model to create as GType, as many as indicated by cols | 
| Returns : | a pointer to the newly created GdaDataModel. [transfer full] | 
GdaDataModel * gda_data_model_array_new_with_g_types_v (gint cols,GType *types);
Creates a new GdaDataModel object with the column types as specified.
| 
 | number of columns for rows in this data model. | 
| 
 | array of types of the columns of the model to create as GType, as many as indicated by cols. [array] | 
| Returns : | a pointer to the newly created GdaDataModel. [transfer full] | 
Since 4.2.6
GdaDataModelArray * gda_data_model_array_copy_model (GdaDataModel *src,GError **error);
Makes a copy of src into a new GdaDataModelArray object
| 
 | a GdaDataModel to copy data from | 
| 
 | a place to store errors, or NULL | 
| Returns : | a new data model, or NULLif an error occurred. [transfer full][allow-none] | 
GdaDataModelArray * gda_data_model_array_copy_model_ext (GdaDataModel *src,gint ncols,gint *cols,GError **error);
Like gda_data_model_array_copy_model(), makes a copy of src, but copies only some
columns.
| 
 | a GdaDataModel to copy data from | 
| 
 | size of cols | 
| 
 | array of src's columns to copy into the new array, notNULL. [array length=ncols] | 
| 
 | a place to store errors, or NULL | 
| Returns : | a new data model, or NULLif an error occurred. [transfer full][allow-none] | 
Since 5.2.0
GdaRow * gda_data_model_array_get_row (GdaDataModelArray *model,gint row,GError **error);
Get a pointer to a row in model
| 
 | a GdaDataModelArray object | 
| 
 | row number (starting from 0) | 
| 
 | a place to store errors, or NULL | 
| Returns : | the GdaRow, or NULLif an error occurred. [transfer none] | 
void gda_data_model_array_set_n_columns (GdaDataModelArray *model,gint cols);
Sets the number of columns for rows inserted in this model. 
cols must be greated than or equal to 0.
Also clears model's contents.
| 
 | the GdaDataModelArray. | 
| 
 | number of columns for rows this data model should use. | 
void                gda_data_model_array_clear          (GdaDataModelArray *model);
Frees all the rows in model.
| 
 | the model to clear. |