/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Event/TrigEvent/TrigEvent-00-01-02/TrigEvent/TrigData.h

Go to the documentation of this file.
00001 #ifndef EVENT_TRIG_DATA_H
00002 #define EVENT_TRIG_DATA_H
00003 
00004 #include <stdint.h> //uint32_t
00005 #include <string>
00006 
00007 #include "GaudiKernel/DataObject.h"
00008 
00009 extern const CLID& CLID_TrigData;
00010 
00011 //Trigger data struction for physics analysis
00012 class TrigData :  public DataObject  {
00013 public:
00014   //constructor 1
00015   TrigData() {}
00016   //constructor 2
00017   TrigData(int window, int timing, const int* trigCond, const int* trigChan, bool preScale);
00018   //destructor
00019   virtual ~TrigData() {}
00020 
00021   virtual const CLID& clID()                const   { return TrigData::classID(); }
00022   static const CLID& classID()                      { return CLID_TrigData; }
00023 
00024   void setTrigCondition(int i, int j)                { m_trigcond[i]    = j;    }
00025   void setTrigCondition(const int* cond)             { for(int i = 0; i < 48; i++) m_trigcond[i] = cond[i]; }
00026   void setTrigChannel(  int i, int j)                { m_trigChan[i] = j;       }
00027   void setTrigChannel(const int* chan)               { for(int i = 0; i < 16; i++) m_trigChan[i] = chan[i]; }
00028   void setTimeWindow( int i )                        { m_timeWindow    = i;     }
00029   void setTimingType( int i )                        { m_Timing        = i;     } 
00030   void setPreScale(   bool i )                       { m_preScale      = i;     }
00031 
00032   const std::string  getTrigCondName(int i)  const   { return s_CONDITIONS[i];  }
00033   const int          getTrigCondition(int i) const   { return m_trigcond[i];    }
00034   const int*         getTrigCondition()      const   { return m_trigcond;       }
00035   const int          getTrigChannel(int i)   const   { return m_trigChan[i];    }
00036   const int*         getTrigChannel()        const   { return m_trigChan;       }
00037   const int          getTimeWindow()         const   { return m_timeWindow;     }
00038   const int          getTimingType()         const   { return m_Timing;         }
00039   const bool         getPreScale()           const   { return m_preScale;       }
00040 
00041   void print() const;
00042 
00043 private:
00044   int  m_trigcond[48];     //Trigger conditions from 0 to 47
00045   int  m_trigChan[16];  //Trigger channel from 0 to 15
00046   int  m_timeWindow;      //The time window of trigger system
00047   int  m_Timing;          //Time type, 0: No timing 1: TOF 2: MDC 3: EMC
00048   bool m_preScale;            //PreScale for bhabha events
00049 
00050   static const std::string s_CONDITIONS[48];  //The name of each trigger condition
00051 };
00052 
00053 #endif  // EVENT_TRIG_DATA_H

Generated on Tue Nov 29 23:11:43 2016 for BOSS_7.0.2 by  doxygen 1.4.7