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

fsid.h

00001 /* libIXAml - IXA Taldea */
00002 
00003 #ifndef _FSID_H
00004 #define _FSID_H
00005 
00006 #include "id.h"
00007 #include "anatype.h"
00008 #include <string>
00009 #include <vector>
00010 #include <map>
00011 
00014 typedef enum FsIdType {
00015   SEG_FS_ID       = 0,         
00016   MORF_FS_ID      = 1,         
00017   LEM_FS_ID       = 2,         
00018   SF_FS_ID        = 3,         
00019   DEP_FS_ID       = 4,         
00020   ZUZEN_FS_ID     = 5,         
00021   ERR_FS_ID       = 6,         
00022   HAUL_FS_EDBL_ID = 7,         
00023   ZGS_FS_EDBL_ID  = 8,         
00024   ADAB_FS_ID      = 9,         
00025   VERB_FS_ID      = 10,       
00026   EZEZAGUN_FS_ID  = 11         
00027 }; 
00028 
00036 class FSId : public Id {
00037   static std::map <const std::string, int> idKont; // Str <-> Zbk erlazioa
00038   const static std::vector<std::string> IdType2Str;
00039   static std::vector<std::string> KargatuIdType2Str();
00040 
00041   void erregistratu(const std::string & str) const;
00042 public:
00043   
00048   static std::string  IdType2IdTypeStr(const FsIdType & idType);
00049 
00054   static FsIdType  IdTypeStr2IdType(const std::string & idType);
00055   
00057   FSId();
00058 
00062   FSId(const char* fsId);
00063   
00067   FSId( const std::string & fsId);
00068 
00075   FSId(const FsIdType & idType, const AnaType & anaType, const std::string & kat, const std::string & azp);
00076   
00082   FSId(const FsIdType & idType, const std::string & strBal, const bool zenbJarri=false);
00083 
00087   FsIdType getIdType() const;
00088   
00092   std::string getAnalisiTypeStr() const;
00093   
00097   AnaType getAnalisiType() const;
00098 
00102   int getErregelaKop() const;
00103   
00107   std::string getBalioStr() const;
00108   
00112   std::string toXId() const;
00113         
00114 };
00115 
00116 #endif // _FSID_H

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