## GogPersist

GogPersist — A XML persistence interface

## Synopsis

    #include <goffice/graph/gog-object-xml.h>

                        GogPersist;
    gboolean            gog_persist_dom_load                (GogPersist *gp,
                                                             xmlNode *node);
    void                gog_persist_sax_save                (GogPersist const *gp,
                                                             GsfXMLOut *output);
    void                gog_persist_prep_sax                (GogPersist *gp,
                                                             GsfXMLIn *xin,
                                                             xmlChar const **attrs);

    void                gog_object_set_arg                  (char const *name,
                                                             char const *val,
                                                             GogObject *obj);
    void                gog_object_write_xml_sax            (GogObject const *obj,
                                                             GsfXMLOut *output);
    GogObject*          gog_object_new_from_xml             (GogObject *parent,
                                                             xmlNode *node);
    void                gog_object_sax_push_parser          (GsfXMLIn *xin,
                                                             xmlChar const **attrs,
                                                             GogObjectSaxHandler handler,
                                                             gpointer user_data);

    void                (*GogObjectSaxHandler)              (GogObject *obj,
                                                             gpointer user_data);
    void                go_xml_out_add_color                (GsfXMLOut *out,
                                                             char const *id,
                                                             GOColor c);
    GogObject*          gog_xml_read_state_get_obj          (GsfXMLIn *xin);

## Object Hierarchy

      GInterface
       +----GogPersist

## Known Implementations

GogPersist is implemented by GogErrorBar and GogStyle.

## Description

## Details

### GogPersist

    typedef struct _GogPersist GogPersist;

### gog_persist_dom_load ()

    gboolean            gog_persist_dom_load                (GogPersist *gp,
                                                             xmlNode *node);

`gp` : |
`node` : |
Returns : |

### gog_persist_sax_save ()

    void                gog_persist_sax_save                (GogPersist const *gp,
                                                             GsfXMLOut *output);

`gp` : |
`output` : |

### gog_persist_prep_sax ()

    void                gog_persist_prep_sax                (GogPersist *gp,
                                                             GsfXMLIn *xin,
                                                             xmlChar const **attrs);

`gp` : |
`xin` : |
`attrs` : |

### gog_object_set_arg ()

    void                gog_object_set_arg                  (char const *name,
                                                             char const *val,
                                                             GogObject *obj);

`name` : |
`val` : |
`obj` : |

### gog_object_write_xml_sax ()

    void                gog_object_write_xml_sax            (GogObject const *obj,
                                                             GsfXMLOut *output);

`obj` : |
`output` : |

### gog_object_new_from_xml ()

    GogObject*          gog_object_new_from_xml             (GogObject *parent,
                                                             xmlNode *node);

`parent` : |
`node` : |
Returns : |

### gog_object_sax_push_parser ()

    void                gog_object_sax_push_parser          (GsfXMLIn *xin,
                                                             xmlChar const **attrs,
                                                             GogObjectSaxHandler handler,
                                                             gpointer user_data);

`xin` : |
`attrs` : |
`handler` : |
`user_data` : |

### GogObjectSaxHandler ()

    void                (*GogObjectSaxHandler)              (GogObject *obj,
                                                             gpointer user_data);

`obj` : |
`user_data` : |

### go_xml_out_add_color ()

    void                go_xml_out_add_color                (GsfXMLOut *out,
                                                             char const *id,
                                                             GOColor c);

`out` : |
`id` : |
`c` : |

### gog_xml_read_state_get_obj ()

    GogObject*          gog_xml_read_state_get_obj          (GsfXMLIn *xin);

`xin` : |
Returns : |