/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Event/McTruth/McTruth-00-02-19/McTruth/MdcMcHit.h

Go to the documentation of this file.
00001 #ifndef MdcMcHit_H
00002 #define MdcMcHit_H 
00003 #include <algorithm>
00004 #include "GaudiKernel/ContainedObject.h"
00005 #include "Identifier/Identifier.h"
00006 #include "GaudiKernel/ObjectVector.h"
00007 #include "EventModel/EventModel.h"
00008 
00009 using namespace EventModel;
00010 extern const CLID& CLID_MdcMcHit;
00011 
00012 namespace Event {  // NameSpace
00013 
00014 class MdcMcHit : virtual public ContainedObject { 
00015 public:
00016    virtual const CLID& clID() const 
00017    {
00018         return MdcMcHit::classID();
00019    }
00020                    
00021    static const CLID& classID()
00022     {
00023         return CLID_MdcMcHit;
00024     } 
00025   // Constructor
00026   MdcMcHit(){};
00027   MdcMcHit(const Identifier& id, unsigned int trackIndex, double xPosition,
00028            double yPosition, double zPosition, double driftDistance,
00029            double depositEnergy, int posFlag = -1);
00030 
00031   // Get associated id
00032   Identifier identify() const;
00033 
00034   // Get the associated track id 
00035   unsigned int getTrackIndex() const;
00036 
00037   // Get the position x 
00038   double getPositionX() const;
00039 
00040   // Get the position y 
00041   double getPositionY() const;
00042 
00043   // Get the position z 
00044   double getPositionZ() const;
00045   
00046   // Get Drift Distance 
00047   double getDriftDistance() const;
00048 
00049   // Get deposited energy 
00050   double getDepositEnergy() const;
00051 
00052   // Get the position flag
00053   int getPositionFlag() const;
00054 
00055 //Set
00056   void setIdentifier(unsigned int id) {m_id = id ;}
00057   void setTrackIndex(unsigned int trackIndex) {m_trackIndex = trackIndex;}
00058   void setPositionX(double positionX) {m_xPosition = positionX;}
00059   void setPositionY(double positionY) {m_yPosition = positionY;}
00060   void setPositionZ(double positionZ) {m_zPosition = positionZ;}
00061   void setDriftDistance(double driftDistance){m_driftDistance = driftDistance;}
00062   void setDepositEnergy(double depositEnergy) {m_depositEnergy = depositEnergy;}
00063   void setPositionFlag(int posFlag) { m_posFlag = posFlag; }
00064    
00065 private:
00066   MdcMcHit(const MdcMcHit &);
00067 
00068   MdcMcHit &operator=(const MdcMcHit &);
00069 
00070   //  const Identifier m_id;
00071   Identifier m_id;
00072   
00073   unsigned int m_trackIndex;
00074 
00075   double m_xPosition;
00076 
00077   double m_yPosition;
00078 
00079   double m_zPosition;
00080  
00081   double m_driftDistance;
00082   
00083   double m_depositEnergy;
00084 
00085   int    m_posFlag;
00086 };
00087 
00088 typedef ObjectVector<MdcMcHit> MdcMcHitCol;
00089 
00090 } // NameSpace Event
00091 
00092 #endif 

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