/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Muc/MucRecEvent/MucRecEvent-00-02-52/MucRecEvent/MucRecHitContainer.h

Go to the documentation of this file.
00001 //$id$
00002 //
00003 //$log$
00004 
00005 /*
00006  *    2003/12/12   Zhengyun You     Peking University
00007  * 
00008  *    2004/09/12   Zhengyun You     Peking University
00009  *                 transplanted to Gaudi framework
00010  */
00011 
00012 #ifndef MUC_REC_HIT_CONTAINER_H
00013 #define MUC_REC_HIT_CONTAINER_H
00014 
00015 #include <map>
00016 #include "Identifier/Identifier.h"
00017 
00018 #include "MucRecEvent/MucRecHitID.h"
00019 #include "MucRecEvent/MucRecHit.h"
00020 
00029 class MucRecHitContainer
00030 {
00031  public:
00032   typedef std::map<MucRecHitID, int>        GapHitCountMap;
00033   typedef std::map<MucRecHitID, MucRecHit*> pHitMap;       
00034   
00035   // Constructor.
00036   MucRecHitContainer();
00037   
00038   // Copy constructor.
00039   MucRecHitContainer(const MucRecHitContainer& source);
00040   
00041   // Assignment operator.
00042   MucRecHitContainer& operator=(const MucRecHitContainer& orig);
00043 
00044   // Destructor.
00045   ~MucRecHitContainer();
00046 
00047  public:
00048 
00050   //static MucRecHitContainer *Instance();
00051   
00053   void Init();
00054   
00056   void Destroy();
00057 
00058   void SetMucRecHitCol(MucRecHitCol* p);// { m_pMucRecHitCol = p; }
00059   
00061   MucRecHitCol* GetMucRecHitCol() { return m_pMucRecHitCol; }
00062 
00064   int GetHitCount();
00065   
00067   int GetGapHitCount(const MucRecHitID gapID);
00068 
00070   int GetGapHitCount(const int part,
00071                      const int seg,
00072                      const int gap);
00073 
00075   MucRecHit *GetHit(const MucRecHitID hitID);
00076 
00078   MucRecHit *GetHit(const int part,
00079                     const int seg,
00080                     const int gap,
00081                     const int hit);
00082  
00085   MucRecHit *GetHitByIdentifier(const Identifier id);
00086 
00089   MucRecHit *GetHitByIdentifier(const int part,
00090                                 const int seg,
00091                                 const int gap,
00092                                 const int strip);
00093   
00094   void AddHit(const Identifier id);
00095 
00097   void AddHit(const int part,
00098               const int seg,
00099               const int gap,
00100               const int strip);
00101 
00103   void Clear();
00104 
00105  private:
00106   MucRecHitCol *m_pMucRecHitCol;
00107 
00108   MucRecHitContainer::GapHitCountMap m_GapHitCount;
00109   MucRecHitContainer::pHitMap        m_pHit;
00110   
00111 };
00112 
00113 #endif  /* MUC_REC_HIT_CONTAINER_H */

Generated on Tue Nov 29 23:12:58 2016 for BOSS_7.0.2 by  doxygen 1.4.7