GdaDataPivot

GdaDataPivot — A data model for data summarisation

Stability Level

Stable, unless otherwise indicated

Functions

Types and Values

Includes

#include <virtual/gda-ldap-connection.h>

Description

The GdaDataPivot data model allows one to do some analysis and summarisation on the contents of a data model.

Functions

gda_data_pivot_new ()

GdaDataModel *
gda_data_pivot_new (GdaDataModel *model);

Creates a new GdaDataModel which will contain analysed data from model .

Parameters

model

a GdaDataModel to analyse data from, or NULL.

[allow-none]

Returns

a pointer to the newly created GdaDataModel.

[transfer full]


gda_data_pivot_add_field ()

gboolean
gda_data_pivot_add_field (GdaDataPivot *pivot,
                          GdaDataPivotFieldType field_type,
                          const gchar *field,
                          const gchar *alias,
                          GError **error);

Specifies that field has to be included in the analysis. field is a field specification with the following accepted syntaxes:

  • a column name in the source data model (see gda_data_model_get_column_index()); or

  • an SQL expression involving a column name in the source data model, for example:

    price
    firstname || ' ' || lastname 
    nb BETWEEN 5 AND 10

It is also possible to specify several fields to be added, while separating them by a comma (in effect still forming a valid SQL syntax).

Parameters

pivot

a GdaDataPivot object

 

field_type

the type of field to add

 

field

the field description, see below

 

alias

the field alias, or NULL.

[allow-none]

error

ta place to store errors, or NULL.

[allow-none]

Returns

TRUE if no error occurred

Since: 5.0


gda_data_pivot_add_data ()

gboolean
gda_data_pivot_add_data (GdaDataPivot *pivot,
                         GdaDataPivotAggregate aggregate_type,
                         const gchar *field,
                         const gchar *alias,
                         GError **error);

Specifies that field has to be included in the analysis. field is a field specification with the following accepted syntaxes:

  • a column name in the source data model (see gda_data_model_get_column_index()); or

  • an SQL expression involving a column name in the source data model, for examples:

    price
    firstname || ' ' || lastname 
    nb BETWEEN 5 AND 10

It is also possible to specify several fields to be added, while separating them by a comma (in effect still forming a valid SQL syntax).

Parameters

pivot

a GdaDataPivot object

 

aggregate_type

the type of aggregate operation to perform

 

field

the field description, see below

 

alias

the field alias, or NULL.

[allow-none]

error

ta place to store errors, or NULL.

[allow-none]

Returns

TRUE if no error occurred

Since: 5.0


gda_data_pivot_populate ()

gboolean
gda_data_pivot_populate (GdaDataPivot *pivot,
                         GError **error);

Acutally populates pivot by analysing the data from the provided data model.

Parameters

pivot

a GdaDataPivot object

 

error

ta place to store errors, or NULL.

[allow-none]

Returns

TRUE if no error occurred.

Since: 5.0

Types and Values

struct GdaDataPivot

struct GdaDataPivot {
	GObject                object;
	GdaDataPivotPrivate   *priv;
};

struct GdaDataPivotClass

struct GdaDataPivotClass {
	GObjectClass           parent_class;
};

GdaDataPivotPrivate

typedef struct _GdaDataPivotPrivate GdaDataPivotPrivate;

enum GdaDataPivotError

Possible GdaDataPivot related errors.

Members

GDA_DATA_PIVOT_INTERNAL_ERROR

   

GDA_DATA_PIVOT_SOURCE_MODEL_ERROR

   

GDA_DATA_PIVOT_FIELD_FORMAT_ERROR

   

GDA_DATA_PIVOT_USAGE_ERROR

   

GDA_DATA_PIVOT_OVERFLOW_ERROR

   

enum GdaDataPivotFieldType

Define types of field to be used when defining a GdaDataPivot analysis.

Members

GDA_DATA_PIVOT_FIELD_ROW

   

GDA_DATA_PIVOT_FIELD_COLUMN

   

enum GdaDataPivotAggregate

Possible operations for the data fields.

Members

GDA_DATA_PIVOT_AVG

   

GDA_DATA_PIVOT_COUNT

   

GDA_DATA_PIVOT_MAX

   

GDA_DATA_PIVOT_MIN

   

GDA_DATA_PIVOT_SUM