## GnomeDbServerAggregate

GnomeDbServerAggregate — Represents an aggregate in the DBMS (like `COUNT()` or `AVG()` for example)

##

# Synopsis

    struct      GnomeDbServerAggregate;
    GType       gnome_db_server_aggregate_get_type
                                                (void);
    GObject*    gnome_db_server_aggregate_new   (GnomeDbServer *srv);
    void        gnome_db_server_aggregate_set_dbms_id
                                                (GnomeDbServerAggregate *agg,
                                                 const gchar *id);
    gchar*      gnome_db_server_aggregate_get_dbms_id
                                                (GnomeDbServerAggregate *agg);
    void        gnome_db_server_aggregate_set_sqlname
                                                (GnomeDbServerAggregate *agg,
                                                 const gchar *sqlname);
    const gchar* gnome_db_server_aggregate_get_sqlname
                                                (GnomeDbServerAggregate *agg);
    void        gnome_db_server_aggregate_set_arg_type
                                                (GnomeDbServerAggregate *agg,
                                                 GnomeDbServerDataType *dt);
    GnomeDbServerDataType* gnome_db_server_aggregate_get_arg_type
                                                (GnomeDbServerAggregate *agg);
    void        gnome_db_server_aggregate_set_ret_type
                                                (GnomeDbServerAggregate *agg,
                                                 GnomeDbServerDataType *dt);
    GnomeDbServerDataType* gnome_db_server_aggregate_get_ret_type
                                                (GnomeDbServerAggregate *agg);

## Object Hierarchy

      GObject
       +----GnomeDbBase
             +----GnomeDbServerAggregate

## Implemented Interfaces

GnomeDbServerAggregate implements GnomeDbXmlStorage.

## Properties

      "prop"                 gpointer             : Read / Write

## Signal Prototypes

    "templ-signal"
                void        user_function      (GnomeDbServerAggregate *dbserveraggregate,
                                                gpointer user_data);

## Description

Because aggregates can be polymorphic, the name is not enough to identify them, so the DBMS provides a unique id which can be used to uniquely identify an aggregate.

It implements the GnomeDbXmlStorage interface.

## Details

### struct GnomeDbServerAggregate

    struct GnomeDbServerAggregate;

### gnome_db_server_aggregate_get_type ()

    GType       gnome_db_server_aggregate_get_type
                                                (void);

Returns : |

### gnome_db_server_aggregate_new ()

    GObject*    gnome_db_server_aggregate_new   (GnomeDbServer *srv);

Creates a new GnomeDbServerAggregate object

`srv` : | a GnomeDbServer object
Returns : | the new object

### gnome_db_server_aggregate_set_dbms_id ()

    void        gnome_db_server_aggregate_set_dbms_id
                                                (GnomeDbServerAggregate *agg,
                                                 const gchar *id);

Set the DBMS identifier of the aggregate

`agg` : | a GnomeDbServerAggregate object
`id` : | the DBMS identifier

### gnome_db_server_aggregate_get_dbms_id ()

    gchar*      gnome_db_server_aggregate_get_dbms_id
                                                (GnomeDbServerAggregate *agg);

Get the DBMS identifier of the aggregate

`agg` : | a GnomeDbServerAggregate object
Returns : | the aggregate's id

### gnome_db_server_aggregate_set_sqlname ()

    void        gnome_db_server_aggregate_set_sqlname
                                                (GnomeDbServerAggregate *agg,
                                                 const gchar *sqlname);

Set the SQL name of the data type.

`agg` : | a GnomeDbServerAggregate object
`sqlname` : |

### gnome_db_server_aggregate_get_sqlname ()

    const gchar* gnome_db_server_aggregate_get_sqlname
                                                (GnomeDbServerAggregate *agg);

Get the DBMS's name of a data type.

`agg` : | a GnomeDbServerAggregate object
Returns : | the name of the data type

### gnome_db_server_aggregate_set_arg_type ()

    void        gnome_db_server_aggregate_set_arg_type
                                                (GnomeDbServerAggregate *agg,
                                                 GnomeDbServerDataType *dt);

Set the argument type of a aggregate

`agg` : | a GnomeDbServerAggregate object
`dt` : | a GnomeDbServerDataType objects or NULL value to represent the data type of the aggregate's unique argument .

### gnome_db_server_aggregate_get_arg_type ()

    GnomeDbServerDataType* gnome_db_server_aggregate_get_arg_type
                                                (GnomeDbServerAggregate *agg);

To consult the list of arguments types (and number) of a aggregate.

`agg` : | a GnomeDbServerAggregate object
Returns : | a list of GnomeDbServerDataType objects, the list MUST NOT be modified.

### gnome_db_server_aggregate_set_ret_type ()

    void        gnome_db_server_aggregate_set_ret_type
                                                (GnomeDbServerAggregate *agg,
                                                 GnomeDbServerDataType *dt);

Set the return type of a aggregate

`agg` : | a GnomeDbServerAggregate object
`dt` : | a GnomeDbServerDataType object or NULL

### gnome_db_server_aggregate_get_ret_type ()

    GnomeDbServerDataType* gnome_db_server_aggregate_get_ret_type
                                                (GnomeDbServerAggregate *agg);

To consult the return type of a aggregate.

`agg` : | a GnomeDbServerAggregate object
Returns : | a GnomeDbServerDataType object.

## Properties

"`prop`" (gpointer : Read / Write) |

## Signals

### The "templ-signal" signal

    void        user_function                  (GnomeDbServerAggregate *dbserveraggregate,
                                                gpointer user_data);

`dbserveraggregate` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.