/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Event/HltEvent/HltEvent-00-02-07/HltEvent/DstHltInf.h

Go to the documentation of this file.
00001 #ifndef EVENT_DST_HLT_INF_H
00002 #define EVENT_DST_HLT_INF_H
00003 
00004 #include <stdint.h> //uint32_t
00005 #include <iostream>
00006 #include "GaudiKernel/DataObject.h"
00007 #include "EventModel/EventModel.h"
00008 #include "Identifier/Identifier.h"
00009 #include "HltEvent/IHltInterface.h"
00010 
00011 using namespace std;
00012 
00013 extern const CLID& CLID_DstHltInf;
00014 
00015 //event filter data struction for physics analysis
00016 class DstHltInf :  public DataObject, public IHltInterface {
00017 public:
00018 
00019   DstHltInf(const unsigned int type, const unsigned int alg, const unsigned int cri,
00020             const unsigned int ver, const float etot);
00021   DstHltInf();
00022   DstHltInf(const DstHltInf&);
00023   DstHltInf& operator=(const DstHltInf&);
00024 
00025   virtual ~DstHltInf() {}
00026 
00027   virtual const CLID& clID()                const   { return DstHltInf::classID(); }
00028   static const CLID& classID()                      { return CLID_DstHltInf; }
00029 
00030   void setEventType(const unsigned int i)              { m_eventType = i;    }
00031   void setAlgProcess(const unsigned int i)             { m_algProcess=i; }
00032   void setCriteriaTable(const unsigned int i)                { m_criTable=i;       }
00033   void setVersion(const unsigned int i)               { m_version=i; }
00034   void setTotalEnergy(const float etot)               { m_eTotal = etot;     }
00035   void setNumber(const unsigned int i) { m_number=i; };
00036   void setNMDC(const unsigned int i) { m_number = (m_number&0xFFFFFF00)|i ; };
00037   void setNTOF(const unsigned int i) { m_number = (m_number&0xFFFF00FF)|(i<<8); };
00038   void setNEMC(const unsigned int i) { m_number = (m_number&0xFF00FFFF)|(i<<16); };
00039   void setNMUC(const unsigned int i) { m_number = (m_number&0x00FFFFFF)|(i<<24); };
00040   void setNCON(const unsigned int i) { m_ncon   = i; };
00041 
00042   uint32_t     getEventType() const   { return m_eventType;}
00043   uint32_t     getAlgProcess()const   { return m_algProcess;       }
00044   uint32_t     getCriteriaTable()const   { return m_criTable;    }
00045   uint32_t     getVersion()   const   { return m_version;       }
00046   float        getTotalEnergy()  const   { return m_eTotal;     }
00047   uint32_t     getNumber()  const { return m_number; };
00048   uint32_t     getNMDC()  const { return m_number&0xFF; };
00049   uint32_t     getNTOF()  const { return (m_number>>8)&0xFF; };
00050   uint32_t     getNEMC()  const { return (m_number>>16)&0xFF; };
00051   uint32_t     getNMUC()  const { return (m_number>>24)&0xFF; };
00052   uint32_t     getNCON()  const { return m_ncon; };
00053 
00054   const string& getEventName() const ;
00055   bool isType(string& type) const ;
00056 
00057   virtual void push_mdc(uint32_t){};
00058   virtual void push_tof(uint32_t){};
00059   virtual void push_emc(uint32_t){};
00060   virtual void push_muc(uint32_t){};
00061   virtual void push_con(uint32_t){};
00062   virtual void push_mdc(float){};
00063   virtual void push_tof(float){};
00064   virtual void push_emc(float){};
00065   virtual void push_muc(float){};
00066   virtual void push_con(float){};
00067   virtual bool setData(const Identifier&, uint32_t){return false;};
00068   virtual bool setData(const Identifier&, float){return false;};
00069   virtual void setMdcData(const std::vector<uint32_t>&){};
00070   virtual void setTofData(const std::vector<uint32_t>&){};
00071   virtual void setEmcData(const std::vector<uint32_t>&){};
00072   virtual void setMucData(const std::vector<uint32_t>&){};
00073   virtual void setConData(const std::vector<uint32_t>&){};
00074   virtual bool getData(const Identifier&, uint32_t*){ return false;};
00075 
00076   virtual void print() const { cout << *this; }
00077 
00078 protected:
00079   uint32_t  m_eventType;     //Hlt 
00080   uint32_t  m_algProcess;  //Hlt
00081   uint32_t  m_criTable;
00082   uint32_t  m_version;
00083   float     m_eTotal;
00084   uint32_t  m_number;
00085   uint32_t  m_ncon;
00086 
00087   static const std::string s_chn[32];
00088   static const std::string s_err;
00089 };
00090 
00091 ostream& operator<<(ostream & os, const DstHltInf& aHlt);
00092 
00093 #endif  // EVENT_DST_HLT_INF_H
00094 

Generated on Tue Nov 29 22:58:30 2016 for BOSS_7.0.2 by  doxygen 1.4.7