BOSS 7.0.8
BESIII Offline Software System
Loading...
Searching...
No Matches
AsciiData.h
Go to the documentation of this file.
1#ifndef _AsciiData_h_
2#define _AsciiData_h_
3
4#include <string>
5#include <iostream>
6#include <vector>
7
8#include "dmplib.h"
9
10using std::string;
11
12class VERSIONNUM : public Tagged {
13public:
15public:
16 int major;
17 int minor;
18 friend std::istream& operator>>(std::istream&, VERSIONNUM& x);
19 friend std::ostream& operator<<(std::ostream&, const VERSIONNUM& x);
20};
21
22class EVHEAD : public Tagged {
23public:
24 EVHEAD() {};
25public:
26 int runNo;
27 int eventNo;
28 friend std::istream& operator>>(std::istream&, EVHEAD& x);
29 friend std::ostream& operator<<(std::ostream&, const EVHEAD& x);
30};
31
32class DECAYMODE : public Tagged {
33 public:
34 DECAYMODE () {};
35 public:
36 int size;
37 int data[10];
38 friend std::istream& operator>>(std::istream&, DECAYMODE& x);
39 friend std::ostream& operator<<(std::ostream&, const DECAYMODE& x);
40};
41
42class TrackTruthType {
43public:
45public:
46 int trackIndex;
47 int PDGCode;
48 float PDGCharge;
49 int v0Index;
50 int v1Index;
51 float px;
52 float py;
53 float pz;
54 float E;
57};
58
59class TRACKTRUTH : public Tagged {
60public:
62public:
63 int nTruth;
64 std::vector<TrackTruthType> truthCol;
65 friend std::istream& operator>>(std::istream&, TRACKTRUTH& x);
66 friend std::ostream& operator<<(std::ostream&, const TRACKTRUTH& x);
67};
68
69class VertexTruthType {
70public:
72public:
73 int vertexIndex;
75 float posX;
76 float posY;
77 float posZ;
78 float time;
79};
80
81class VERTEXTRUTH : public Tagged {
82public:
84public:
85 int nTruth;
86 std::vector<VertexTruthType> truthCol;
87 friend std::istream& operator>>(std::istream&, VERTEXTRUTH& x);
88 friend std::ostream& operator<<(std::ostream&, const VERTEXTRUTH& x);
89};
90
91
92class MdcTruthType {
93public:
95public:
96 int trackIndex;
97 int layerNo;
98 int cellNo;
99 float edep;
100 float driftD;
101 float posX;
102 float posY;
103 float posZ;
104 int posFlag;
105 friend std::istream& operator>>(std::istream&, MdcTruthType& x);
106 friend std::ostream& operator<<(std::ostream&, const MdcTruthType& x);
107};
108
109class MDCTRUTH : public Tagged {
110public:
112public:
113 int nTruth;
114 std::vector<MdcTruthType> truthCol;
115 friend std::istream& operator>>(std::istream&, MDCTRUTH& x);
116 friend std::ostream& operator<<(std::ostream&, const MDCTRUTH& x);
117};
118
119class TofTruthType {
120public:
122public:
123 int trackIndex;
124 int partId;
125 int scinNb;
126 float posX;
127 float posY;
128 float posZ;
129 float px;
130 float py;
131 float pz;
132 float trackL;
133 float time;
134 friend std::istream& operator>>(std::istream&, TofTruthType& x);
135 friend std::ostream& operator<<(std::ostream&, const TofTruthType& x);
136};
137
138class TOFTRUTH : public Tagged {
139public:
141public:
142 int nTruth;
143 std::vector<TofTruthType> truthCol;
144 friend std::istream& operator>>(std::istream&, TOFTRUTH& x);
145 friend std::ostream& operator<<(std::ostream&, const TOFTRUTH& x);
146};
147
148class EmcTruthType {
149public:
151public:
152 int trackIndex;
153 int partId;
154 int numTheta;
155 int numPhi;
156 float posX;
157 float posY;
158 float posZ;
159 float px;
160 float py;
161 float pz;
162 float totalEdep;
163 friend std::istream& operator>>(std::istream&, EmcTruthType& x);
164 friend std::ostream& operator<<(std::ostream&, const EmcTruthType& x);
165};
166
167class EMCTRUTH : public Tagged {
168public:
170public:
171 int nTruth;
172 std::vector<EmcTruthType> truthCol;
173 friend std::istream& operator>>(std::istream&, EMCTRUTH& x);
174 friend std::ostream& operator<<(std::ostream&, const EMCTRUTH& x);
175};
176
177class MucTruthType {
178public:
180public:
181 int trackIndex;
182 int partId;
183 int segId;
184 int gapId;
185 int stripId;
186 float posX;
187 float posY;
188 float posZ;
189 float px;
190 float py;
191 float pz;
192 friend std::istream& operator>>(std::istream&, MucTruthType& x);
193 friend std::ostream& operator<<(std::ostream&, const MucTruthType& x);
194};
195
196class MUCTRUTH : public Tagged {
197public:
199public:
200 int nTruth;
201 std::vector<MucTruthType> truthCol;
202 friend std::istream& operator>>(std::istream&, MUCTRUTH& x);
203 friend std::ostream& operator<<(std::ostream&, const MUCTRUTH& x);
204};
205
206class MdcDigiType {
207public:
209public:
210 int trackIndex;
211 int layerNo;
212 int cellNo;
213 float energyDeposit;
214 float driftTime;
215 friend std::istream& operator>>(std::istream&, MdcDigiType& x);
216 friend std::ostream& operator<<(std::ostream&, const MdcDigiType& x);
217};
218
219class MDCDIGI : public Tagged {
220public:
222public:
223 int nDigi;
224 std::vector<MdcDigiType> digiCol;
225 friend std::istream& operator>>(std::istream&, MDCDIGI& x);
226 friend std::ostream& operator<<(std::ostream&, const MDCDIGI& x);
227};
228
229class TofDigiType {
230public:
232public:
233 int trackIndex;
234 int partId;
235 int scinNb;
236 float forwADC;
237 float forwTDC;
238 float backADC;
239 float backTDC;
240
241 friend std::istream& operator>>(std::istream&, TofDigiType& x);
242 friend std::ostream& operator<<(std::ostream&, const TofDigiType& x);
243};
244
245class TOFDIGI : public Tagged {
246public:
248public:
249 int nDigi;
250 std::vector<TofDigiType> digiCol;
251 friend std::istream& operator>>(std::istream&, TOFDIGI& x);
252 friend std::ostream& operator<<(std::ostream&, const TOFDIGI& x);
253};
254
255class EmcDigiType {
256public:
258public:
259 int trackIndex;
260 int partId;
261 int numTheta;
262 int numPhi;
263 float energyDeposit;
264 float hitTime;
265 friend std::istream& operator>>(std::istream&, EmcDigiType& x);
266 friend std::ostream& operator<<(std::ostream&, const EmcDigiType& x);
267};
268
269class EMCDIGI : public Tagged {
270public:
272public:
273 int nDigi;
274 std::vector<EmcDigiType> digiCol;
275 friend std::istream& operator>>(std::istream&, EMCDIGI& x);
276 friend std::ostream& operator<<(std::ostream&, const EMCDIGI& x);
277};
278
279class MucDigiType {
280public:
282public:
283 int trackIndex;
284 int partNo;
285 int segNo;
286 int gapNo;
287 int stripNo;
288 friend std::istream& operator>>(std::istream&, MucDigiType& x);
289 friend std::ostream& operator<<(std::ostream&, const MucDigiType& x);
290};
291
292class MUCDIGI : public Tagged {
293public:
295public:
296 int nDigi;
297 std::vector<MucDigiType> digiCol;
298 friend std::istream& operator>>(std::istream&, MUCDIGI& x);
299 friend std::ostream& operator<<(std::ostream&, const MUCDIGI& x);
300};
301
302class EVENT : public Tagged {
303public:
304 EVENT() {};
305public:
318 friend std::istream& operator>>(std::istream&, EVENT& x);
319 friend std::ostream& operator<<(std::ostream&, const EVENT& x);
320};
321
322#endif // _AsciiData_h_
int size
Definition: AsciiData.hh:36
friend std::istream & operator>>(std::istream &, DECAYMODE &x)
Definition: AsciiData.cc:48
friend std::ostream & operator<<(std::ostream &, const DECAYMODE &x)
Definition: AsciiData.cc:60
int data[10]
Definition: AsciiData.hh:37
DECAYMODE()
Definition: AsciiData.h:34
friend std::istream & operator>>(std::istream &, EMCDIGI &x)
Definition: AsciiData.cc:636
friend std::ostream & operator<<(std::ostream &, const EMCDIGI &x)
Definition: AsciiData.cc:649
EMCDIGI()
Definition: AsciiData.h:271
std::vector< EmcDigiType > digiCol
Definition: AsciiData.hh:323
int nDigi
Definition: AsciiData.hh:322
friend std::istream & operator>>(std::istream &, EMCTRUTH &x)
Definition: AsciiData.cc:330
friend std::ostream & operator<<(std::ostream &, const EMCTRUTH &x)
Definition: AsciiData.cc:343
int nTruth
Definition: AsciiData.hh:171
EMCTRUTH()
Definition: AsciiData.h:169
std::vector< EmcTruthType > truthCol
Definition: AsciiData.hh:172
friend std::ostream & operator<<(std::ostream &, const EVENT &x)
Definition: AsciiData.cc:866
TRACKTRUTH trackTruth
Definition: AsciiData.hh:395
TOFDIGI tofDigi
Definition: AsciiData.hh:400
MDCTRUTH mdcTruth
Definition: AsciiData.hh:397
EVENT()
Definition: AsciiData.h:304
MDCDIGI mdcDigi
Definition: AsciiData.hh:398
VERTEXTRUTH vertexTruth
Definition: AsciiData.hh:396
MUCDIGI mucDigi
Definition: AsciiData.hh:404
EMCTRUTH emcTruth
Definition: AsciiData.hh:401
MUCTRUTH mucTruth
Definition: AsciiData.hh:403
friend std::istream & operator>>(std::istream &, EVENT &x)
Definition: AsciiData.cc:786
EVHEAD header
Definition: AsciiData.hh:393
DECAYMODE decayMode
Definition: AsciiData.hh:394
EMCDIGI emcDigi
Definition: AsciiData.hh:402
TOFTRUTH tofTruth
Definition: AsciiData.hh:399
friend std::ostream & operator<<(std::ostream &, const EVHEAD &x)
Definition: AsciiData.cc:37
int runNo
Definition: AsciiData.hh:26
EVHEAD()
Definition: AsciiData.h:24
int eventNo
Definition: AsciiData.hh:27
friend std::istream & operator>>(std::istream &, EVHEAD &x)
Definition: AsciiData.cc:27
float hitTime
Definition: AsciiData.hh:313
float energyDeposit
Definition: AsciiData.hh:312
friend std::ostream & operator<<(std::ostream &, const EmcDigiType &x)
Definition: AsciiData.cc:624
int trackIndex
Definition: AsciiData.hh:308
friend std::istream & operator>>(std::istream &, EmcDigiType &x)
Definition: AsciiData.cc:613
float totalEdep
Definition: AsciiData.hh:162
friend std::istream & operator>>(std::istream &, EmcTruthType &x)
Definition: AsciiData.cc:296
friend std::ostream & operator<<(std::ostream &, const EmcTruthType &x)
Definition: AsciiData.cc:312
friend std::ostream & operator<<(std::ostream &, const MDCDIGI &x)
Definition: AsciiData.cc:449
int nDigi
Definition: AsciiData.hh:223
std::vector< MdcDigiType > digiCol
Definition: AsciiData.hh:224
MDCDIGI()
Definition: AsciiData.h:221
friend std::istream & operator>>(std::istream &, MDCDIGI &x)
Definition: AsciiData.cc:436
friend std::ostream & operator<<(std::ostream &, const MDCTRUTH &x)
Definition: AsciiData.cc:224
int nTruth
Definition: AsciiData.hh:113
MDCTRUTH()
Definition: AsciiData.h:111
friend std::istream & operator>>(std::istream &, MDCTRUTH &x)
Definition: AsciiData.cc:211
std::vector< MdcTruthType > truthCol
Definition: AsciiData.hh:114
MUCDIGI()
Definition: AsciiData.h:294
int nDigi
Definition: AsciiData.hh:364
std::vector< MucDigiType > digiCol
Definition: AsciiData.hh:365
friend std::istream & operator>>(std::istream &, MUCDIGI &x)
Definition: AsciiData.cc:722
friend std::ostream & operator<<(std::ostream &, const MUCDIGI &x)
Definition: AsciiData.cc:735
friend std::istream & operator>>(std::istream &, MUCTRUTH &x)
Definition: AsciiData.cc:389
std::vector< MucTruthType > truthCol
Definition: AsciiData.hh:201
int nTruth
Definition: AsciiData.hh:200
MUCTRUTH()
Definition: AsciiData.h:198
friend std::ostream & operator<<(std::ostream &, const MUCTRUTH &x)
Definition: AsciiData.cc:402
float driftTime
Definition: AsciiData.hh:214
friend std::istream & operator>>(std::istream &, MdcDigiType &x)
Definition: AsciiData.cc:415
float energyDeposit
Definition: AsciiData.hh:213
int trackIndex
Definition: AsciiData.hh:210
friend std::ostream & operator<<(std::ostream &, const MdcDigiType &x)
Definition: AsciiData.cc:425
friend std::ostream & operator<<(std::ostream &, const MdcTruthType &x)
Definition: AsciiData.cc:196
float driftD
Definition: AsciiData.hh:100
friend std::istream & operator>>(std::istream &, MdcTruthType &x)
Definition: AsciiData.cc:182
float edep
Definition: AsciiData.hh:99
int trackIndex
Definition: AsciiData.hh:96
friend std::ostream & operator<<(std::ostream &, const MucDigiType &x)
Definition: AsciiData.cc:710
int trackIndex
Definition: AsciiData.hh:351
friend std::istream & operator>>(std::istream &, MucDigiType &x)
Definition: AsciiData.cc:700
friend std::ostream & operator<<(std::ostream &, const MucTruthType &x)
Definition: AsciiData.cc:372
friend std::istream & operator>>(std::istream &, MucTruthType &x)
Definition: AsciiData.cc:356
friend std::ostream & operator<<(std::ostream &, const TOFDIGI &x)
Definition: AsciiData.cc:562
TOFDIGI()
Definition: AsciiData.h:247
friend std::istream & operator>>(std::istream &, TOFDIGI &x)
Definition: AsciiData.cc:549
int nDigi
Definition: AsciiData.hh:279
std::vector< TofDigiType > digiCol
Definition: AsciiData.hh:280
int nTruth
Definition: AsciiData.hh:142
friend std::ostream & operator<<(std::ostream &, const TOFTRUTH &x)
Definition: AsciiData.cc:283
TOFTRUTH()
Definition: AsciiData.h:140
std::vector< TofTruthType > truthCol
Definition: AsciiData.hh:143
friend std::istream & operator>>(std::istream &, TOFTRUTH &x)
Definition: AsciiData.cc:270
TRACKTRUTH()
Definition: AsciiData.h:61
std::vector< TrackTruthType > truthCol
Definition: AsciiData.hh:64
int nTruth
Definition: AsciiData.hh:63
friend std::istream & operator>>(std::istream &, TRACKTRUTH &x)
Definition: AsciiData.cc:106
friend std::ostream & operator<<(std::ostream &, const TRACKTRUTH &x)
Definition: AsciiData.cc:119
Definition: dmplib.hh:45
friend std::ostream & operator<<(std::ostream &, const TofDigiType &x)
Definition: AsciiData.cc:535
float backADC
Definition: AsciiData.hh:268
float backTDC
Definition: AsciiData.hh:269
float forwTDC
Definition: AsciiData.hh:267
int trackIndex
Definition: AsciiData.hh:263
float forwADC
Definition: AsciiData.hh:266
friend std::istream & operator>>(std::istream &, TofDigiType &x)
Definition: AsciiData.cc:523
float trackL
Definition: AsciiData.hh:132
friend std::ostream & operator<<(std::ostream &, const TofTruthType &x)
Definition: AsciiData.cc:253
friend std::istream & operator>>(std::istream &, TofTruthType &x)
Definition: AsciiData.cc:237
int minDaughterIndex
Definition: AsciiData.hh:55
int maxDaughterIndex
Definition: AsciiData.hh:56
float PDGCharge
Definition: AsciiData.hh:48
VERSIONNUM()
Definition: AsciiData.h:14
int major
Definition: AsciiData.h:16
friend std::istream & operator>>(std::istream &, VERSIONNUM &x)
Definition: AsciiData.cxx:6
int minor
Definition: AsciiData.h:17
friend std::ostream & operator<<(std::ostream &, const VERSIONNUM &x)
Definition: AsciiData.cxx:16
friend std::istream & operator>>(std::istream &, VERTEXTRUTH &x)
Definition: AsciiData.cc:155
friend std::ostream & operator<<(std::ostream &, const VERTEXTRUTH &x)
Definition: AsciiData.cc:168
std::vector< VertexTruthType > truthCol
Definition: AsciiData.hh:86
int parentTrackIndex
Definition: AsciiData.hh:74