ATLAS Offline Software
TBPhaseRec.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TBREC_TBPHASEREC
6 #define TBREC_TBPHASEREC
7 
17 
18 #include <string>
19 #include <vector>
20 
21 class TBPhaseRec : public AthAlgorithm
22 {
23  public:
24  TBPhaseRec(const std::string& name, ISvcLocator* pSvcLocator);
25  virtual ~TBPhaseRec();
26 
27  virtual StatusCode initialize() override;
28  virtual StatusCode execute() override;
29  virtual StatusCode finalize() override;
30 
32 
33  static const int unknown = -99999 ;
34 
35  private:
37  // Properties //
39  std::vector<std::string> m_tdcNames ; // the TDC(s) with phase information
40  std::vector<float> m_tdcToTime; // per TDC
41  std::vector<float> m_tdcwac; // wrap around constants
42  std::vector<float> m_tdcMin; // used only for choosing the best TDC if necessary
43  float m_delta; // ttc clock period
44  int m_timeBins; // number of time bins in a ttc period
45  std::string m_TBPhaseKey; // key of the TBPhase object that TBPhaseRec tries to create
46  bool m_neverReturnFailure; // controls when StatusCode::FAILURE can be issued in execute()
47 
48  std::string m_calib_filename;
49  unsigned int m_runnumber;
50 
51  float m_guardValue; // guard region cut
52 
54  // member data and functions //
56 
57  int m_nTDC ;
58  std::vector<int> m_tdcRaw;
59  std::vector<float> m_phaseReco;
60  float computePhase(int tdcIndex);
61 
62 };
63 
64 #endif
TBPhaseRec::m_tdcMin
std::vector< float > m_tdcMin
Definition: TBPhaseRec.h:42
TBPhaseRec::m_timeBins
int m_timeBins
Definition: TBPhaseRec.h:44
TBPhaseRec::m_delta
float m_delta
Definition: TBPhaseRec.h:43
TBPhaseRec::m_guardValue
float m_guardValue
Definition: TBPhaseRec.h:51
TBPhaseRec::m_tdcRaw
std::vector< int > m_tdcRaw
Definition: TBPhaseRec.h:58
TBPhaseRec::getnewcalib
StatusCode getnewcalib()
Definition: TBPhaseRec.cxx:363
TBPhaseRec::m_tdcwac
std::vector< float > m_tdcwac
Definition: TBPhaseRec.h:41
TBPhaseRec::m_calib_filename
std::string m_calib_filename
Definition: TBPhaseRec.h:48
TBPhaseRec::m_TBPhaseKey
std::string m_TBPhaseKey
Definition: TBPhaseRec.h:45
TBPhaseRec::TBPhaseRec
TBPhaseRec(const std::string &name, ISvcLocator *pSvcLocator)
Definition: TBPhaseRec.cxx:24
TBPhaseRec::finalize
virtual StatusCode finalize() override
Definition: TBPhaseRec.cxx:345
TBPhaseRec::unknown
static const int unknown
Definition: TBPhaseRec.h:33
AthAlgorithm.h
TBPhaseRec::~TBPhaseRec
virtual ~TBPhaseRec()
Definition: TBPhaseRec.cxx:52
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TBPhaseRec::m_runnumber
unsigned int m_runnumber
Definition: TBPhaseRec.h:49
TBPhaseRec::m_nTDC
int m_nTDC
Definition: TBPhaseRec.h:57
TBPhaseRec::m_neverReturnFailure
bool m_neverReturnFailure
Definition: TBPhaseRec.h:46
TBPhaseRec
reconstruction of a suitable event phase
Definition: TBPhaseRec.h:22
AthAlgorithm
Definition: AthAlgorithm.h:47
TBPhaseRec::m_tdcNames
std::vector< std::string > m_tdcNames
Definition: TBPhaseRec.h:39
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TBPhaseRec::m_tdcToTime
std::vector< float > m_tdcToTime
Definition: TBPhaseRec.h:40
TBPhaseRec::m_phaseReco
std::vector< float > m_phaseReco
Definition: TBPhaseRec.h:59
TBPhaseRec::computePhase
float computePhase(int tdcIndex)
Definition: TBPhaseRec.cxx:349
TBPhaseRec::initialize
virtual StatusCode initialize() override
Definition: TBPhaseRec.cxx:56
TBPhaseRec::execute
virtual StatusCode execute() override
Definition: TBPhaseRec.cxx:130