00001 #ifndef MucMcHit_H
00002 #define MucMcHit_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_MucMcHit;
00011
00012 namespace Event {
00013
00014 class MucMcHit : virtual public ContainedObject {
00015 public:
00016 virtual const CLID& clID() const
00017 {
00018 return MucMcHit::classID();
00019 }
00020
00021 static const CLID& classID()
00022 {
00023 return CLID_MucMcHit;
00024 }
00025
00026 MucMcHit(){};
00027 MucMcHit(const Identifier& id, unsigned int trackIndex, double xPosition,
00028 double yPosition, double zPosition, double px, double py, double pz);
00029
00030
00031 Identifier identify() const;
00032
00033
00034 unsigned int getTrackIndex() const;
00035
00036
00037 double getPositionX() const;
00038
00039
00040 double getPositionY() const;
00041
00042
00043 double getPositionZ() const;
00044
00045
00046 double getPx() const;
00047
00048
00049 double getPy() const;
00050
00051
00052 double getPz() const;
00053
00054
00055 void setIdentifier(unsigned id) {m_id = id;}
00056 void setTrackIndex(unsigned int trackIndex){ m_trackIndex = trackIndex;}
00057 void setPositionX(double positionX) {m_xPosition = positionX;}
00058 void setPositionY(double positionY) {m_yPosition = positionY;}
00059 void setPositionZ(double positionZ) {m_zPosition = positionZ;}
00060 void setPx(double px) {m_px = px;}
00061 void setPy(double py) {m_py = py;}
00062 void setPz(double pz) {m_pz = pz;}
00063
00064
00065 private:
00066 MucMcHit(const MucMcHit &);
00067
00068 MucMcHit &operator=(const MucMcHit &);
00069
00070
00071
00072 Identifier m_id;
00073
00074 unsigned int m_trackIndex;
00075
00076 double m_xPosition;
00077
00078 double m_yPosition;
00079
00080 double m_zPosition;
00081
00082 double m_px;
00083
00084 double m_py;
00085
00086 double m_pz;
00087 };
00088
00089 typedef ObjectVector<MucMcHit> MucMcHitCol;
00090
00091 }
00092 #endif