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

id.h

00001 /* libIXAml - IXA Taldea */
00002 
00003 #ifndef _ID_H
00004 #define _ID_H
00005 
00006 #include <string>
00007 
00010 typedef enum IdMota {
00011   ID_P          = 0,        
00012   ID_W          = 1,        
00013   ID_M          = 2,        
00014   ID_MW         = 3,        
00015   ID_FS         = 4,        
00016   ID_F          = 5,        
00017   ID_SPAN       = 6,        
00018   ID_CHUNK      = 7,        
00019   ID_ENT        = 8,        
00020   ID_POS        = 9,        
00021   ID_DEP        = 10,       
00022   ID_LSFI       = 11,       
00023   ID_LSFI_SET   = 12,       
00024   ID_LNK        = 13,       
00025   ID_ERRINST    = 14,       
00026   ID_JGRP       = 15,       
00027   ID_NODE       = 16,       
00028   ID_VERB       = 17,       
00029   ID_SENT       = 18,       
00030   ID_BESTELAKOA = 19        
00031 };
00032 
00033 
00038 class Id : public std::string {
00039   IdMota idMota;
00040 
00041  protected:
00042 
00048   static std::string sortuId(const std::string & kat, const int num);
00049 
00055   static int lortuNum(const std::string & id, const std::string & kat);
00056 
00057  public:
00058   
00062   Id(const IdMota & mota);
00063 
00068   Id(const IdMota & mota, const char* id);
00069 
00074   Id(const IdMota & mota, const std::string & id);  
00075 
00077   Id();                         
00078 
00082   bool operator< (const Id & id) const;
00083   
00087   bool operator<=(const Id & id) const;
00088   
00092   bool operator> (const Id & id) const;
00093   
00097   bool operator>=(const Id & id) const;
00098 
00102   IdMota getType() const;
00103 
00107   std::string toXId() const;
00108 
00109 };
00110 
00111 
00112 #endif // _ID_H

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