CGEM BOSS 6.6.5.f
BESIII Offline Software System
Loading...
Searching...
No Matches
Event/McTruth/McTruth-00-04-07/McTruth/CgemMcHit.h
Go to the documentation of this file.
1#ifndef CgemMcHit_H
2#define CgemMcHit_H
3#include <algorithm>
4#include <string>
5#include "GaudiKernel/ContainedObject.h"
6#include "Identifier/Identifier.h"
7#include "GaudiKernel/ObjectVector.h"
8#include "EventModel/EventModel.h"
9#include "TArrayI.h"
10
11using namespace EventModel;
12using namespace std;
13
14//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
15extern const CLID& CLID_CgemMcHit;
16
17//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
18namespace Event
19{ /* NameSpace */
20 class CgemMcHit : virtual public ContainedObject
21 {
22 public:
23 virtual const CLID& clID() const
24 {
25 return CgemMcHit::classID();
26 }
27
28 static const CLID& classID()
29 {
30 return CLID_CgemMcHit;
31 }
32
33 /* Constructor */
35 CgemMcHit(int f_ID_track , int f_ID_layer , int pdg,
36 int f_ID_parent , double f_E_deposit ,
37 double f_XYZ_pre_x , double f_XYZ_pre_y , double f_XYZ_pre_z ,
38 double f_XYZ_post_x , double f_XYZ_post_y , double f_XYZ_post_z ,
39 double f_P_pre_x , double f_P_pre_y , double f_P_pre_z ,
40 double f_P_post_x , double f_P_post_y , double f_P_post_z );
41 /*,
42 double f_Cu_pre_x , double f_Cu_pre_y , double f_Cu_pre_z ,
43 double f_Cu_post_x , double f_Cu_post_y , double f_Cu_post_z ,
44 double f_Cu_P_pre_x , double f_Cu_P_pre_y , double f_Cu_P_pre_z ,
45 double f_Cu_P_post_x, double f_Cu_P_post_y, double f_Cu_P_post_z);
46 */
47
48 /* Set methods */
49 void SetTrackID ( int f_ID_track ) {m_ID_track = f_ID_track ;};
50 void SetLayerID ( int f_ID_layer ) {m_ID_layer = f_ID_layer ;};
51 void SetPDGCode ( int pdg ) {m_pdg = pdg ;};
52 void SetParentID ( int f_ID_parent ) {m_ID_parent = f_ID_parent ;};
53 void SetTotalEnergyDeposit ( double f_E_deposit ) {m_E_deposit = f_E_deposit ;};
54 void SetPositionXOfPrePoint ( double f_XYZ_pre_x ) {m_XYZ_pre_x = f_XYZ_pre_x ;};
55 void SetPositionYOfPrePoint ( double f_XYZ_pre_y ) {m_XYZ_pre_y = f_XYZ_pre_y ;};
56 void SetPositionZOfPrePoint ( double f_XYZ_pre_z ) {m_XYZ_pre_z = f_XYZ_pre_z ;};
57 void SetPositionXOfPostPoint ( double f_XYZ_post_x ) {m_XYZ_post_x = f_XYZ_post_x ;};
58 void SetPositionYOfPostPoint ( double f_XYZ_post_y ) {m_XYZ_post_y = f_XYZ_post_y ;};
59 void SetPositionZOfPostPoint ( double f_XYZ_post_z ) {m_XYZ_post_z = f_XYZ_post_z ;};
60 void SetMomentumXOfPrePoint ( double f_P_pre_x ) {m_P_pre_x = f_P_pre_x ;};
61 void SetMomentumYOfPrePoint ( double f_P_pre_y ) {m_P_pre_y = f_P_pre_y ;};
62 void SetMomentumZOfPrePoint ( double f_P_pre_z ) {m_P_pre_z = f_P_pre_z ;};
63 void SetMomentumXOfPostPoint ( double f_P_post_x ) {m_P_post_x = f_P_post_x ;};
64 void SetMomentumYOfPostPoint ( double f_P_post_y ) {m_P_post_y = f_P_post_y ;};
65 void SetMomentumZOfPostPoint ( double f_P_post_z ) {m_P_post_z = f_P_post_z ;};
66// void AddIdentifier ( int f_ID_Identifier) {m_ID_Identifier.push_back(f_ID_Identifier);};
67// void AddIdentifier (int f_ID_Identifier ,int f_ID ) {m_ID_Identifier.AddAt(f_ID_Identifier, f_ID);};
68// void AddIdentifier ( Int_t f_ID_Identifier ,Int_t f_ID, Int_t Total ) {if(f_ID = 0)m_ID_Identifier.Set(Total); m_ID_Identifier.AddAt(f_ID_Identifier, f_ID);};
69 void AddIdentifier ( Int_t f_ID_Identifier[2000] , Int_t N_dim ) {m_ID_Identifier.Set(N_dim, f_ID_Identifier); };
70 void SetCreatorProcess (string creatorProcess) {m_creatorProcess = creatorProcess;};
71
72
73
74 /*
75 void SetPrePositionXInCu ( double f_Cu_pre_x ) {m_Cu_pre_x = f_Cu_pre_x ;};
76 void SetPrePositionYInCu ( double f_Cu_pre_y ) {m_Cu_pre_y = f_Cu_pre_y ;};
77 void SetPrePositionZInCu ( double f_Cu_pre_z ) {m_Cu_pre_z = f_Cu_pre_z ;};
78 void SetPostPositionXInCu ( double f_Cu_post_x ) {m_Cu_post_x = f_Cu_post_x ;};
79 void SetPostPositionYInCu ( double f_Cu_post_y ) {m_Cu_post_y = f_Cu_post_y ;};
80 void SetPostPositionZInCu ( double f_Cu_post_z ) {m_Cu_post_z = f_Cu_post_z ;};
81 void SetMomentumXOfCuPre ( double f_P_Cu_pre_x ) {m_P_Cu_pre_x = f_P_Cu_pre_x ;};
82 void SetMomentumYOfCuPre ( double f_P_Cu_pre_y ) {m_P_Cu_pre_y = f_P_Cu_pre_y ;};
83 void SetMomentumZOfCuPre ( double f_P_Cu_pre_z ) {m_P_Cu_pre_z = f_P_Cu_pre_z ;};
84 void SetMomentumXOfCuPost ( double f_P_Cu_post_x) {m_P_Cu_post_x= f_P_Cu_post_x;};
85 void SetMomentumYOfCuPost ( double f_P_Cu_post_y) {m_P_Cu_post_y= f_P_Cu_post_y;};
86 void SetMomentumZOfCuPost ( double f_P_Cu_post_z) {m_P_Cu_post_z= f_P_Cu_post_z;};
87 */
88 /* Get methods */
89 int GetTrackID () const {return m_ID_track ;};
90 int GetLayerID () const {return m_ID_layer ;};
91 int GetPDGCode () const {return m_pdg ;};
92 int GetParentID () const {return m_ID_parent ;};
93 double GetTotalEnergyDeposit () const {return m_E_deposit ;};
94 double GetPositionXOfPrePoint () const {return m_XYZ_pre_x ;};
95 double GetPositionYOfPrePoint () const {return m_XYZ_pre_y ;};
96 double GetPositionZOfPrePoint () const {return m_XYZ_pre_z ;};
97 double GetPositionXOfPostPoint () const {return m_XYZ_post_x ;};
98 double GetPositionYOfPostPoint () const {return m_XYZ_post_y ;};
99 double GetPositionZOfPostPoint () const {return m_XYZ_post_z ;};
100 double GetMomentumXOfPrePoint () const {return m_P_pre_x ;};
101 double GetMomentumYOfPrePoint () const {return m_P_pre_y ;};
102 double GetMomentumZOfPrePoint () const {return m_P_pre_z ;};
103 double GetMomentumXOfPostPoint () const {return m_P_post_x ;};
104 double GetMomentumYOfPostPoint () const {return m_P_post_y ;};
105 double GetMomentumZOfPostPoint () const {return m_P_post_z ;};
106 // vector<int>GetIdentifier () const {return m_ID_Identifier;};
107 TArrayI GetIdentifier () const {return m_ID_Identifier;};
108 string GetCreatorProcess () const {return m_creatorProcess;};
109 /*
110 double GetPrePositionXInCu () const {return m_Cu_pre_x ;};
111 double GetPrePositionYInCu () const {return m_Cu_pre_y ;};
112 double GetPrePositionZInCu () const {return m_Cu_pre_z ;};
113 double GetPostPositionXInCu () const {return m_Cu_post_x ;};
114 double GetPostPositionYInCu () const {return m_Cu_post_y ;};
115 double GetPostPositionZInCu () const {return m_Cu_post_z ;};
116 double GetMomentumXOfCuPre () const {return m_P_Cu_pre_x ;};
117 double GetMomentumYOfCuPre () const {return m_P_Cu_pre_y ;};
118 double GetMomentumZOfCuPre () const {return m_P_Cu_pre_z ;};
119 double GetMomentumXOfCuPost () const {return m_P_Cu_post_x;};
120 double GetMomentumYOfCuPost () const {return m_P_Cu_post_y;};
121 double GetMomentumZOfCuPost () const {return m_P_Cu_post_z;};
122 */
123 private:
124
125 CgemMcHit(const CgemMcHit &);
126
127 CgemMcHit &operator=(const CgemMcHit &);
128
129 int m_ID_track;
130 int m_ID_layer;
131 int m_pdg;
132 int m_ID_parent;
133 double m_E_deposit;
134 double m_XYZ_pre_x;
135 double m_XYZ_pre_y;
136 double m_XYZ_pre_z;
137 double m_XYZ_post_x;
138 double m_XYZ_post_y;
139 double m_XYZ_post_z;
140 double m_P_pre_x;
141 double m_P_pre_y;
142 double m_P_pre_z;
143 double m_P_post_x;
144 double m_P_post_y;
145 double m_P_post_z;
146 TArrayI m_ID_Identifier;
147 string m_creatorProcess; /* Name of the generation process */
148 /*
149 double m_Cu_pre_x;
150 double m_Cu_pre_y;
151 double m_Cu_pre_z;
152 double m_Cu_post_x;
153 double m_Cu_post_y;
154 double m_Cu_post_z;
155 double m_P_Cu_pre_x;
156 double m_P_Cu_pre_y;
157 double m_P_Cu_pre_z;
158 double m_P_Cu_post_x;
159 double m_P_Cu_post_y;
160 double m_P_Cu_post_z;
161 */
162};
163
164typedef ObjectVector<CgemMcHit> CgemMcHitCol;
165
166} /* End of 'NameSpace Event' */
167
168//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
169#endif
const CLID & CLID_CgemMcHit
Definition: EventModel.cxx:248
const CLID & CLID_CgemMcHit
Definition: EventModel.cxx:248
void AddIdentifier(Int_t f_ID_Identifier[2000], Int_t N_dim)
ObjectVector< CgemMcHit > CgemMcHitCol