## GOData

GOData —

## Synopsis

                GOData;

    GOData*     go_data_dup                     (GOData const *src);
    gboolean    go_data_eq                      (GOData const *a,
                                                 GOData const *b);
    GOFormat*   go_data_preferred_fmt           (GOData const *dat);
    char*       go_data_as_str                  (GOData const *dat);
    gboolean    go_data_from_str                (GOData *dat,
                                                 char const *str);
    void        go_data_emit_changed            (GOData *dat);

## Object Hierarchy

      GObject
       +----GOData
             +----GODataScalar
             +----GODataVector
             +----GODataMatrix

## Signals

    "changed"   void        user_function      (GOData  *godata,
                                                gpointer user_data)      : Run last

## Description

## Details

### GOData

    typedef struct _GOData GOData;

### go_data_dup ()

    GOData*     go_data_dup                     (GOData const *src);

A deep copy of `src`.

`src` : | GOData
Returns : |

### go_data_eq ()

    gboolean    go_data_eq                      (GOData const *a,
                                                 GOData const *b);

`a` : | GOData
`b` : | GOData
Returns : | TRUE if `a` and `b` are the same

### go_data_preferred_fmt ()

    GOFormat*   go_data_preferred_fmt           (GOData const *dat);

`dat` : |
Returns : |

### go_data_as_str ()

    char*       go_data_as_str                  (GOData const *dat);

Return a string representation of the data source that the caller is responsible for freeing

NOTE : This is the _source_ not the content.

`dat` : | GOData
Returns : |

### go_data_from_str ()

    gboolean    go_data_from_str                (GOData *dat,
                                                 char const *str);

De-serializes the source information returned from go_data_as_str.

`dat` : | GOData
`str` : |
Returns : | FALSE on error.

### go_data_emit_changed ()

    void        go_data_emit_changed            (GOData *dat);

protected utility to emit a 'changed' signal

`dat` : | GOData

## Signal Details

### The "changed" signal

    void        user_function                  (GOData  *godata,
                                                gpointer user_data)      : Run last

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