00001 #ifndef EVENT_TRIG_CONDITION_H 00002 #define EVENT_TRIG_CONDITION_H 00003 00004 #include <stdint.h> 00005 #include <string> 00006 #include <vector> 00007 00008 class TrigCondition { 00009 public: 00010 TrigCondition(char* name, uint32_t window, const uint32_t* data); 00011 virtual ~TrigCondition() {} 00012 00013 const std::string& getName() const { return m_name; } 00014 const std::vector<uint32_t>& getCondList() const { return m_condList; } 00015 uint32_t getNumOne(int index) const { return m_num_One[index]; } 00016 uint32_t getNumZero(int index) const { return m_num_Zero[index]; } 00017 00018 void print() const; 00019 00020 private: 00021 std::string m_name; 00022 std::vector<uint32_t> m_condList; 00023 00024 uint32_t m_num_One[48]; 00025 uint32_t m_num_Zero[48]; 00026 00027 static const std::string s_CONDITIONS[48]; 00028 }; 00029 00030 #endif // EVENT_TRIG_CONDITION_H