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

Go to the documentation of this file.
00001 #ifndef TrigGTDProvider_H
00002 #define TrigGTDProvider_H
00003 #include "GaudiKernel/ContainedObject.h"
00004 #include <map>
00005 #include <vector>
00006 #include <string>
00007 
00008 using namespace std;
00009 
00010 //extern const CLID& CLID_TrigGTDProvider;
00011 /*
00012  Global trigger data structure (GTDProvider)
00013 */
00014 class TrigGTDProvider : virtual public ContainedObject {
00015 public:
00016   // Constructor
00017   TrigGTDProvider(const unsigned int boardIndex, const unsigned int dataType, const unsigned int timeWindow, 
00018                   const unsigned int GTDProviderTiming,  const bool preScale, 
00019                   const std::map<unsigned int, std::vector<unsigned int> > GTDProviderData, 
00020                   const std::vector<unsigned int> GTDProviderEvtType, 
00021                   const std::map<unsigned int, std::vector<unsigned int> > Num_One, 
00022                   const std::map<unsigned int, std::vector<unsigned int> > Num_Zero);
00023 
00024   TrigGTDProvider() {}
00025 
00026   //destructor
00027   virtual ~TrigGTDProvider() {}
00028 
00029   // Retrieve reference to class definition structure
00030 //  virtual const CLID& clID() const { return TrigGTDProvider::classID(); }
00031 //  static const CLID& classID()     { return CLID_TrigGTDProvider; }
00032 
00033   //set related information
00034   void setDataType(const unsigned int dataType);
00035   void setTimeWindow(const unsigned int timeWindow);
00036   void setBoardIndex(const unsigned int boardIndex);
00037   void setTrigTiming(const unsigned int GTDProviderTiming);
00038   void setPreScale(const bool preScale);
00039   void setTrigCondList(const std::map<unsigned int, std::vector<unsigned int> > GTDProviderData);
00040   void setTrigEvtType(const std::vector<unsigned int> GTDProviderEvtType);
00041   void setNumOne(const std::map<unsigned int, std::vector<unsigned int> > Num_One);
00042   void setNumZero(const std::map<unsigned int, std::vector<unsigned int> > Num_Zero);
00043 
00044   //get related information
00045   unsigned int getDataType() const;
00046   unsigned int getTimeWindow() const;
00047   unsigned int getBoardIndex() const;
00048   unsigned int getTrigTiming() const;
00049   bool getPreScale() const;
00050   const std::map<unsigned int, std::vector<unsigned int> >& getTrigCondList() const;
00051   const std::vector<unsigned int>& getTrigEvtType() const;
00052   const std::map<unsigned int, std::vector<unsigned int> >& getNumOne() const;
00053   const std::map<unsigned int, std::vector<unsigned int> >& getNumZero() const;
00054 
00055 protected:
00056   //data structure of GTDProvider
00057   unsigned int m_boardIndex;
00058   unsigned int m_dataType;
00059   unsigned int m_timeWindow;
00060   unsigned int m_GTDProviderTiming;
00061   bool m_preScale;
00062   std::map<unsigned int, std::vector<unsigned int> > m_GTDProviderData;
00063   std::vector<unsigned int> m_GTDProviderEvtType;
00064   
00065   std::map<unsigned int, std::vector<unsigned int> > m_Num_One; // number of "1" for each trigger condition or each bit in time window
00066   std::map<unsigned int, std::vector<unsigned int> > m_Num_Zero; // number of "0" before the first "1" for each condition or each bit in time window
00067   
00068 };
00069 
00070 typedef ObjectVector<TrigGTDProvider> TrigGTDProviderCol;
00071 
00072 #endif 

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