$treeview $search $mathjax
StdAir Logo  1.00.2
$projectbrief
$projectbrief
$searchbox

stdair/basic/EventType.hpp

Go to the documentation of this file.
00001 #ifndef __STDAIR_BAS_EVENTTYPE_HPP
00002 #define __STDAIR_BAS_EVENTTYPE_HPP
00003 
00004 // //////////////////////////////////////////////////////////////////////
00005 // Import section
00006 // //////////////////////////////////////////////////////////////////////
00007 // STL
00008 #include <string>
00009 // StdAir
00010 #include <stdair/basic/StructAbstract.hpp>
00011 
00012 namespace stdair {
00013 
00015   struct EventType : public StructAbstract {
00016   public:
00017     typedef enum { 
00018       BKG_REQ = 0,
00019       CX,
00020       OPT_NOT_4_FD,
00021       OPT_NOT_4_NET,
00022       SKD_CHG,
00023       SNAPSHOT,
00024       RM,
00025       BRK_PT,
00026       LAST_VALUE
00027     } EN_EventType;
00028 
00034     static const std::string& getLabel (const EN_EventType&);
00035 
00039     static char getTypeLabel (const EN_EventType&);
00040 
00044     static std::string getTypeLabelAsString (const EN_EventType&);
00045 
00047     static std::string describeLabels();
00048 
00050     EN_EventType getType() const;
00051 
00055     std::string getTypeAsString() const;
00056     
00062     const std::string describe() const;
00063 
00064   public:
00066     bool operator== (const EN_EventType&) const;
00067     
00068   public:
00070     EventType (const EN_EventType&);
00072     EventType (const char iType);  
00074     EventType (const std::string& iTypeStr);
00076     EventType (const EventType&);
00077 
00078   private:
00080     EventType();
00081   
00082 
00083   private:
00085     static const std::string _labels[LAST_VALUE];
00087     static const char _typeLabels[LAST_VALUE];
00088 
00089 
00090   private:
00091     // //////// Attributes /////////
00093     EN_EventType _type;
00094   };
00095 
00096 }
00097 #endif // __STDAIR_BAS_EVENTTYPE_HPP