|
ATLAS Offline Software
|
Go to the documentation of this file.
31 NTuple::Array<float>
cov;
32 NTuple::Item<long>
gain, cellIndex;
33 NTuple::Item<long> corrUndo;
35 if (
sc!=StatusCode::SUCCESS) {
37 return StatusCode::FAILURE;
40 sc=
m_nt->addItem(
"cellIndex",cellIndex,0,200000);
41 if (
sc!=StatusCode::SUCCESS) {
43 return StatusCode::FAILURE;
47 if (
sc!=StatusCode::SUCCESS) {
49 return StatusCode::FAILURE;
52 sc=
m_nt->addItem(
"corrUndo",corrUndo,0,2);
53 if (
sc!=StatusCode::SUCCESS) {
55 return StatusCode::FAILURE;
68 larAutoCorr = larComplete;
76 if(larAutoCorr==
nullptr){
77 ATH_MSG_ERROR(
"Unable to retrieve ILArAutoCorr with key " <<
m_objKey.
key() <<
" neither from DetectorStore neither from conditions" );
78 return StatusCode::FAILURE;
81 if (not larAutoCorr_c) {
82 ATH_MSG_ERROR(
"Dynamic cast failed in LArAutoCorr2Ntuple::stop");
83 return StatusCode::FAILURE;
86 if (not larAutoCorr_c->correctionsApplied()) {
89 sc=larAutoCorr_nc->applyCorrections();
91 ATH_MSG_ERROR(
"Failed to apply corrections to LArCaliWaveContainer!" );
93 ATH_MSG_INFO(
"Applied corrections to LArCaliWaveContainer" );
100 unsigned cellCounter=0;
101 unsigned cellZeroCounter=0;
108 cellIndex = cellCounter;
114 if (
sc!=StatusCode::SUCCESS) {
116 return StatusCode::FAILURE;
119 }
else { ++cellZeroCounter;}
127 for(;itUndo!=itUndo_e;++itUndo) {
135 if (
sc!=StatusCode::SUCCESS) {
137 return StatusCode::FAILURE;
144 ATH_MSG_INFO(
"LArAutoCorr2Ntuple has finished, " << cellCounter <<
"records written, " << cellZeroCounter <<
" zero length vectors" );
145 return StatusCode::SUCCESS;
BooleanProperty m_applyCorr
virtual StatusCode stop()
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
c-struct reproducing the structure of the persistent data
const std::string & key() const
Return the StoreGate ID for the referenced object.
virtual AutoCorrRef_t autoCorr(const HWIdentifier &CellID, int gain) const =0
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
This class defines the interface for accessing AutoCorrelation parameters for each channel @stereotyp...
This class implements the ILArAutoCorr interface.
Subset::ConstCorrectionVecIt ConstCorrectionIt
id_range channel_range() const
::StatusCode StatusCode
StatusCode definition for legacy code.
BooleanProperty m_addCorrUndo
virtual StatusCode initialize()
LArAutoCorr2Ntuple(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadCondHandleKey< ILArAutoCorr > m_objKey
StatusCode initialize(bool used=true)
const LArOnlineID_Base * m_onlineId
bool fillFromIdentifier(const HWIdentifier &id)
#define ATH_MSG_WARNING(x)
#define ATLAS_THREAD_SAFE
std::vector< float > m_vAutoCorr
Proxy for accessing a range of float values like a vector.