00001 //Dear emacs, this is -*- c++ -*- 00002 00014 #ifndef EFORMAT_OLD_FULLEVENTFRAGMENT_H 00015 #define EFORMAT_OLD_FULLEVENTFRAGMENT_H 00016 00017 #include "eformat/old/Header.h" 00018 00019 namespace eformat { 00020 00021 namespace old { 00022 00027 class FullEventFragment : public eformat::old::Header { 00028 00029 public: //interface 00030 00037 FullEventFragment (const uint32_t* it); 00038 00042 virtual ~FullEventFragment() {} 00043 00047 virtual bool check () const; 00048 00052 bool check_tree () const; 00053 00058 inline uint32_t date() const { return m_start[0]; } 00059 00063 inline uint32_t global_id() const { return m_start[1]; } 00064 00068 inline uint32_t lvl1_id() const { return m_start[2]; } 00069 00073 inline uint32_t lvl1_trigger_type() const { return m_start[3]; } 00074 00078 inline uint32_t lvl2_trigger_info() const { return m_start[4]; } 00079 00083 inline uint32_t nevent_filter_info () const { return 5; } 00084 00088 inline const uint32_t* event_filter_info(void) const 00089 { return &m_start[5]; } 00090 00091 private: //representation 00092 00093 const uint32_t* m_start; 00094 00095 }; 00096 00097 } 00098 00099 } 00100 00101 #endif /* EFORMAT_OLD_FULLEVENTFRAGMENT_H */