ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
TestBeam
TBRec
src
CBNTAA_TBADCRaw.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
CBNTAA_TBADCRaw.h
"
6
7
#include "
TBEvent/TBADCRawCont.h
"
8
#include <vector>
9
10
CBNTAA_TBADCRaw::CBNTAA_TBADCRaw
(
const
std::string & name, ISvcLocator * pSvcLocator) :
CBNT_TBRecBase
(name, pSvcLocator)
11
{
12
declareProperty
(
"NeverReturnFailure"
,
m_neverReturnFailure
=
false
);
13
declareProperty
(
"ContainerKey1"
,
m_containerKey1
=
"ADCRawCont"
);
14
m_adc
=NULL;
15
}
16
17
CBNTAA_TBADCRaw::~CBNTAA_TBADCRaw
()
18
{
//Clean up arrays of ntuple entries (if they have been booked)
19
delete
m_adc
;
20
}
21
22
StatusCode
CBNTAA_TBADCRaw::CBNT_initialize
()
23
{
24
ATH_MSG_DEBUG
(
"in initialize()"
);
25
26
addBranch
(
"TBADCRaw"
,
m_adc
);
27
return
StatusCode::SUCCESS;
28
29
}
30
31
StatusCode
CBNTAA_TBADCRaw::CBNT_execute
()
32
{
33
const
TBADCRawCont
* adcCont;
34
StatusCode
sc
=
evtStore
()->retrieve(adcCont,
m_containerKey1
);
35
if
(
sc
.isFailure())
36
{
37
ATH_MSG_ERROR
(
"\033[31m"
<<
" Cannot read TBADCRawCont from StoreGate! key= "
<<
m_containerKey1
<<
"\033[0m"
);
38
if
(
m_neverReturnFailure
) {
39
return
StatusCode::SUCCESS;
40
}
else
{
41
return
StatusCode::FAILURE;
42
}
43
}
44
else
45
{
46
ATH_MSG_DEBUG
(
"\033[31m"
<<
"Going over TBADCRawCont channels ..."
<<
"\033[0m"
);
47
48
const
unsigned
nADC = (
TBADCRawCont::size_type
)adcCont->
size
();
49
m_adc
->resize(nADC);
50
51
unsigned
NtupleVectorIndex = 0;
52
for
(
const
TBADCRaw
* adc : *adcCont) {
53
(*m_adc)[NtupleVectorIndex] = adc->getADC();
54
}
55
}
56
57
return
StatusCode::SUCCESS;
58
}
59
60
StatusCode
CBNTAA_TBADCRaw::CBNT_clear
()
61
{
62
if
(
m_adc
)
63
m_adc
->clear();
64
65
return
StatusCode::SUCCESS;
66
}
67
68
StatusCode
CBNTAA_TBADCRaw::CBNT_finalize
()
69
{
70
ATH_MSG_DEBUG
(
"in finalize()"
);
71
return
StatusCode::SUCCESS;
72
}
73
74
std::string
CBNTAA_TBADCRaw::add_name
(
const
char
*
base
,
const
std::string& extension) {
75
std::string retval(
base
);
76
for
(
unsigned
i=0;i<extension.size();i++) {
77
const
char
& ch=extension[i];
78
if
(ch==
'='
|| ch==
':'
|| ch==
'/'
)
79
continue
;
//Inore these characters
80
else
if
(ch==
'-'
)
81
retval.append(
"m"
);
//replace by letter m
82
else
if
(ch==
'+'
)
83
retval.append(
"p"
);
//replace by letter p
84
else
85
retval.append(1,ch);
86
}
87
return
retval;
88
}
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition
AthMsgStreamMacros.h:33
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition
AthMsgStreamMacros.h:29
CBNTAA_TBADCRaw.h
sc
static Double_t sc
Definition
LArPhysWaveHECTool.cxx:37
TBADCRawCont.h
AthCommonAlgorithm< Gaudi::Algorithm >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
Definition
AthCommonDataStore.h:145
AthCommonAlgorithm< Gaudi::Algorithm >::evtStore
ServiceHandle< StoreGateSvc > & evtStore()
Definition
AthCommonDataStore.h:85
CBNTAA_TBADCRaw::add_name
std::string add_name(const char *base, const std::string &extension)
Definition
CBNTAA_TBADCRaw.cxx:74
CBNTAA_TBADCRaw::~CBNTAA_TBADCRaw
virtual ~CBNTAA_TBADCRaw()
Definition
CBNTAA_TBADCRaw.cxx:17
CBNTAA_TBADCRaw::m_containerKey1
std::string m_containerKey1
Definition
CBNTAA_TBADCRaw.h:38
CBNTAA_TBADCRaw::CBNT_execute
virtual StatusCode CBNT_execute() override
Definition
CBNTAA_TBADCRaw.cxx:31
CBNTAA_TBADCRaw::CBNT_finalize
virtual StatusCode CBNT_finalize() override
Definition
CBNTAA_TBADCRaw.cxx:68
CBNTAA_TBADCRaw::CBNT_initialize
virtual StatusCode CBNT_initialize() override
Definition
CBNTAA_TBADCRaw.cxx:22
CBNTAA_TBADCRaw::m_neverReturnFailure
bool m_neverReturnFailure
Definition
CBNTAA_TBADCRaw.h:35
CBNTAA_TBADCRaw::CBNTAA_TBADCRaw
CBNTAA_TBADCRaw(const std::string &name, ISvcLocator *pSvcLocator)
Definition
CBNTAA_TBADCRaw.cxx:10
CBNTAA_TBADCRaw::CBNT_clear
virtual StatusCode CBNT_clear() override
Definition
CBNTAA_TBADCRaw.cxx:60
CBNTAA_TBADCRaw::m_adc
std::vector< unsigned int > * m_adc
Definition
CBNTAA_TBADCRaw.h:37
CBNT_TBRecBase::addBranch
void addBranch(const std::string &branchname, T &obj, const std::string &leaflist)
Definition
CBNT_TBRecBase.h:44
CBNT_TBRecBase::CBNT_TBRecBase
CBNT_TBRecBase(const std::string &name, ISvcLocator *pSvcLocator)
Definition
CBNT_TBRecBase.cxx:12
DataVector< TBADCRaw >::size_type
typename DataVectorBase< TBADCRaw >::Base::size_type size_type
Definition
DataVector.h:814
DataVector::size
size_type size() const noexcept
Returns the number of elements in the collection.
TBADCRawCont
"TBEvent/TBADCRawCont.h"
Definition
TBADCRawCont.h:20
TBADCRaw
Data object holding adc measurement.
Definition
TBADCRaw.h:21
base
std::string base
Definition
hcg.cxx:83
Generated on
for ATLAS Offline Software by
1.17.0