BOSS 7.0.6
BESIII Offline Software System
Loading...
Searching...
No Matches
TofShower.h
Go to the documentation of this file.
1#ifndef TOFSHOWER_H
2#define TOFSHOWER_H
3
5#include "GaudiKernel/NTuple.h"
6#include "GaudiKernel/PropertyMgr.h"
7#include <vector>
8#include <string>
9
10using namespace std;
11class Identifier;
12class TofData;
13
14class TofShower {
15 public:
16 TofShower();
18 public:
19 // Get Neighbors of a scintillator
20 vector<Identifier> getNeighbors(const Identifier& id);
21 vector<Identifier> getNextNeighbors(const Identifier& id);
22
23
24 void energyCalib(vector<TofData*>& tofDataVec, RecTofTrackCol* recTofTrackCol);
25 void findSeed(vector<TofData*>& tofDataVec);
26 void findShower(vector<TofData*>& tofDataVec, RecTofTrackCol* recTofTrackCol,double);
27 void BookNtuple(NTuple::Tuple*& tuple, NTuple::Tuple*& tuple1, NTuple::Tuple*& tuple2);
28
29
30 public:
31 void readCalibPar();
32 double ecalib(const int nsci) const;
33 void setEcalib(const int nsci, const double ecalib);
34
35 double calib(const int n, const int m) const;
36 void setCalib(const int n, const int m, const double ecalib);
37
38 inline double calibConst() const { return m_calibConst; }
39 inline void setCalibConst(const double cal) { m_calibConst = cal; }
40
41 inline bool isData() const { return m_isData; }
42 inline void setIsData(const bool isData) { m_isData = isData; }
43
44 private:
45 vector<Identifier> m_seedVec;
46 double m_ecalib[176];
47 double m_calib[176][4];
48 double m_calibConst;
49 bool m_isData;
50
51 private:
52 PropertyMgr m_propMgr;
53 bool m_output;
54 NTuple::Tuple* m_tuple;
55 NTuple::Item<long> m_part;
56 NTuple::Item<long> m_layer;
57 NTuple::Item<long> m_im;
58 NTuple::Item<long> m_end;
59 NTuple::Item<double> m_zpos;
60 NTuple::Item<double> m_adc1;
61 NTuple::Item<double> m_adc2;
62 NTuple::Item<double> m_tdc1;
63 NTuple::Item<double> m_tdc2;
64 NTuple::Item<double> m_energy;
65
66 NTuple::Tuple* m_tuple1;
67 NTuple::Item<long> m_shower_part;
68 NTuple::Item<long> m_shower_layer;
69 NTuple::Item<long> m_shower_im;
70 NTuple::Item<double> m_shower_zpos;
71 NTuple::Item<double> m_shower_energy;
72
73 NTuple::Tuple* m_tuple2;
74 NTuple::Item<double> m_seed_dist;
75};
76#endif
std::string cal
Definition: CalibModel.cxx:41
ObjectVector< RecTofTrack > RecTofTrackCol
Definition: RecTofTrack.h:33
void setCalibConst(const double cal)
Definition: TofShower.h:39
double calib(const int n, const int m) const
Definition: TofShower.cxx:829
double ecalib(const int nsci) const
Definition: TofShower.cxx:813
void readCalibPar()
Definition: TofShower.cxx:790
void findSeed(vector< TofData * > &tofDataVec)
Definition: TofShower.cxx:434
void BookNtuple(NTuple::Tuple *&tuple, NTuple::Tuple *&tuple1, NTuple::Tuple *&tuple2)
Definition: TofShower.cxx:39
void setEcalib(const int nsci, const double ecalib)
Definition: TofShower.cxx:822
void setIsData(const bool isData)
Definition: TofShower.h:42
void energyCalib(vector< TofData * > &tofDataVec, RecTofTrackCol *recTofTrackCol)
Definition: TofShower.cxx:77
double calibConst() const
Definition: TofShower.h:38
vector< Identifier > getNextNeighbors(const Identifier &id)
Definition: TofShower.cxx:375
bool isData() const
Definition: TofShower.h:41
void setCalib(const int n, const int m, const double ecalib)
Definition: TofShower.cxx:838
vector< Identifier > getNeighbors(const Identifier &id)
Definition: TofShower.cxx:264
void findShower(vector< TofData * > &tofDataVec, RecTofTrackCol *recTofTrackCol, double)
Definition: TofShower.cxx:540
~TofShower()
Definition: TofShower.h:17