9#include "GaudiKernel/Algorithm.h"
10#include "GaudiKernel/ISvcLocator.h"
11#include "AIDA/IHistogram1D.h"
12#include "AIDA/IHistogram2D.h"
13#include "GaudiKernel/NTuple.h"
14#include "DedxCorrecSvc/DedxCorrecSvc.h"
15#include "DedxCurSvc/DedxCurSvc.h"
16#include "MdcGeomSvc/MdcGeomSvc.h"
18#include "MdcDedxAlg/MdcDedxTrk.h"
19#include "MdcDedxAlg/MdcDedxCorrection.h"
40 const std::vector<MdcDedxTrk>&
tracks(
void)
const;
43 void mdctrackrec(RecMdcTrackCol::iterator trk,
Identifier mdcid,
double tes,
int RunNO,
int eventNO,
int runFlag, MsgStream log);
44 void kaltrackrec(RecMdcKalTrackCol::iterator trk,
Identifier mdcid,
double tes,
int RunNO,
int eventNO,
int runFlag, MsgStream log);
58 std::string m_rootfile;
64 std::vector<MdcDedxTrk> ex_trks;
65 std::vector<int> m_trkalgs;
81 NTuple::Item<float> m_phtm;
89 NTuple::Item<float> m_dEdx_meas;
91 NTuple::Item<float> m_ptrk;
92 NTuple::Item<float> m_costheta;
93 NTuple::Item<float> m_sintheta;
94 NTuple::Item<float> m_charge;
95 NTuple::Item<float> m_runNO;
96 NTuple::Item<float> m_evtNO;
97 NTuple::Item<float> m_t0;
98 NTuple::Item<float> m_trackId;
99 NTuple::Item<float> m_poca_x;
100 NTuple::Item<float> m_poca_y;
101 NTuple::Item<float> m_poca_z;
102 NTuple::Item<float> m_recalg;
104 NTuple::Item<float> m_nhit;
105 NTuple::Item<float> m_usedhit;
106 NTuple::Item<long> m_nphlisthit;
107 NTuple::Array<double> m_dEdx_hit;
109 NTuple::Array<float> m_probpid;
110 NTuple::Array<float> m_expectid;
111 NTuple::Array<float> m_sigmaid;
112 NTuple::Item<float> m_parttype;
113 NTuple::Item<float> m_prob;
114 NTuple::Item<float> m_expect;
115 NTuple::Item<float> m_sigma;
116 NTuple::Item<float> m_chidedx;
117 NTuple::Item<float> m_chidedxe;
118 NTuple::Item<float> m_chidedxmu;
119 NTuple::Item<float> m_chidedxpi;
120 NTuple::Item<float> m_chidedxk;
121 NTuple::Item<float> m_chidedxp;
124 NTuple::Tuple* m_nt2;
125 NTuple::Item<double> m_charge1;
126 NTuple::Item<double> m_phraw;
127 NTuple::Item<double> m_exraw;
128 NTuple::Item<float> m_wire;
129 NTuple::Item<float> m_localwid;
130 NTuple::Item<double> m_runNO1;
131 NTuple::Item<float> m_nhit_hit;
132 NTuple::Item<float> m_doca_in;
133 NTuple::Item<float> m_doca_ex;
134 NTuple::Item<float> m_driftdist;
135 NTuple::Item<float> m_eangle;
136 NTuple::Item<float> m_costheta1;
137 NTuple::Item<float> m_pathL;
138 NTuple::Item<float> m_layer;
139 NTuple::Item<float> m_ptrk1;
140 NTuple::Item<float> m_ptrk_hit;
141 NTuple::Item<float> m_t01;
142 NTuple::Item<float> m_tdc_raw;
143 NTuple::Item<float> m_driftT;
144 NTuple::Item<float> m_trackId1;
ObjectVector< RecMdcDedxHit > RecMdcDedxHitCol
SmartRefVector< RecMdcDedxHit > DedxHitRefVec
ObjectVector< RecMdcDedx > RecMdcDedxCol
void mdctrackrec(RecMdcTrackCol::iterator trk, Identifier mdcid, double tes, int RunNO, int eventNO, int runFlag, MsgStream log)
void switchtomdctrack(int trkid, Identifier mdcid, double tes, int RunNO, int eventNO, int runFlag, MsgStream log)
const std::vector< MdcDedxTrk > & tracks(void) const
MdcDedxRecon(const std::string &name, ISvcLocator *pSvcLocator)
void kaltrackrec(RecMdcKalTrackCol::iterator trk, Identifier mdcid, double tes, int RunNO, int eventNO, int runFlag, MsgStream log)