BOSS 6.6.4.p03
BESIII Offline Software System
Loading...
Searching...
No Matches
MucRecRoadFinder.h
Go to the documentation of this file.
1//$id$
2//
3//$log$
4
5/*
6 * 2003/09/06 Zhengyun You Peking University
7 *
8 * 2005/02/27 Zhengyun You Peking University
9 * transplanted to Gaudi framework
10 */
11
12#ifndef MUC_REC_ROAD_FINDER_H
13#define MUC_REC_ROAD_FINDER_H
14
15#include "GaudiKernel/Algorithm.h"
16#include "GaudiKernel/NTuple.h"
19#include <string>
20/**
21 * Reconstruction of Muon Chamber tracks by combining two 2DRoads
22 * to form a 3DRoad.
23 *
24 * @author Zhengyun You \URL{mailto:[email protected]}
25 *
26 */
27
28class MucRecRoadFinder : public Algorithm
29{
30 public:
31 MucRecRoadFinder(const std::string &name, ISvcLocator* pSvcLocator);
33
34 StatusCode initialize();
35 StatusCode execute();
36 StatusCode finalize();
37
38 void TrackFinding(RecMucTrack *aTrack);
39
40 private:
41 int m_NEvent;
42 int m_NEventWithHit;
43 int m_NEventReco;
44 int m_NHitsLostTotal;
45 int m_NHitsTotal;
46 std::vector<int> m_NHitsLost;
47 std::vector<int> m_NHitsLostInGap;
48
49 int m_fittingMethod;
50 std::string m_configFile;
51 int m_mccosmic;
52 int m_NtOutput; //switch of output Muc.root
53 int m_onlyseedfit; //only fit those layers being seed
54 int m_maxHitsRec; //too many hits, do not deal with;
55 int m_united; // judge if that is united or not
56 int m_seedtype; // 0: find seed gaps event by event, 1: fix seed gaps
57 bool m_MsOutput; // for debug cout or not
58
59 MucRecHitContainer *aMucRecHitContainer;
60
61 NTuple::Tuple* m_tuple;
62 NTuple::Item<double> m_part;
63 NTuple::Item<double> m_seg;
64 NTuple::Item<double> m_gap;
65 NTuple::Item<double> m_strip;
66 NTuple::Item<double> m_diff;
67 NTuple::Item<double> m_dist;
68
69 NTuple::Item<double> m_run;
70 NTuple::Item<double> m_event;
71 NTuple::Item<double> m_ngapwithhits;
72 NTuple::Item<double> m_nhit;
73 NTuple::Item<double> m_maxhit;
74 NTuple::Item<double> m_multihit;
75 NTuple::Item<double> m_angle_cosmic;
76 NTuple::Item<double> m_angle_updown;
77 NTuple::Item<double> m_px;
78 NTuple::Item<double> m_py;
79 NTuple::Item<double> m_pz;
80 NTuple::Item<double> m_theta;
81 NTuple::Item<double> m_phi;
82 NTuple::Item<double> m_theta_pipe;
83 NTuple::Item<double> m_phi_pipe;
84 NTuple::Item<double> m_px_mc;
85 NTuple::Item<double> m_py_mc;
86 NTuple::Item<double> m_pz_mc;
87 NTuple::Item<double> m_theta_mc;
88 NTuple::Item<double> m_phi_mc;
89 NTuple::Item<double> m_theta_mc_pipe;
90 NTuple::Item<double> m_phi_mc_pipe;
91 NTuple::Item<double> m_emcUp;
92 NTuple::Item<double> m_emcDown;
93 NTuple::Item<double> m_mucUp;
94 NTuple::Item<double> m_mucDown;
95 NTuple::Item<double> m_projx;
96 NTuple::Item<double> m_projz;
97
98};
99
100#endif /* MUC_REC_ROAD_FINDER_H */
StatusCode initialize()
void TrackFinding(RecMucTrack *aTrack)