00001 /* 00002 * "$Id: xml.h,v 1.1 2004/09/17 18:38:01 rleigh Exp $" 00003 * 00004 * Gutenprint module loader header 00005 * 00006 * Copyright 1997-2002 Michael Sweet (mike@easysw.com), 00007 * Robert Krawitz (rlk@alum.mit.edu) and Michael Natterer (mitch@gimp.org) 00008 * Copyright 2002-2003 Roger Leigh (rleigh@debian.org) 00009 * 00010 * This program is free software; you can redistribute it and/or modify it 00011 * under the terms of the GNU General Public License as published by the Free 00012 * Software Foundation; either version 2 of the License, or (at your option) 00013 * any later version. 00014 * 00015 * This program is distributed in the hope that it will be useful, but 00016 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 00017 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 00018 * for more details. 00019 * 00020 * You should have received a copy of the GNU General Public License 00021 * along with this program; if not, write to the Free Software 00022 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00023 */ 00024 00030 #ifndef GUTENPRINT_XML_H 00031 #define GUTENPRINT_XML_H 00032 00033 #ifdef __cplusplus 00034 extern "C" { 00035 #endif 00036 00037 #include <gutenprint/mxml.h> 00038 00039 typedef int (*stp_xml_parse_func)(stp_mxml_node_t *node, const char *file); 00040 00041 extern void 00042 stp_register_xml_parser(const char *name, stp_xml_parse_func parse_func); 00043 00044 extern void 00045 stp_unregister_xml_parser(const char *name); 00046 00047 extern void stp_register_xml_preload(const char *filename); 00048 extern void stp_unregister_xml_preload(const char *filename); 00049 00050 extern int stp_xml_init_defaults(void); 00051 extern int stp_xml_parse_file(const char *file); 00052 00053 extern long stp_xmlstrtol(const char *value); 00054 extern unsigned long stp_xmlstrtoul(const char *value); 00055 extern double stp_xmlstrtod(const char *textval); 00056 00057 extern void stp_xml_init(void); 00058 extern void stp_xml_exit(void); 00059 extern stp_mxml_node_t *stp_xml_get_node(stp_mxml_node_t *xmlroot, ...); 00060 extern stp_mxml_node_t *stp_xmldoc_create_generic(void); 00061 extern void stp_xml_preinit(void); 00062 00063 extern stp_sequence_t *stp_sequence_create_from_xmltree(stp_mxml_node_t *da); 00064 extern stp_mxml_node_t *stp_xmltree_create_from_sequence(const stp_sequence_t *seq); 00065 00066 extern stp_curve_t *stp_curve_create_from_xmltree(stp_mxml_node_t *da); 00067 extern stp_mxml_node_t *stp_xmltree_create_from_curve(const stp_curve_t *curve); 00068 00069 extern stp_array_t *stp_array_create_from_xmltree(stp_mxml_node_t *array); 00070 extern stp_mxml_node_t *stp_xmltree_create_from_array(const stp_array_t *array); 00071 extern void stp_xml_parse_file_named(const char *name); 00072 00073 #endif /* GUTENPRINT_XML_H */ 00074 /* 00075 * End of "$Id: xml.h,v 1.1 2004/09/17 18:38:01 rleigh Exp $". 00076 */