00001 
00035 
#ifndef ELEMENT_H_ALEIX0211250048
00036 
#define ELEMENT_H_ALEIX0211250048
00037 
00038 
#include "types.h"
00039 
00040 
#include <expat.h>
00041 
00042 
#ifdef __cplusplus
00043 
extern "C" {
00044 
#endif 
00045 
00050 
extern scew_element*
00051 
scew_element_create(XML_Char 
const* name);
00052 
00057 
extern void
00058 
scew_element_free(scew_element* element);
00059 
00064 
extern unsigned int
00065 
scew_element_count(scew_element 
const* element);
00066 
00080 
extern scew_element*
00081 
scew_element_next(scew_element 
const* parent, scew_element 
const* element);
00082 
00099 
extern scew_element*
00100 
scew_element_by_index(scew_element* parent, 
unsigned int idx);
00101 
00109 
extern scew_element*
00110 
scew_element_by_name(scew_element 
const* parent, XML_Char 
const* name);
00111 
00118 
extern scew_element**
00119 
scew_element_list(scew_element 
const* parent, XML_Char 
const* name,
00120                   
unsigned int* count);
00121 
00125 
extern void
00126 
scew_element_list_free(scew_element** lst);
00127 
00131 
extern XML_Char 
const*
00132 
scew_element_name(scew_element 
const* element);
00133 
00138 
extern XML_Char 
const*
00139 
scew_element_contents(scew_element 
const* element);
00140 
00146 
extern XML_Char 
const*
00147 
scew_element_set_name(scew_element* element, XML_Char 
const* name);
00148 
00154 
extern XML_Char 
const*
00155 
scew_element_set_contents(scew_element* element, XML_Char 
const* data);
00156 
00162 
extern scew_element*
00163 
scew_element_add(scew_element* element, XML_Char 
const* name);
00164 
00176 
extern scew_element*
00177 
scew_element_add_elem(scew_element* element, scew_element* new_elem);
00178 
00184 
extern void
00185 
scew_element_del(scew_element* element);
00186 
00191 
extern void
00192 
scew_element_del_by_name(scew_element* element, XML_Char 
const* name);
00193 
00197 
extern void
00198 
scew_element_del_by_index(scew_element* element, 
unsigned int idx);
00199 
00209 
extern void
00210 
scew_element_list_del(scew_element* element, XML_Char 
const* name);
00211 
00223 
scew_attribute*
00224 
scew_element_add_attr(scew_element* element, scew_attribute* attribute);
00225 
00235 
extern scew_attribute*
00236 
scew_element_add_attr_pair(scew_element* element,
00237                            XML_Char 
const* name, XML_Char 
const* value);
00238 
00242 
extern void
00243 
scew_element_del_attr(scew_element* element, XML_Char 
const* name);
00244 
00245 
#ifdef __cplusplus
00246 
}
00247 
#endif 
00248 
00249 
#endif