19 {
20
21 TrkReco* _trkreco = TrkReco::getTrkReco();
22
23 _trkreco->init( 0 );
24
26
27
28 delete fBfield;
29
31 Hep3Vector fmomentum( 1, 1, 1 );
32 Helix fHelix( fPivot, fmomentum, 1.0 );
33
34
35
37
40
41
43
44 if ( !is.good() )
45 {
46 std::cout << " The input file is wrong! " << std::endl;
47 return 0;
48 }
49
50
52 vector<EVENT> evt_list;
53
54
55 for (
int ix = 0;
ix < 100;
ix++ )
56 {
57
58
60
61 try
63 {
64 std::cerr <<
"wrong tag, got " << ex.
got() <<
" expected: " << ex.
expected()
65 << std::endl;
66 return 0;
68 { std::cerr << "AsciiDumpException was caught!" << std::endl; }
69
70
71 KINE mckn = evt.kine;
72 kine mctrk = mckn.kineList[0];
73 cout << "==============New Event, MC info ================" << endl;
74 cout << "nTrk:" << mckn.nKine << " idPart" << mctrk.idPart << " chrg:" << mctrk.q
75 << " pt:" << mctrk.pt << " theta0:" << mctrk.theta0 << " phi0:" << mctrk.phi0
76 << endl;
77
78
79
80
82
84
86 MdcRecGeo* fGeom = MdcRecGeo::getMdcRecGeo();
87
88
89 for (
unsigned i = 0; i < mdigi.
nDigi; i++ )
90 {
91
92
93
94
96 mhit.
geo = fGeom->Wire( mdigi.digi[i].layerNo - 1, mdigi.digi[i].cellNo - 1 );
97 mhit.
tdc = mdigi.digi[i].driftTime;
98 mhit.
adc = mdigi.digi[i].energyDeposit;
99 mhit.
ddl = mhit.
tdc * 40 / 10000;
108 mhit.
stat = mhit.
stat |= 1073741824;
109
110
111
113 }
114
115 _trkreco->event();
116
117 std::cout <<
"Event No = " << evt.
header.
eventNo << std::endl;
118 evt_list.push_back( evt );
119 }
120
121
123 for ( unsigned i = 0; i < nt; i++ )
124 {
125
126 }
128
129 is.close();
130
131
132
133
134
135
136
137
138
139
140 _trkreco->term();
141
142 return 1;
143}
HepGeom::Point3D< double > HepPoint3D
std::string expected() const
static Bfield * getBfield(int)
returns Bfield object.
static vector< MdcRec_wirhit > * getMdcRecWirhitCol(void)
A class to handle update timing of static objects of tracking.
void dump(const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
dumps debug information.
virtual void update(void)
updates an object.