BOSS 7.0.5
BESIII Offline Software System
Loading...
Searching...
No Matches
AsciiData.cc
Go to the documentation of this file.
1
2#include "AsciiData.hh"
3
4//std::string Tagged::s_saved_tag;
5
6std::istream& operator>>(std::istream& is, FRMTVERSION& x)
7{
8 x.check_start_tag(is,"VERSION");
9 if(!x.initialized()) return is;
10 is >> x.major;
11 is >> x.minor;
12 x.check_end_tag(is, "VERSION");
13 return is;
14}
15
16std::ostream& operator<<(std::ostream& os, const FRMTVERSION& x)
17{
18 os << std::endl << "{ VERSION" << std::endl;
19 if(x.initialized()) {
20 os << " " << x.major;
21 os << " " << x.minor;
22 }
23 os << std::endl << "} VERSION" << std::endl;
24 return os;
25}
26
27std::istream& operator>>(std::istream& is, EVHEAD& x)
28{
29 x.check_start_tag(is,"EVHEAD");
30 if(!x.initialized()) return is;
31 is >> x.runNo;
32 is >> x.eventNo;
33 x.check_end_tag(is, "EVHEAD");
34 return is;
35}
36
37std::ostream& operator<<(std::ostream &os,const EVHEAD& x)
38{
39 os << std::endl << "{ EVHEAD" << std::endl;
40 if(x.initialized()) {
41 os << " " << x.runNo;
42 os << " " << x.eventNo;
43 }
44 os << std::endl << "} EVHEAD" << std::endl;
45 return os;
46}
47
48std::istream& operator>>(std::istream& is, DECAYMODE& x)
49{
50 x.check_start_tag(is,"DECAYMODE");
51 if(!x.initialized()) return is;
52 is >> x.size;
53 for (int index=0; index<x.size; index++) {
54 is >> x.data[index];
55 }
56 x.check_end_tag(is, "DECAYMODE");
57 return is;
58}
59
60std::ostream& operator<<(std::ostream &os,const DECAYMODE& x)
61{
62 os << std::endl << "{ DECAYMODE" << std::endl;
63 if(x.initialized()) {
64 os << " " << x.size;
65 for (int index=0; index<x.size; index++) {
66 os << " " << x.data[index];
67 }
68 }
69 os << std::endl << "} DECAYMODE" << std::endl;
70 return os;
71}
72
73std::istream& operator>>(std::istream& is, TrackTruthType& x)
74{
75 is >> x.trackIndex;
76 is >> x.PDGCode;
77 is >> x.PDGCharge;
78 is >> x.v0Index;
79 is >> x.v1Index;
80 is >> x.px;
81 is >> x.py;
82 is >> x.pz;
83 is >> x.E;
84 is >> x.minDaughterIndex;
85 is >> x.maxDaughterIndex;
86 return is;
87}
88
89std::ostream& operator<<(std::ostream &os,const TrackTruthType& x)
90{
91 os << " " << x.trackIndex;
92 os << " " << x.PDGCode;
93 os << " " << x.PDGCharge;
94 os << " " << x.v0Index;
95 os << " " << x.v1Index;
96 os << " " << x.px;
97 os << " " << x.py;
98 os << " " << x.pz;
99 os << " " << x.E;
100 os << " " << x.minDaughterIndex;
101 os << " " << x.maxDaughterIndex;
102 os << std::endl;
103 return os;
104}
105
106std::istream& operator>>(std::istream& is, TRACKTRUTH& x)
107{
108 x.check_start_tag(is,"TRACKTRUTH");
109 if(!x.initialized()) return is;
110 is >> x.nTruth;
111 x.truthCol.resize(x.nTruth);
112 {for(int i = 0; i < x.nTruth; i++) {
113 is >> x.truthCol[i];
114 }}
115 x.check_end_tag(is, "TRACKTRUTH");
116 return is;
117}
118
119std::ostream& operator<<(std::ostream &os,const TRACKTRUTH& x)
120{
121 os << std::endl << "{ TRACKTRUTH" << std::endl;
122 if(x.initialized()) {
123 os << " " << x.nTruth;
124 {for(int i = 0; i < x.nTruth; i++) {
125 os << " " << x.truthCol[i];
126 }}
127 }
128 os << std::endl << "} TRACKTRUTH" << std::endl;
129 return os;
130}
131
132std::istream& operator>>(std::istream& is, VertexTruthType& x)
133{
134 is >> x.vertexIndex;
135 is >> x.parentTrackIndex;
136 is >> x.posX;
137 is >> x.posY;
138 is >> x.posZ;
139 is >> x.time;
140 return is;
141}
142
143std::ostream& operator<<(std::ostream &os,const VertexTruthType& x)
144{
145 os << " " << x.vertexIndex;
146 os << " " << x.parentTrackIndex;
147 os << " " << x.posX;
148 os << " " << x.posY;
149 os << " " << x.posZ;
150 os << " " << x.time;
151 os << std::endl;
152 return os;
153}
154
155std::istream& operator>>(std::istream& is, VERTEXTRUTH& x)
156{
157 x.check_start_tag(is,"VERTEXTRUTH");
158 if(!x.initialized()) return is;
159 is >> x.nTruth;
160 x.truthCol.resize(x.nTruth);
161 {for(int i = 0; i < x.nTruth; i++) {
162 is >> x.truthCol[i];
163 }}
164 x.check_end_tag(is, "VERTEXTRUTH");
165 return is;
166}
167
168std::ostream& operator<<(std::ostream &os,const VERTEXTRUTH& x)
169{
170 os << std::endl << "{ VERTEXTRUTH" << std::endl;
171 if(x.initialized()) {
172 os << " " << x.nTruth;
173 {for(int i = 0; i < x.nTruth; i++) {
174 os << " " << x.truthCol[i];
175 }}
176 }
177 os << std::endl << "} VERTEXTRUTH" << std::endl;
178 return os;
179}
180
181
182std::istream& operator>>(std::istream& is, MdcTruthType& x)
183{
184 is >> x.trackIndex;
185 is >> x.layerNo;
186 is >> x.cellNo;
187 is >> x.edep;
188 is >> x.driftD;
189 is >> x.posX;
190 is >> x.posY;
191 is >> x.posZ;
192 is >> x.posFlag;
193 return is;
194}
195
196std::ostream& operator<<(std::ostream &os,const MdcTruthType& x)
197{
198 os << " " << x.trackIndex;
199 os << " " << x.layerNo;
200 os << " " << x.cellNo;
201 os << " " << x.edep;
202 os << " " << x.driftD;
203 os << " " << x.posX;
204 os << " " << x.posY;
205 os << " " << x.posZ;
206 os << " " << x.posFlag;
207 os << std::endl;
208 return os;
209}
210
211std::istream& operator>>(std::istream& is, MDCTRUTH& x)
212{
213 x.check_start_tag(is,"MDCTRUTH");
214 if(!x.initialized()) return is;
215 is >> x.nTruth;
216 x.truthCol.resize(x.nTruth);
217 {for(int i = 0; i < x.nTruth; i++) {
218 is >> x.truthCol[i];
219 }}
220 x.check_end_tag(is, "MDCTRUTH");
221 return is;
222}
223
224std::ostream& operator<<(std::ostream &os,const MDCTRUTH& x)
225{
226 os << std::endl << "{ MDCTRUTH" << std::endl;
227 if(x.initialized()) {
228 os << " " << x.nTruth;
229 {for(int i = 0; i < x.nTruth; i++) {
230 os << " " << x.truthCol[i];
231 }}
232 }
233 os << std::endl << "} MDCTRUTH" << std::endl;
234 return os;
235}
236
237std::istream& operator>>(std::istream& is, TofTruthType& x)
238{
239 is >> x.trackIndex;
240 is >> x.partId;
241 is >> x.scinNb;
242 is >> x.posX;
243 is >> x.posY;
244 is >> x.posZ;
245 is >> x.px;
246 is >> x.py;
247 is >> x.pz;
248 is >> x.trackL;
249 is >> x.time;
250 return is;
251}
252
253std::ostream& operator<<(std::ostream &os,const TofTruthType& x)
254{
255 os << " " << x.trackIndex;
256 os << " " << x.partId;
257 os << " " << x.scinNb;
258 os << " " << x.posX;
259 os << " " << x.posY;
260 os << " " << x.posZ;
261 os << " " << x.px;
262 os << " " << x.py;
263 os << " " << x.pz;
264 os << " " << x.trackL;
265 os << " " << x.time;
266 os << std::endl;
267 return os;
268}
269
270std::istream& operator>>(std::istream& is, TOFTRUTH& x)
271{
272 x.check_start_tag(is,"TOFTRUTH");
273 if(!x.initialized()) return is;
274 is >> x.nTruth;
275 x.truthCol.resize(x.nTruth);
276 {for(int i = 0; i < x.nTruth; i++) {
277 is >> x.truthCol[i];
278 }}
279 x.check_end_tag(is, "TOFTRUTH");
280 return is;
281}
282
283std::ostream& operator<<(std::ostream &os,const TOFTRUTH& x)
284{
285 os << std::endl << "{ TOFTRUTH" << std::endl;
286 if(x.initialized()) {
287 os << " " << x.nTruth;
288 {for(int i = 0; i < x.nTruth; i++) {
289 os << " " << x.truthCol[i];
290 }}
291 }
292 os << std::endl << "} TOFTRUTH" << std::endl;
293 return os;
294}
295
296std::istream& operator>>(std::istream& is, EmcTruthType& x)
297{
298 is >> x.trackIndex;
299 is >> x.partId;
300 is >> x.numTheta;
301 is >> x.numPhi;
302 is >> x.posX;
303 is >> x.posY;
304 is >> x.posZ;
305 is >> x.px;
306 is >> x.py;
307 is >> x.pz;
308 is >> x.totalEdep;
309 return is;
310}
311
312std::ostream& operator<<(std::ostream &os,const EmcTruthType& x)
313{
314 os << " " << x.trackIndex;
315 os << " " << x.partId;
316 os << " " << x.numTheta;
317 os << " " << x.numPhi;
318 os << " " << x.posX;
319 os << " " << x.posY;
320 os << " " << x.posZ;
321 os << " " << x.px;
322 os << " " << x.py;
323 os << " " << x.pz;
324 os << " " << x.totalEdep;
325 os << std::endl;
326 return os;
327
328}
329
330std::istream& operator>>(std::istream& is, EMCTRUTH& x)
331{
332 x.check_start_tag(is,"EMCTRUTH");
333 if(!x.initialized()) return is;
334 is >> x.nTruth;
335 x.truthCol.resize(x.nTruth);
336 {for(int i = 0; i < x.nTruth; i++) {
337 is >> x.truthCol[i];
338 }}
339 x.check_end_tag(is, "EMCTRUTH");
340 return is;
341}
342
343std::ostream& operator<<(std::ostream &os,const EMCTRUTH& x)
344{
345 os << std::endl << "{ EMCTRUTH" << std::endl;
346 if(x.initialized()) {
347 os << " " << x.nTruth;
348 {for(int i = 0; i < x.nTruth; i++) {
349 os << " " << x.truthCol[i];
350 }}
351 }
352 os << std::endl << "} EMCTRUTH" << std::endl;
353 return os;
354}
355
356std::istream& operator>>(std::istream& is, MucTruthType& x)
357{
358 is >> x.trackIndex;
359 is >> x.partId;
360 is >> x.segId;
361 is >> x.gapId;
362 is >> x.stripId;
363 is >> x.posX;
364 is >> x.posY;
365 is >> x.posZ;
366 is >> x.px;
367 is >> x.py;
368 is >> x.pz;
369 return is;
370}
371
372std::ostream& operator<<(std::ostream &os,const MucTruthType& x)
373{
374 os << " " << x.trackIndex;
375 os << " " << x.partId;
376 os << " " << x.segId;
377 os << " " << x.gapId;
378 os << " " << x.stripId;
379 os << " " << x.posX;
380 os << " " << x.posY;
381 os << " " << x.posZ;
382 os << " " << x.px;
383 os << " " << x.py;
384 os << " " << x.pz;
385 os << std::endl;
386 return os;
387}
388
389std::istream& operator>>(std::istream& is, MUCTRUTH& x)
390{
391 x.check_start_tag(is,"MUCTRUTH");
392 if(!x.initialized()) return is;
393 is >> x.nTruth;
394 x.truthCol.resize(x.nTruth);
395 {for(int i = 0; i < x.nTruth; i++) {
396 is >> x.truthCol[i];
397 }}
398 x.check_end_tag(is, "MUCTRUTH");
399 return is;
400}
401
402std::ostream& operator<<(std::ostream &os,const MUCTRUTH& x)
403{
404 os << std::endl << "{ MUCTRUTH" << std::endl;
405 if(x.initialized()) {
406 os << " " << x.nTruth;
407 {for(int i = 0; i < x.nTruth; i++) {
408 os << " " << x.truthCol[i];
409 }}
410 }
411 os << std::endl << "} MUCTRUTH" << std::endl;
412 return os;
413}
414
415std::istream& operator>>(std::istream& is, MdcDigiType& x)
416{
417 is >> x.trackIndex;
418 is >> x.layerNo;
419 is >> x.cellNo;
420 is >> x.energyDeposit;
421 is >> x.driftTime;
422 return is;
423}
424
425std::ostream& operator<<(std::ostream &os,const MdcDigiType& x)
426{
427 os << " " << x.trackIndex;
428 os << " " << x.layerNo;
429 os << " " << x.cellNo;
430 os << " " << x.energyDeposit;
431 os << " " << x.driftTime;
432 os << std::endl;
433 return os;
434}
435
436std::istream& operator>>(std::istream& is, MDCDIGI& x)
437{
438 x.check_start_tag(is,"MDCDIGI");
439 if(!x.initialized()) return is;
440 is >> x.nDigi;
441 x.digiCol.resize(x.nDigi);
442 {for(int i = 0; i < x.nDigi; i++) {
443 is >> x.digiCol[i];
444 }}
445 x.check_end_tag(is, "MDCDIGI");
446 return is;
447}
448
449std::ostream& operator<<(std::ostream &os,const MDCDIGI& x)
450{
451 os << std::endl << "{ MDCDIGI" << std::endl;
452 if(x.initialized()) {
453 os << " " << x.nDigi;
454 {for(int i = 0; i < x.nDigi; i++) {
455 os << " " << x.digiCol[i];
456 }}
457 }
458 os << std::endl << "} MDCDIGI" << std::endl;
459 return os;
460}
461
462std::istream& operator>>(std::istream& is, MdcHitType& x)
463{
464 is >> x.trackIndex;
465 is >> x.layerNo;
466 is >> x.cellNo;
467 is >> x.posX;
468 is >> x.posY;
469 is >> x.posZ;
470 is >> x.energyDeposit;
471 is >> x.driftDistance;
472 is >> x.globalT;
473 is >> x.theta;
474 is >> x.enterAngle;
475 is >> x.posFlag;
476 return is;
477}
478
479std::ostream& operator<<(std::ostream &os,const MdcHitType& x)
480{
481 os << " " << x.trackIndex;
482 os << " " << x.layerNo;
483 os << " " << x.cellNo;
484 os << " " << x.posX;
485 os << " " << x.posY;
486 os << " " << x.posZ;
487 os << " " << x.energyDeposit;
488 os << " " << x.driftDistance;
489 os << " " << x.globalT;
490 os << " " << x.theta;
491 os << " " << x.enterAngle;
492 os << " " << x.posFlag;
493 os << std::endl;
494 return os;
495}
496
497std::istream& operator>>(std::istream& is, MDCHIT& x)
498{
499 x.check_start_tag(is,"MDCHIT");
500 if(!x.initialized()) return is;
501 is >> x.nHit;
502 x.hitCol.resize(x.nHit);
503 {for(int i = 0; i < x.nHit; i++) {
504 is >> x.hitCol[i];
505 }}
506 x.check_end_tag(is, "MDCHIT");
507 return is;
508}
509
510std::ostream& operator<<(std::ostream &os,const MDCHIT& x)
511{
512 os << std::endl << "{ MDCHIT" << std::endl;
513 if(x.initialized()) {
514 os << " " << x.nHit;
515 {for(int i = 0; i < x.nHit; i++) {
516 os << " " << x.hitCol[i];
517 }}
518 }
519 os << std::endl << "} MDCHIT" << std::endl;
520 return os;
521}
522
523std::istream& operator>>(std::istream& is, TofDigiType& x)
524{
525 is >> x.trackIndex;
526 is >> x.partId;
527 is >> x.scinNb;
528 is >> x.forwADC;
529 is >> x.forwTDC;
530 is >> x.backADC;
531 is >> x.backTDC;
532 return is;
533}
534
535std::ostream& operator<<(std::ostream &os,const TofDigiType& x)
536{
537 os << " " << x.trackIndex;
538 os << " " << x.partId;
539 os << " " << x.scinNb;
540 os << " " << x.forwADC;
541 os << " " << x.forwTDC;
542 os << " " << x.backADC;
543 os << " " << x.backTDC;
544 os << std::endl;
545 return os;
546}
547
548
549std::istream& operator>>(std::istream& is, TOFDIGI& x)
550{
551 x.check_start_tag(is,"TOFDIGI");
552 if(!x.initialized()) return is;
553 is >> x.nDigi;
554 x.digiCol.resize(x.nDigi);
555 {for(int i = 0; i < x.nDigi; i++) {
556 is >> x.digiCol[i];
557 }}
558 x.check_end_tag(is, "TOFDIGI");
559 return is;
560}
561
562std::ostream& operator<<(std::ostream &os,const TOFDIGI& x)
563{
564 os << std::endl << "{ TOFDIGI" << std::endl;
565 if(x.initialized()) {
566 os << " " << x.nDigi;
567 {for(int i = 0; i < x.nDigi; i++) {
568 os << " " << x.digiCol[i];
569 }}
570 }
571 os << std::endl << "} TOFDIGI" << std::endl;
572 return os;
573}
574
575std::istream& operator>>(std::istream& is, TofHitType& x)
576{
577 return is;
578}
579
580std::ostream& operator<<(std::ostream &os,const TofHitType& x)
581{
582 os << std::endl;
583 return os;
584}
585
586
587std::istream& operator>>(std::istream& is, TOFHIT& x)
588{
589 x.check_start_tag(is,"TOFHIT");
590 if(!x.initialized()) return is;
591 is >> x.nHit;
592 x.hitCol.resize(x.nHit);
593 {for(int i = 0; i < x.nHit; i++) {
594 is >> x.hitCol[i];
595 }}
596 x.check_end_tag(is, "TOFHIT");
597 return is;
598}
599
600std::ostream& operator<<(std::ostream &os,const TOFHIT& x)
601{
602 os << std::endl << "{ TOFHIT" << std::endl;
603 if(x.initialized()) {
604 os << " " << x.nHit;
605 {for(int i = 0; i < x.nHit; i++) {
606 os << " " << x.hitCol[i];
607 }}
608 }
609 os << std::endl << "} TOFHIT" << std::endl;
610 return os;
611}
612
613std::istream& operator>>(std::istream& is, EmcDigiType& x)
614{
615 is >> x.trackIndex;
616 is >> x.partId;
617 is >> x.numTheta;
618 is >> x.numPhi;
619 is >> x.energyDeposit;
620 is >> x.hitTime;
621 return is;
622}
623
624std::ostream& operator<<(std::ostream &os,const EmcDigiType& x)
625{
626 os << " " << x.trackIndex;
627 os << " " << x.partId;
628 os << " " << x.numTheta;
629 os << " " << x.numPhi;
630 os << " " << x.energyDeposit;
631 os << " " << x.hitTime;
632 os << std::endl;
633 return os;
634}
635
636std::istream& operator>>(std::istream& is, EMCDIGI& x)
637{
638 x.check_start_tag(is,"EMCDIGI");
639 if(!x.initialized()) return is;
640 is >> x.nDigi;
641 x.digiCol.resize(x.nDigi);
642 {for(int i = 0; i < x.nDigi; i++) {
643 is >> x.digiCol[i];
644 }}
645 x.check_end_tag(is, "EMCDIGI");
646 return is;
647}
648
649std::ostream& operator<<(std::ostream &os,const EMCDIGI& x)
650{
651 os << std::endl << "{ EMCDIGI" << std::endl;
652 if(x.initialized()) {
653 os << " " << x.nDigi;
654 {for(int i = 0; i < x.nDigi; i++) {
655 os << " " << x.digiCol[i];
656 }}
657 }
658 os << std::endl << "} EMCDIGI" << std::endl;
659 return os;
660}
661
662std::istream& operator>>(std::istream& is, EmcHitType& x)
663{
664 return is;
665}
666
667std::ostream& operator<<(std::ostream &os,const EmcHitType& x)
668{
669 os << std::endl;
670 return os;
671}
672
673
674std::istream& operator>>(std::istream& is, EMCHIT& x)
675{
676 x.check_start_tag(is,"EMCHIT");
677 if(!x.initialized()) return is;
678 is >> x.nHit;
679 x.hitCol.resize(x.nHit);
680 {for(int i = 0; i < x.nHit; i++) {
681 is >> x.hitCol[i];
682 }}
683 x.check_end_tag(is, "EMCHIT");
684 return is;
685}
686
687std::ostream& operator<<(std::ostream &os,const EMCHIT& x)
688{
689 os << std::endl << "{ EMCHIT" << std::endl;
690 if(x.initialized()) {
691 os << " " << x.nHit;
692 {for(int i = 0; i < x.nHit; i++) {
693 os << " " << x.hitCol[i];
694 }}
695 }
696 os << std::endl << "} EMCHIT" << std::endl;
697 return os;
698}
699
700std::istream& operator>>(std::istream& is, MucDigiType& x)
701{
702 is >> x.trackIndex;
703 is >> x.partNo;
704 is >> x.segNo;
705 is >> x.gapNo;
706 is >> x.stripNo;
707 return is;
708}
709
710std::ostream& operator<<(std::ostream &os,const MucDigiType& x)
711{
712 os << " " << x.trackIndex;
713 os << " " << x.partNo;
714 os << " " << x.segNo;
715 os << " " << x.gapNo;
716 os << " " << x.stripNo;
717 os << std::endl;
718 return os;
719}
720
721
722std::istream& operator>>(std::istream& is, MUCDIGI& x)
723{
724 x.check_start_tag(is,"MUCDIGI");
725 if(!x.initialized()) return is;
726 is >> x.nDigi;
727 x.digiCol.resize(x.nDigi);
728 {for(int i = 0; i < x.nDigi; i++) {
729 is >> x.digiCol[i];
730 }}
731 x.check_end_tag(is, "MUCDIGI");
732 return is;
733}
734
735std::ostream& operator<<(std::ostream &os,const MUCDIGI& x)
736{
737 os << std::endl << "{ MUCDIGI" << std::endl;
738 if(x.initialized()) {
739 os << " " << x.nDigi;
740 {for(int i = 0; i < x.nDigi; i++) {
741 os << " " << x.digiCol[i];
742 }}
743 }
744 os << std::endl << "} MUCDIGI" << std::endl;
745 return os;
746}
747
748std::istream& operator>>(std::istream& is, MucHitType& x)
749{
750 return is;
751}
752
753std::ostream& operator<<(std::ostream &os,const MucHitType& x)
754{
755 os << std::endl;
756 return os;
757}
758
759
760std::istream& operator>>(std::istream& is, MUCHIT& x)
761{
762 x.check_start_tag(is,"MUCHIT");
763 if(!x.initialized()) return is;
764 is >> x.nHit;
765 x.hitCol.resize(x.nHit);
766 {for(int i = 0; i < x.nHit; i++) {
767 is >> x.hitCol[i];
768 }}
769 x.check_end_tag(is, "MUCHIT");
770 return is;
771}
772
773std::ostream& operator<<(std::ostream &os,const MUCHIT& x)
774{
775 os << std::endl << "{ MUCHIT" << std::endl;
776 if(x.initialized()) {
777 os << " " << x.nHit;
778 {for(int i = 0; i < x.nHit; i++) {
779 os << " " << x.hitCol[i];
780 }}
781 }
782 os << std::endl << "} MUCHIT" << std::endl;
783 return os;
784}
785
786std::istream& operator>>(std::istream& is, EVENT& x)
787{
788 x.check_start_tag(is,"EVENT");
789 if(!x.initialized()) return is;
790
791 try {
792 is >> x.header;
793 } catch(AsciiDumpException& ) {
794 std::cerr << "Got AsciiDumpException eror while reading header block !!!" << std::endl;
795 }
796
797 try {
798 is >> x.decayMode;
799 } catch(AsciiDumpException& ) {
800 std::cerr << "Got AsciiDumpException eror while reading decay mode block !!!" << std::endl;
801 }
802
803 try {
804 is >> x.trackTruth;
805 } catch(AsciiDumpException& ) {
806 std::cerr << "Got AsciiDumpException eror while reading track truth block !!!" << std::endl;
807 }
808
809 try {
810 is >> x.vertexTruth;
811 } catch (AsciiDumpException& ) {
812 std::cerr << "Got AsciiDumpException eror while reading vertex truth block !!!" << std::endl;
813 }
814
815 try {
816 is >> x.mdcTruth;
817 } catch (AsciiDumpException& ) {
818 std::cerr << "Got AsciiDumpException eror while reading mdc truth block !!!" << std::endl;
819 }
820
821 try {
822 is >> x.mdcDigi;
823 } catch (AsciiDumpException& ) {
824 std::cerr << "Got AsciiDumpException eror while reading mdc digi block !!!" << std::endl;
825 }
826
827 try {
828 is >> x.tofTruth;
829 } catch (AsciiDumpException& ) {
830 std::cerr << "Got AsciiDumpException eror while reading tof truth block !!!" << std::endl;
831 }
832
833 try {
834 is >> x.tofDigi;
835 } catch (AsciiDumpException& ) {
836 std::cerr << "Got AsciiDumpException eror while reading tof digi block !!!" << std::endl;
837 }
838
839 try {
840 is >> x.emcTruth;
841 } catch (AsciiDumpException& ) {
842 std::cerr << "Got AsciiDumpException eror while reading emc truth block !!!" << std::endl;
843 }
844
845 try {
846 is >> x.emcDigi;
847 } catch (AsciiDumpException& ) {
848 std::cerr << "Got AsciiDumpException eror while reading emc digi block !!!" << std::endl;
849 }
850
851 try {
852 is >> x.mucTruth;
853 } catch (AsciiDumpException& ) {
854 std::cerr << "Got AsciiDumpException eror while reading muc truth block !!!" << std::endl;
855 }
856
857 try {
858 is >> x.mucDigi;
859 } catch (AsciiDumpException& ) {
860 std::cerr << "Got AsciiDumpException eror while reading muc digi block !!!" << std::endl;
861 }
862 x.check_end_tag(is, "EVENT");
863 return is;
864}
865
866std::ostream& operator<<(std::ostream &os,const EVENT& x)
867{
868 os << std::endl << "{ EVENT" << std::endl;
869 if(x.initialized()) {
870 os << " " << x.header;
871 os << " " << x.decayMode;
872 os << " " << x.trackTruth;
873 os << " " << x.vertexTruth;
874 os << " " << x.mdcTruth;
875 os << " " << x.mdcDigi;
876 os << " " << x.tofTruth;
877 os << " " << x.tofDigi;
878 os << " " << x.emcTruth;
879 os << " " << x.emcDigi;
880 os << " " << x.mucTruth;
881 os << " " << x.mucDigi;
882 }
883 os << std::endl << "} EVENT" << std::endl;
884 return os;
885}
886
887std::istream& operator>>(std::istream& is, HitEVENT& x)
888{
889 x.check_start_tag(is,"HITEVENT");
890 if(!x.initialized()) return is;
891
892 try {
893 is >> x.header;
894 } catch(AsciiDumpException& ) {
895 std::cerr << "Got AsciiDumpException eror while reading header block !!!" << std::endl;
896 }
897
898 try {
899 is >> x.decayMode;
900 } catch(AsciiDumpException& ) {
901 std::cerr << "Got AsciiDumpException eror while reading decay mode block !!!" << std::endl;
902 }
903
904 try {
905 is >> x.trackTruth;
906 } catch(AsciiDumpException& ) {
907 std::cerr << "Got AsciiDumpException eror while reading track truth block !!!" << std::endl;
908 }
909
910 try {
911 is >> x.vertexTruth;
912 } catch (AsciiDumpException& ) {
913 std::cerr << "Got AsciiDumpException eror while reading vertex truth block !!!" << std::endl;
914 }
915
916 try {
917 is >> x.mdcTruth;
918 } catch (AsciiDumpException& ) {
919 std::cerr << "Got AsciiDumpException eror while reading mdc truth block !!!" << std::endl;
920 }
921
922 try {
923 is >> x.mdcHit;
924 } catch (AsciiDumpException& ) {
925 std::cerr << "Got AsciiDumpException eror while reading mdc hit block !!!" << std::endl;
926 }
927
928 try {
929 is >> x.tofTruth;
930 } catch (AsciiDumpException& ) {
931 std::cerr << "Got AsciiDumpException eror while reading tof truth block !!!" << std::endl;
932 }
933
934 try {
935 is >> x.tofHit;
936 } catch (AsciiDumpException& ) {
937 std::cerr << "Got AsciiDumpException eror while reading tof hiti block !!!" << std::endl;
938 }
939
940 try {
941 is >> x.emcTruth;
942 } catch (AsciiDumpException& ) {
943 std::cerr << "Got AsciiDumpException eror while reading emc truth block !!!" << std::endl;
944 }
945
946 try {
947 is >> x.emcHit;
948 } catch (AsciiDumpException& ) {
949 std::cerr << "Got AsciiDumpException eror while reading emc hit block !!!" << std::endl;
950 }
951
952 try {
953 is >> x.mucTruth;
954 } catch (AsciiDumpException& ) {
955 std::cerr << "Got AsciiDumpException eror while reading muc truth block !!!" << std::endl;
956 }
957
958 try {
959 is >> x.mucHit;
960 } catch (AsciiDumpException& ) {
961 std::cerr << "Got AsciiDumpException eror while reading muc hit block !!!" << std::endl;
962 }
963 x.check_end_tag(is, "HITEVENT");
964 return is;
965}
966
967std::ostream& operator<<(std::ostream &os,const HitEVENT& x)
968{
969 os << std::endl << "{ HITEVENT" << std::endl;
970 if(x.initialized()) {
971 os << " " << x.header;
972 os << " " << x.decayMode;
973 os << " " << x.trackTruth;
974 os << " " << x.vertexTruth;
975 os << " " << x.mdcTruth;
976 os << " " << x.mdcHit;
977 os << " " << x.tofTruth;
978 os << " " << x.tofHit;
979 os << " " << x.emcTruth;
980 os << " " << x.emcHit;
981 os << " " << x.mucTruth;
982 os << " " << x.mucHit;
983 }
984 os << std::endl << "} HITEVENT" << std::endl;
985 return os;
986}
987
std::istream & operator>>(std::istream &is, FRMTVERSION &x)
Definition: AsciiData.cc:6
std::ostream & operator<<(std::ostream &os, const FRMTVERSION &x)
Definition: AsciiData.cc:16
Double_t x[10]