CGEM BOSS
6.6.5.g
BESIII Offline Software System
Loading...
Searching...
No Matches
MdcTrkRecon.h
Go to the documentation of this file.
1
#ifndef MDCTRKRECON_H
2
#define MDCTRKRECON_H
3
4
#include "GaudiKernel/Algorithm.h"
5
#include "
MdcTrkRecon/MdcFlagHold.h
"
6
#include "GaudiKernel/NTuple.h"
7
#include "
MdcRecEvent/RecMdcTrack.h
"
8
#include <string>
9
#include "
MagneticField/IMagneticFieldSvc.h
"
10
#include "
RawDataProviderSvc/RawDataProviderSvc.h
"
11
#include "
MdcPrintSvc/MdcPrintSvc.h
"
12
13
class
MdcDetector
;
14
class
MdcSegData
;
15
class
MdcSegList
;
16
class
MdcTrackListBase
;
17
class
MdcSegFinder
;
18
class
BField
;
19
class
IHistogram1D;
20
class
McParticle
;
21
#ifdef MDCPATREC_TIMETEST
22
class
IBesTimerSvc
;
23
class
BesTimer
;
24
#endif
25
26
#ifdef UseCalib
27
class
MdcCalibFunSvc
;
28
#endif
29
30
31
class
MdcTrkRecon
:
public
Algorithm {
32
public
:
33
MdcTrkRecon
(
const
std::string& name, ISvcLocator* pSvcLocator);
34
~MdcTrkRecon
();
35
StatusCode
initialize
();
36
StatusCode
execute
();
37
StatusCode
finalize
();
38
StatusCode
beginRun
();
39
40
protected
:
41
bool
ignoringUsedHits
()
const
{
return
m_onlyUnusedHits;}
42
bool
poisoningHits
()
const
{
return
m_poisonHits;}
43
void
fillSegList
();
44
void
fillTrackList
();
45
void
dumpDigi
();
46
void
dumpTdsTrack
(
RecMdcTrackCol
* trackList);
47
void
fillMcTruth
();
48
void
fillEvent
();
49
StatusCode
bookNTuple
();
50
private
:
51
int
t_iExecute;
52
int
m_fittingMethod;
53
int
m_allHit;
//if all hit (active and inactive) include in the number of nHit
54
std::string m_configFile;
55
std::string m_paramFile;
56
std::string m_pdtFile;
57
const
MdcDetector
* _gm;
58
MdcFlagHold
m_flags;
// run-time-settable flags and params
59
std::auto_ptr<MdcSegData> m_hitData;
60
std::auto_ptr<MdcSegList> m_segs;
61
std::auto_ptr<MdcTrackListBase> m_tracks;
62
std::auto_ptr<MdcSegFinder> m_segFinder;
63
RawDataProviderSvc
* m_rawDataProviderSvc;
64
MdcPrintSvc
* m_mdcPrintSvc;
65
66
BField
*m_bfield;
67
68
std::vector<int> m_selEvtNo;
69
bool
m_onlyUnusedHits;
70
bool
m_poisonHits;
71
bool
m_doLineFit;
72
bool
m_tryBunch;
73
bool
m_recForEsTime;
74
std::vector<float> m_helixHitsSigma;
75
76
uint32_t m_getDigiFlag;
77
int
m_maxMdcDigi;
78
bool
m_keepBadTdc;
79
bool
m_dropHot;
80
bool
m_keepUnmatch;
81
int
m_minMdcDigi;
82
83
bool
m_fieldCosmic;
84
double
m_d0Cut;
85
double
m_z0Cut;
86
double
m_dropTrkPt;
87
bool
m_mcHist;
88
int
m_hist;
89
int
m_debug;
90
bool
m_doSagFlag;
91
bool
m_arbitrateHits;
92
bool
m_combineTracking;
93
94
double
mcDrift[43][288];
//FIXME assume max 43 track/event, 288 hit/track
95
double
mcLayer[43][288];
96
double
mcWire[43][288];
97
double
mcLR[43][288];
98
double
mcX[43][288];
99
double
mcY[43][288];
100
double
mcZ[43][288];
101
double
hitOnSeg[43];
102
double
hitOnMcTk[43];
103
int
hitPoisoned[43][288];
104
int
hitInSegList[43][288];
105
int
t_nHitInTk[100];
106
int
t_t0Stat;
107
double
t_t0;
108
double
t_t0Truth;
109
double
t_mcTkNum;
110
int
t_nDigi;
111
int
t_eventNo;
112
int
t_nRecTk;
113
int
t_iExexute;
114
int
isPrimaryOfMcTk[100];
115
int
pdgOfMcTk[100];
116
bool
m_noInner;
117
#ifdef MDCPATREC_TIMETEST
118
IBesTimerSvc
* m_timersvc;
119
BesTimer
* m_timer[2];
120
double
ti_nHit;
121
double
ti_p;
122
double
ti_pt;
123
#endif
124
IMagneticFieldSvc
* m_pIMF;
125
};
126
127
#endif
IMagneticFieldSvc.h
MdcFlagHold.h
MdcPrintSvc.h
RawDataProviderSvc.h
RecMdcTrack.h
RecMdcTrackCol
ObjectVector< RecMdcTrack > RecMdcTrackCol
Definition:
RecMdcTrack.h:102
BField
Definition:
Reconstruction/MdcPatRec/BField/BField-00-01-02/BField/BField.h:33
BesTimer
Definition:
BesTimer.h:13
IBesTimerSvc
Definition:
IBesTimerSvc.h:16
IMagneticFieldSvc
Definition:
IMagneticFieldSvc.h:29
McParticle
The Monte Carlo particle kinematics information.
MdcCalibFunSvc
Definition:
MdcCalibFunSvc.h:22
MdcDetector
Definition:
MdcDetector.h:20
MdcFlagHold
Definition:
MdcFlagHold.h:16
MdcPrintSvc
Definition:
MdcPrintSvc.h:21
MdcSegData
Definition:
MdcSegData.h:27
MdcSegFinder
Definition:
MdcSegFinder.h:36
MdcSegList
Definition:
MdcSegList.h:20
MdcTrackListBase
Definition:
MdcTrackListBase.h:33
MdcTrkRecon
Definition:
MdcTrkRecon.h:31
MdcTrkRecon::bookNTuple
StatusCode bookNTuple()
Definition:
MdcTrkRecon.cxx:527
MdcTrkRecon::finalize
StatusCode finalize()
Definition:
MdcTrkRecon.cxx:516
MdcTrkRecon::~MdcTrkRecon
~MdcTrkRecon()
Definition:
MdcTrkRecon.cxx:114
MdcTrkRecon::dumpTdsTrack
void dumpTdsTrack(RecMdcTrackCol *trackList)
Definition:
MdcTrkRecon.cxx:1076
MdcTrkRecon::fillEvent
void fillEvent()
Definition:
MdcTrkRecon.cxx:1255
MdcTrkRecon::execute
StatusCode execute()
Definition:
MdcTrkRecon.cxx:217
MdcTrkRecon::fillTrackList
void fillTrackList()
Definition:
MdcTrkRecon.cxx:1128
MdcTrkRecon::initialize
StatusCode initialize()
Definition:
MdcTrkRecon.cxx:139
MdcTrkRecon::ignoringUsedHits
bool ignoringUsedHits() const
Definition:
MdcTrkRecon.h:41
MdcTrkRecon::beginRun
StatusCode beginRun()
Definition:
MdcTrkRecon.cxx:123
MdcTrkRecon::fillSegList
void fillSegList()
Definition:
MdcTrkRecon.cxx:1034
MdcTrkRecon::poisoningHits
bool poisoningHits() const
Definition:
MdcTrkRecon.h:42
MdcTrkRecon::dumpDigi
void dumpDigi()
Definition:
MdcTrkRecon.cxx:1298
MdcTrkRecon::fillMcTruth
void fillMcTruth()
Definition:
MdcTrkRecon.cxx:882
RawDataProviderSvc
Definition:
RawDataProviderSvc.h:17
source
Reconstruction
MdcPatRec
MdcTrkRecon
MdcTrkRecon-00-03-49
MdcTrkRecon
MdcTrkRecon.h
Generated by
1.9.6