CGEM BOSS 6.6.5.f
BESIII Offline Software System
Loading...
Searching...
No Matches
Reconstruction/MucRecAlg/MucRecAlg-00-03-08/MucRecAlg/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"
17#include "MucRecEvent/RecMucTrack.h"
18#include "MucRecEvent/MucRecHitContainer.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
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 std::string m_filter_filename;
60 struct FilterEvent {
61 std::string bossver;
62 int runid;
63 int eventid;
64 };
65 std::vector<FilterEvent> m_filter_event;
66 MucRecHitContainer *aMucRecHitContainer;
67
68 NTuple::Tuple* m_tuple;
69 NTuple::Item<double> m_part;
70 NTuple::Item<double> m_seg;
71 NTuple::Item<double> m_gap;
72 NTuple::Item<double> m_strip;
73 NTuple::Item<double> m_diff;
74 NTuple::Item<double> m_dist;
75
76 NTuple::Item<double> m_run;
77 NTuple::Item<double> m_event;
78 NTuple::Item<double> m_ngapwithhits;
79 NTuple::Item<double> m_nhit;
80 NTuple::Item<double> m_maxhit;
81 NTuple::Item<double> m_multihit;
82 NTuple::Item<double> m_angle_cosmic;
83 NTuple::Item<double> m_angle_updown;
84 NTuple::Item<double> m_px;
85 NTuple::Item<double> m_py;
86 NTuple::Item<double> m_pz;
87 NTuple::Item<double> m_theta;
88 NTuple::Item<double> m_phi;
89 NTuple::Item<double> m_theta_pipe;
90 NTuple::Item<double> m_phi_pipe;
91 NTuple::Item<double> m_px_mc;
92 NTuple::Item<double> m_py_mc;
93 NTuple::Item<double> m_pz_mc;
94 NTuple::Item<double> m_theta_mc;
95 NTuple::Item<double> m_phi_mc;
96 NTuple::Item<double> m_theta_mc_pipe;
97 NTuple::Item<double> m_phi_mc_pipe;
98 NTuple::Item<double> m_emcUp;
99 NTuple::Item<double> m_emcDown;
100 NTuple::Item<double> m_mucUp;
101 NTuple::Item<double> m_mucDown;
102 NTuple::Item<double> m_projx;
103 NTuple::Item<double> m_projz;
104
105};
106
107#endif /* MUC_REC_ROAD_FINDER_H */
StatusCode execute()
MucRecRoadFinder(const std::string &name, ISvcLocator *pSvcLocator)
StatusCode initialize()
StatusCode finalize()
void TrackFinding(RecMucTrack *aTrack)