34 #ifndef SOMAIO_UTILITIES_MINFXML2_H 35 #define SOMAIO_UTILITIES_MINFXML2_H 53 extern const std::string
minfTag;
54 extern const std::string
noneTag;
55 extern const std::string
trueTag;
59 extern const std::string
listTag;
112 const std::string &nodeType,
113 const std::string &identifier,
115 const std::string &parentSyntax=std::string(),
116 const std::string &name=std::string() ) = 0;
117 virtual void endStructure(
MinfTreeExpander &,
const std::string &nodeType ) = 0;
119 virtual void reference(
MinfTreeExpander &,
const std::string &identifier ) = 0;
133 void addReference(
const std::string &identifier,
carto::Object value );
134 carto::Object getReferencedObject(
const std::string &identifier );
136 virtual std::string startStructure(
const std::string &nodeType,
137 const std::string &identifier,
139 const std::string &parentSyntax=std::string(),
140 const std::string &name=std::string() );
141 virtual void endStructure(
const std::string &nodeType );
142 virtual void atom(
carto::Object,
const std::string &identifier );
143 virtual void reference(
const std::string &identifier );
146 std::list< carto::rc_ptr< MinfNodeExpander > > _stack;
147 std::map< std::string, carto::Object > _references;
163 const std::string &nodeType,
164 const std::string &identifier,
166 const std::string &parentSyntax=std::string(),
167 const std::string &name=std::string() );
168 virtual void endStructure(
MinfTreeExpander &,
const std::string &nodeType );
170 virtual void reference(
MinfTreeExpander &,
const std::string &identifier );
191 const std::string &nodeType,
192 const std::string &identifier,
194 const std::string &parentSyntax=std::string(),
195 const std::string &name=std::string() );
251 void read(
const std::string & );
283 #endif // ifndef SOMAIO_UTILITIES_MINFXML2_H
virtual ~ObjectListener()
const std::string trueTag
const std::string stringTag
carto::rc_ptr< carto::SyntaxSet > _syntax
virtual void nextObject(const carto::Object &)=0
const std::string identifierAttribute
const std::string referenceTag
Abstraction layer for various data sources (file, buffer, socket...).
void init_libXML()
just to force initializing libxml2, needs to be called once from the main thread in a multi-threaded ...
const std::string dictionaryTag
const std::string numberTag
const std::string factoryTag
const std::string objectTypeAttribute
const std::string expanderAttribute
const std::string lengthAttribute
const std::string falseTag
const std::string listTag
carto::Object readDictionaryMinfXML(const std::string &fileName, carto::rc_ptr< carto::SyntaxSet > syntax=carto::rc_ptr< carto::SyntaxSet >())
const std::string xhtmlTag
const std::string noneTag
const std::string nameAttribute
const std::string minfTag
virtual void noMoreObject()=0