ATLAS Offline Software
CBNTAA_TBTPValidation.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_CBNTAA_TBTPVALIDATION_H
6 #define TBREC_CBNTAA_TBTPVALIDATION_H
7 
8 #include "GaudiKernel/NTuple.h"
9 #include "GaudiKernel/SmartDataPtr.h"
10 #include "CBNT_TBRecBase.h"
11 #include <fstream>
12 #include <string>
13 #include <vector>
14 
15 
22 {
23  public:
24  CBNTAA_TBTPValidation(const std::string & name, ISvcLocator * pSvcLocator);
25 
27 
28  //standart algorithm methods
29  virtual StatusCode CBNT_initialize();
30  virtual StatusCode CBNT_execute();
31  virtual StatusCode CBNT_finalize();
32 
33  private:
34 
35  bool m_neverReturnFailure; // controls when StatusCode::FAILURE can be issued in execute()
36 
37  // TBADCRawCont
38  std::vector<unsigned int> *m_adc;
39  std::vector< std::string > *m_tbDetectorName_TBADCRawCont;
40  std::vector< bool > *m_overflow_TBADCRawCont;
41  std::string m_containerKey1;
42  // TBTDCRawCont
43  std::vector<unsigned int> *m_tdc_raw;
44  std::vector<bool> *m_underThreshold_raw;
45  std::vector< std::string > *m_tbDetectorName_TBTDCRawCont;
46  std::vector< bool > *m_overflow_TBTDCRawCont;
47  std::string m_containerKey2;
48  // TBPhase
49  std::vector<float> *m_phase;
50  std::vector<short> *m_phaseind;
51  std::vector<float> *m_dTtoWAC;
52  std::string m_containerKey3;
53  // TBEventInfo
54  std::vector<int> *m_ev_number;
55  std::vector<int> *m_ev_clock;
56  std::vector<int> *m_ev_type;
57  std::vector<unsigned int> *m_run_num;
58  std::vector<float> *m_beam_moment;
59  std::vector<std::string> *m_beam_part;
60  std::vector<float> *m_cryoX;
61  std::vector<float> *m_cryoAngle;
62  std::vector<float> *m_tableY;
63  std::string m_containerKey4;
64  // TBBPCCont
65  typedef double signal_type_TBBPCCont;
66  std::vector< signal_type_TBBPCCont > *m_xPos,*m_yPos;
67  std::vector< signal_type_TBBPCCont > *m_xErr,*m_yErr;
68  std::vector< signal_type_TBBPCCont > *m_xPulse, *m_yPulse;
69  std::vector< short > *m_hitnumber;
70  std::vector< bool > *m_xPosOverflow, *m_yPosOverflow;
71  std::vector< bool > *m_xPulseOverflow, *m_yPulseOverflow;
72  std::vector< bool > *m_overflowSetFlag;
73  std::vector< std::string > *m_tbDetectorName_TBBPCCont;
74  std::vector< bool > *m_overflow_TBBPCCont;
75  std::string m_containerKey5;
76  // TBLArDigitContainer
77  std::vector<unsigned int> *m_channelID;
78  std::vector<unsigned char> *m_gain;
79  std::vector<unsigned short> *m_nSamples;
80  std::vector<unsigned short> *m_samples;
81  std::string m_containerKey6;
82  // TBScintillatorCont
83  std::vector< float > *m_signal_scint, *m_time_signal_scint;
85  std::vector< std::string > *m_tbDetectorName_TBScintillatorCont;
86  std::vector< bool > *m_overflow_TBScintillatorCont;
87  std::string m_containerKey7;
88  // TBTailCatcher
89  std::vector< double > *m_signals;
90  std::vector< float > *m_signal_tCatch, *m_time_signal_tCatch;
92  std::vector< std::string > *m_tbDetectorName_TBTailCatcher;
93  std::vector< bool > *m_overflow_TBTailCatcher;
94  std::string m_containerKey8;
95  // TBTDC
96  std::vector< int > *m_tdc_TBTDC;
97  std::vector< int > *m_tdcmin_TBTDC;
98  std::vector< float > *m_scale_TBTDC;
99  std::vector< int > *m_phase_TBTDC;
100  std::string m_containerKey9;
101  // TBTrack
102  std::vector< int > *m_hitNumberU, *m_hitNumberV;
103  std::vector<double > *m_residualu, *m_residualv;
104  std::vector<double > *m_chi2, *m_chi2u, *m_chi2v;
105  std::vector<double > *m_angle;
106  std::vector<double > *m_uslope,*m_vslope;
107  std::vector<double > *m_uintercept, *m_vintercept;
108  std::vector< double > *m_cryou,*m_cryov,*m_cryow;
109  std::string m_containerKey10;
110  // TBTriggerPatternUnit
111  std::vector< unsigned int > *m_triggerWord;
112  std::vector<bool> *m_triggers;
113  std::string m_containerKey11;
114  // TBMWPCCont
115  std::vector < std::vector<float> > *m_cPos;
116  std::vector < std::vector<float> > *m_cErr;
117  std::vector < bool > *m_isX;
118  std::vector < std::vector<float> > *m_clusterSize_c;
119  std::vector< std::string > *m_tbDetectorName_TBMWPCCont;
120  std::vector< bool > *m_overflow_TBMWPCCont;
121  std::string m_containerKey12;
122  // {vector of vector of unsigned} instead of {vector of vector of bool}
123  std::vector < std::vector<unsigned> > *m_cPosOverflow;
124 
125 
126  //Private function to build names for ntuple entries. Concatinates strings
127  //but omitts characters that are problematic for root like -+:*/
128  std::string add_name(const char* base, const std::string& extension);
129 
131 };
132 
133 #endif
base
std::string base
Definition: hcg.cxx:78
CBNTAA_TBTPValidation::m_overflow_TBMWPCCont
std::vector< bool > * m_overflow_TBMWPCCont
Definition: CBNTAA_TBTPValidation.h:120
CBNTAA_TBTPValidation::m_neverReturnFailure
bool m_neverReturnFailure
Definition: CBNTAA_TBTPValidation.h:35
CBNTAA_TBTPValidation::m_beam_moment
std::vector< float > * m_beam_moment
Definition: CBNTAA_TBTPValidation.h:58
CBNTAA_TBTPValidation::m_yPosOverflow
std::vector< bool > * m_yPosOverflow
Definition: CBNTAA_TBTPValidation.h:70
CBNTAA_TBTPValidation::m_yPulse
std::vector< signal_type_TBBPCCont > * m_yPulse
Definition: CBNTAA_TBTPValidation.h:68
CBNTAA_TBTPValidation::m_samples
std::vector< unsigned short > * m_samples
Definition: CBNTAA_TBTPValidation.h:80
CBNTAA_TBTPValidation::m_ev_number
std::vector< int > * m_ev_number
Definition: CBNTAA_TBTPValidation.h:54
CBNTAA_TBTPValidation::m_residualv
std::vector< double > * m_residualv
Definition: CBNTAA_TBTPValidation.h:103
CBNTAA_TBTPValidation::m_angle
std::vector< double > * m_angle
Definition: CBNTAA_TBTPValidation.h:105
CBNTAA_TBTPValidation::m_signals
std::vector< double > * m_signals
Definition: CBNTAA_TBTPValidation.h:89
CBNTAA_TBTPValidation::CBNT_initialize
virtual StatusCode CBNT_initialize()
Definition: CBNTAA_TBTPValidation.cxx:227
CBNTAA_TBTPValidation::m_tbDetectorName_TBScintillatorCont
std::vector< std::string > * m_tbDetectorName_TBScintillatorCont
Definition: CBNTAA_TBTPValidation.h:85
CBNTAA_TBTPValidation::m_overflow_TBTailCatcher
std::vector< bool > * m_overflow_TBTailCatcher
Definition: CBNTAA_TBTPValidation.h:93
CBNTAA_TBTPValidation::m_containerKey8
std::string m_containerKey8
Definition: CBNTAA_TBTPValidation.h:94
CBNTAA_TBTPValidation::CBNTAA_TBTPValidation
CBNTAA_TBTPValidation(const std::string &name, ISvcLocator *pSvcLocator)
Definition: CBNTAA_TBTPValidation.cxx:21
CBNTAA_TBTPValidation::m_uslope
std::vector< double > * m_uslope
Definition: CBNTAA_TBTPValidation.h:106
CBNTAA_TBTPValidation::m_cryoAngle
std::vector< float > * m_cryoAngle
Definition: CBNTAA_TBTPValidation.h:61
CBNT_TBRecBase.h
CBNTAA_TBTPValidation::m_chi2v
std::vector< double > * m_chi2v
Definition: CBNTAA_TBTPValidation.h:104
CBNTAA_TBTPValidation::m_hitNumberU
std::vector< int > * m_hitNumberU
Definition: CBNTAA_TBTPValidation.h:102
CBNTAA_TBTPValidation::m_vslope
std::vector< double > * m_vslope
Definition: CBNTAA_TBTPValidation.h:106
CBNTAA_TBTPValidation::m_yPulseOverflow
std::vector< bool > * m_yPulseOverflow
Definition: CBNTAA_TBTPValidation.h:71
CBNTAA_TBTPValidation::m_tbDetectorName_TBTDCRawCont
std::vector< std::string > * m_tbDetectorName_TBTDCRawCont
Definition: CBNTAA_TBTPValidation.h:45
CBNTAA_TBTPValidation::m_beam_part
std::vector< std::string > * m_beam_part
Definition: CBNTAA_TBTPValidation.h:59
CBNTAA_TBTPValidation::m_containerKey10
std::string m_containerKey10
Definition: CBNTAA_TBTPValidation.h:109
CBNTAA_TBTPValidation::m_containerKey2
std::string m_containerKey2
Definition: CBNTAA_TBTPValidation.h:47
CBNTAA_TBTPValidation::m_xPulseOverflow
std::vector< bool > * m_xPulseOverflow
Definition: CBNTAA_TBTPValidation.h:71
CBNTAA_TBTPValidation::m_phaseind
std::vector< short > * m_phaseind
Definition: CBNTAA_TBTPValidation.h:50
CBNTAA_TBTPValidation::m_time_overflow_scint
std::vector< bool > * m_time_overflow_scint
Definition: CBNTAA_TBTPValidation.h:84
CBNTAA_TBTPValidation::m_ev_type
std::vector< int > * m_ev_type
Definition: CBNTAA_TBTPValidation.h:56
CBNTAA_TBTPValidation::m_cryou
std::vector< double > * m_cryou
Definition: CBNTAA_TBTPValidation.h:108
CBNTAA_TBTPValidation::signal_type_TBBPCCont
double signal_type_TBBPCCont
Definition: CBNTAA_TBTPValidation.h:65
CBNTAA_TBTPValidation::m_xErr
std::vector< signal_type_TBBPCCont > * m_xErr
Definition: CBNTAA_TBTPValidation.h:67
CBNTAA_TBTPValidation::m_isX
std::vector< bool > * m_isX
Definition: CBNTAA_TBTPValidation.h:117
CBNTAA_TBTPValidation::m_containerKey5
std::string m_containerKey5
Definition: CBNTAA_TBTPValidation.h:75
CBNTAA_TBTPValidation::m_containerKey3
std::string m_containerKey3
Definition: CBNTAA_TBTPValidation.h:52
CBNTAA_TBTPValidation::m_adc
std::vector< unsigned int > * m_adc
Definition: CBNTAA_TBTPValidation.h:38
CBNTAA_TBTPValidation::m_signal_tCatch
std::vector< float > * m_signal_tCatch
Definition: CBNTAA_TBTPValidation.h:90
CBNTAA_TBTPValidation::m_underThreshold_raw
std::vector< bool > * m_underThreshold_raw
Definition: CBNTAA_TBTPValidation.h:44
CBNTAA_TBTPValidation::m_hitnumber
std::vector< short > * m_hitnumber
Definition: CBNTAA_TBTPValidation.h:69
CBNT_TBRecBase
Definition: CBNT_TBRecBase.h:21
CBNTAA_TBTPValidation::m_ev_clock
std::vector< int > * m_ev_clock
Definition: CBNTAA_TBTPValidation.h:55
CBNTAA_TBTPValidation::m_yErr
std::vector< signal_type_TBBPCCont > * m_yErr
Definition: CBNTAA_TBTPValidation.h:67
CBNTAA_TBTPValidation::m_uintercept
std::vector< double > * m_uintercept
Definition: CBNTAA_TBTPValidation.h:107
CBNTAA_TBTPValidation::m_xPos
std::vector< signal_type_TBBPCCont > * m_xPos
Definition: CBNTAA_TBTPValidation.h:66
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CBNTAA_TBTPValidation::m_run_num
std::vector< unsigned int > * m_run_num
Definition: CBNTAA_TBTPValidation.h:57
CBNTAA_TBTPValidation::m_triggerWord
std::vector< unsigned int > * m_triggerWord
Definition: CBNTAA_TBTPValidation.h:111
CBNTAA_TBTPValidation::m_signal_overflow_scint
std::vector< bool > * m_signal_overflow_scint
Definition: CBNTAA_TBTPValidation.h:84
CBNTAA_TBTPValidation::m_tbDetectorName_TBADCRawCont
std::vector< std::string > * m_tbDetectorName_TBADCRawCont
Definition: CBNTAA_TBTPValidation.h:39
CBNTAA_TBTPValidation::m_cryoX
std::vector< float > * m_cryoX
Definition: CBNTAA_TBTPValidation.h:60
CBNTAA_TBTPValidation::m_phase
std::vector< float > * m_phase
Definition: CBNTAA_TBTPValidation.h:49
CBNTAA_TBTPValidation::m_overflow_TBTDCRawCont
std::vector< bool > * m_overflow_TBTDCRawCont
Definition: CBNTAA_TBTPValidation.h:46
CBNTAA_TBTPValidation::m_signal_scint
std::vector< float > * m_signal_scint
Definition: CBNTAA_TBTPValidation.h:83
CBNTAA_TBTPValidation::m_containerKey6
std::string m_containerKey6
Definition: CBNTAA_TBTPValidation.h:81
CBNTAA_TBTPValidation::m_hitNumberV
std::vector< int > * m_hitNumberV
Definition: CBNTAA_TBTPValidation.h:102
CBNTAA_TBTPValidation::m_cErr
std::vector< std::vector< float > > * m_cErr
Definition: CBNTAA_TBTPValidation.h:116
CBNTAA_TBTPValidation::m_tdc_raw
std::vector< unsigned int > * m_tdc_raw
Definition: CBNTAA_TBTPValidation.h:43
CBNTAA_TBTPValidation::m_dTtoWAC
std::vector< float > * m_dTtoWAC
Definition: CBNTAA_TBTPValidation.h:51
CBNTAA_TBTPValidation::m_chi2u
std::vector< double > * m_chi2u
Definition: CBNTAA_TBTPValidation.h:104
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
CBNTAA_TBTPValidation::m_time_signal_tCatch
std::vector< float > * m_time_signal_tCatch
Definition: CBNTAA_TBTPValidation.h:90
CBNTAA_TBTPValidation::m_cPos
std::vector< std::vector< float > > * m_cPos
Definition: CBNTAA_TBTPValidation.h:115
CBNTAA_TBTPValidation::m_tdcmin_TBTDC
std::vector< int > * m_tdcmin_TBTDC
Definition: CBNTAA_TBTPValidation.h:97
CBNTAA_TBTPValidation::m_tbDetectorName_TBMWPCCont
std::vector< std::string > * m_tbDetectorName_TBMWPCCont
Definition: CBNTAA_TBTPValidation.h:119
CBNTAA_TBTPValidation::m_cryow
std::vector< double > * m_cryow
Definition: CBNTAA_TBTPValidation.h:108
CBNTAA_TBTPValidation::m_overflow_TBScintillatorCont
std::vector< bool > * m_overflow_TBScintillatorCont
Definition: CBNTAA_TBTPValidation.h:86
CBNTAA_TBTPValidation::m_containerKey7
std::string m_containerKey7
Definition: CBNTAA_TBTPValidation.h:87
CBNTAA_TBTPValidation::m_clusterSize_c
std::vector< std::vector< float > > * m_clusterSize_c
Definition: CBNTAA_TBTPValidation.h:118
CBNTAA_TBTPValidation::m_yPos
std::vector< signal_type_TBBPCCont > * m_yPos
Definition: CBNTAA_TBTPValidation.h:66
CBNTAA_TBTPValidation::CBNT_clear
StatusCode CBNT_clear()
Definition: CBNTAA_TBTPValidation.cxx:721
CBNTAA_TBTPValidation::m_cryov
std::vector< double > * m_cryov
Definition: CBNTAA_TBTPValidation.h:108
CBNTAA_TBTPValidation::m_overflow_TBBPCCont
std::vector< bool > * m_overflow_TBBPCCont
Definition: CBNTAA_TBTPValidation.h:74
CBNTAA_TBTPValidation::m_scale_TBTDC
std::vector< float > * m_scale_TBTDC
Definition: CBNTAA_TBTPValidation.h:98
CBNTAA_TBTPValidation::m_containerKey4
std::string m_containerKey4
Definition: CBNTAA_TBTPValidation.h:63
CBNTAA_TBTPValidation::m_xPosOverflow
std::vector< bool > * m_xPosOverflow
Definition: CBNTAA_TBTPValidation.h:70
CBNTAA_TBTPValidation::m_containerKey12
std::string m_containerKey12
Definition: CBNTAA_TBTPValidation.h:121
CBNTAA_TBTPValidation::m_time_signal_scint
std::vector< float > * m_time_signal_scint
Definition: CBNTAA_TBTPValidation.h:83
CBNTAA_TBTPValidation::m_cPosOverflow
std::vector< std::vector< unsigned > > * m_cPosOverflow
Definition: CBNTAA_TBTPValidation.h:123
CBNTAA_TBTPValidation::m_chi2
std::vector< double > * m_chi2
Definition: CBNTAA_TBTPValidation.h:104
CBNTAA_TBTPValidation::m_signal_overflow_tCatch
std::vector< bool > * m_signal_overflow_tCatch
Definition: CBNTAA_TBTPValidation.h:91
CBNTAA_TBTPValidation::m_vintercept
std::vector< double > * m_vintercept
Definition: CBNTAA_TBTPValidation.h:107
CBNTAA_TBTPValidation::m_tbDetectorName_TBBPCCont
std::vector< std::string > * m_tbDetectorName_TBBPCCont
Definition: CBNTAA_TBTPValidation.h:73
CBNTAA_TBTPValidation::m_overflow_TBADCRawCont
std::vector< bool > * m_overflow_TBADCRawCont
Definition: CBNTAA_TBTPValidation.h:40
CBNTAA_TBTPValidation::m_tableY
std::vector< float > * m_tableY
Definition: CBNTAA_TBTPValidation.h:62
CBNTAA_TBTPValidation::m_tdc_TBTDC
std::vector< int > * m_tdc_TBTDC
Definition: CBNTAA_TBTPValidation.h:96
CBNTAA_TBTPValidation::m_containerKey11
std::string m_containerKey11
Definition: CBNTAA_TBTPValidation.h:113
CBNTAA_TBTPValidation::m_nSamples
std::vector< unsigned short > * m_nSamples
Definition: CBNTAA_TBTPValidation.h:79
CBNTAA_TBTPValidation::CBNT_execute
virtual StatusCode CBNT_execute()
Definition: CBNTAA_TBTPValidation.cxx:327
CBNTAA_TBTPValidation::m_tbDetectorName_TBTailCatcher
std::vector< std::string > * m_tbDetectorName_TBTailCatcher
Definition: CBNTAA_TBTPValidation.h:92
CBNTAA_TBTPValidation::m_time_overflow_tCatch
std::vector< bool > * m_time_overflow_tCatch
Definition: CBNTAA_TBTPValidation.h:91
CBNTAA_TBTPValidation::m_channelID
std::vector< unsigned int > * m_channelID
Definition: CBNTAA_TBTPValidation.h:77
CBNTAA_TBTPValidation::~CBNTAA_TBTPValidation
~CBNTAA_TBTPValidation()
Definition: CBNTAA_TBTPValidation.cxx:130
CBNTAA_TBTPValidation::m_xPulse
std::vector< signal_type_TBBPCCont > * m_xPulse
Definition: CBNTAA_TBTPValidation.h:68
CBNTAA_TBTPValidation
Definition: CBNTAA_TBTPValidation.h:22
CBNTAA_TBTPValidation::m_overflowSetFlag
std::vector< bool > * m_overflowSetFlag
Definition: CBNTAA_TBTPValidation.h:72
CBNTAA_TBTPValidation::m_containerKey1
std::string m_containerKey1
Definition: CBNTAA_TBTPValidation.h:41
CBNTAA_TBTPValidation::m_phase_TBTDC
std::vector< int > * m_phase_TBTDC
Definition: CBNTAA_TBTPValidation.h:99
CBNTAA_TBTPValidation::m_gain
std::vector< unsigned char > * m_gain
Definition: CBNTAA_TBTPValidation.h:78
CBNTAA_TBTPValidation::m_residualu
std::vector< double > * m_residualu
Definition: CBNTAA_TBTPValidation.h:103
CBNTAA_TBTPValidation::m_triggers
std::vector< bool > * m_triggers
Definition: CBNTAA_TBTPValidation.h:112
CBNTAA_TBTPValidation::CBNT_finalize
virtual StatusCode CBNT_finalize()
Definition: CBNTAA_TBTPValidation.cxx:819
CBNTAA_TBTPValidation::add_name
std::string add_name(const char *base, const std::string &extension)
Definition: CBNTAA_TBTPValidation.cxx:825
CBNTAA_TBTPValidation::m_containerKey9
std::string m_containerKey9
Definition: CBNTAA_TBTPValidation.h:100