]> SALOME platform Git repositories - modules/yacs.git/blob - src/yacsloader/propertyParsers.hxx
Salome HOME
merge from branch DEV tag mergeto_trunk_04apr08
[modules/yacs.git] / src / yacsloader / propertyParsers.hxx
1
2 #ifndef _PROPERTYPARSER_HXX_
3 #define _PROPERTYPARSER_HXX_
4
5 #include "parserBase.hxx"
6 #include "factory.hxx"
7
8 //#define _DEVDEBUG_
9 #include "YacsTrace.hxx"
10
11 namespace YACS
12 {
13
14 /*! \brief Class for property parser.
15  *
16  *  Class used to parse a property.
17  *  A property is a pair of name(string), value(string)
18  *
19    XML schema is
20    \verbatim
21      <xsd:complexType name="PropertyType">
22        <xsd:attribute name="name" type="xsd:string" use="required"/>
23        <xsd:attribute name="value" type="xsd:string" use="required"/>
24      </xsd:complexType>
25    \endverbatim
26  *
27  */
28 struct propertytypeParser: parser
29 {
30   static propertytypeParser propertyParser;
31   virtual void buildAttr(const XML_Char** attr);
32   virtual void name(const std::string& name);
33   virtual void value(const std::string& name);
34   myprop post();
35   myprop _prop;
36 };
37
38 }
39
40 #endif