## FoXmlDoc

FoXmlDoc —

## Synopsis

    #define     FO_XML_DOC_ERROR
    GQuark      fo_xml_doc_error_quark          (void);
    enum        FoXmlDocError;
    struct      FoXmlDoc;
    FoXmlDoc*   fo_xml_doc_new                  (void);
    FoXmlDoc*   fo_xml_doc_ref                  (FoXmlDoc *fo_xml_doc);
    void        fo_xml_doc_unref                (FoXmlDoc *fo_xml_doc);
    gboolean    fo_xml_doc_parse                (FoXmlDoc *fo_xml_doc,
                                                 FoLibfoContext *libfo_context,
                                                 GError **error);
    const gchar* fo_xml_doc_get_filename        (FoXmlDoc *fo_xml_doc);
    void        fo_xml_doc_set_filename         (FoXmlDoc *fo_xml_doc,
                                                 const gchar *filename);

## Description

## Details

### FO_XML_DOC_ERROR

    #define FO_XML_DOC_ERROR fo_xml_doc_error_quark ()

### fo_xml_doc_error_quark ()

    GQuark      fo_xml_doc_error_quark          (void);

Get the error quark for FoXmlDoc.

If the quark does not yet exist, create it.

Returns : | Quark associated with FoXmlDoc errors.

### enum FoXmlDocError

    typedef enum
    {
      FO_XML_DOC_ERROR_FAILED,
      FO_XML_DOC_ERROR_PARSE_FAILED,
      FO_XML_DOC_ERROR_NO_FILENAME,
      FO_XML_DOC_ERROR_NO_SGML_CATALOG_FILES
    } FoXmlDocError;

### struct FoXmlDoc

    struct FoXmlDoc;

### fo_xml_doc_new ()

    FoXmlDoc*   fo_xml_doc_new                  (void);

Creates a new FoXmlDoc.

Returns : | the newly created FoXmlDoc. Use fo_xml_doc_unref to free the result.

### fo_xml_doc_ref ()

    FoXmlDoc*   fo_xml_doc_ref                  (FoXmlDoc *fo_xml_doc);

Make a copy of a FoXmlDoc.

`fo_xml_doc` : | a FoXmlDoc
Returns : | a newly allocated FoXmlDoc. This value must be freed using fo_xml_doc_unref().

### fo_xml_doc_unref ()

    void        fo_xml_doc_unref                (FoXmlDoc *fo_xml_doc);

Unref and possibly free a FoXmlDoc.

`fo_xml_doc` : | FoXmlDoc.

### fo_xml_doc_parse ()

    gboolean    fo_xml_doc_parse                (FoXmlDoc *fo_xml_doc,
                                                 FoLibfoContext *libfo_context,
                                                 GError **error);

Parses `fo_xml_doc`.

`fo_xml_doc` : | FoXmlDoc.
`libfo_context` : | FoLibfoContext.
`error` : | GError.
Returns : | Filename of file parsed to make `fo_xml_doc`.

### fo_xml_doc_get_filename ()

    const gchar* fo_xml_doc_get_filename        (FoXmlDoc *fo_xml_doc);

Get the filename in `fo_xml_doc`.

`fo_xml_doc` : | FoXmlDoc
Returns : | Filename of file parsed to make `fo_xml_doc`.

### fo_xml_doc_set_filename ()

    void        fo_xml_doc_set_filename         (FoXmlDoc *fo_xml_doc,
                                                 const gchar *filename);

Set the filename in `fo_xml_doc`. Voids the parsed result.

`fo_xml_doc` : | FoXmlDoc
`filename` : | Filename of file to be parsed.