Main Page | Class Hierarchy | Class List | File List | Class Members

forg.h

00001 /* libIXAml - IXA Taldea */
00002 
00003 #ifndef _FORG_H
00004 #define _FORG_H
00005 
00006 #include <string>
00007 #include <map>
00008 
00011 typedef enum OrgTag {
00012   LIBIXAML_SINGLE = 0,       
00013   LIBIXAML_SET    = 1,       
00014   LIBIXAML_BAG    = 2,       
00015   LIBIXAML_LIST   = 3,       
00016   LIBIXAML_DEFEK  = 4        
00017 };
00018 
00021 class FOrg {
00022 private:
00023   OrgTag orgTag;
00024   static std::map<const std::string, OrgTag> orgT;
00025 
00026   OrgTag  string2FOrg(const std::string &) const;
00027   std::string  FOrg2string() const; 
00028  public:
00029 
00031   FOrg();
00032 
00036   FOrg( const OrgTag & orgTag);
00037   
00041   FOrg( const std::string & str); 
00042 
00046   FOrg( const FOrg & fOrg);
00047 
00052   bool operator ==( const FOrg & fOrg) const;
00053 
00058   bool operator !=( const FOrg & fOrg ) const; 
00059 
00064   FOrg operator =( const FOrg & fOrg); 
00065   
00069   OrgTag  getOrg() const; 
00070 
00074   char*   c_str() const;
00075 
00079   std::string str() const;
00080 
00084   void    init(const OrgTag & orgTag); 
00085 
00086 };
00087 
00088 #endif //_FORG_H

Generated on Tue Sep 11 12:07:42 2007 for libIXAml by doxygen 1.3.5