ATLAS Offline Software
xAODEmTauRoIAuxContainerCnv_v1.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 // $Id$
6 
7 // System include(s):
8 #include <stdexcept>
9 
10 // Gaudi/Athena include(s):
11 #include "GaudiKernel/MsgStream.h"
12 
13 // EDM include(s):
17 
18 // Local include(s):
20 
22 #define MSGLVL MSG::INFO
23 
25 #define ATH_MSG( MSG ) \
26  do { \
27  if( log.level() <= MSGLVL ) { \
28  log << MSGLVL << MSG << endmsg; \
29  } \
30  } while( 0 )
31 
33 {
34 }
35 
39  MsgStream& /*log*/ ) const {
40 
41  // Greet the user:
42  //ATH_MSG( "Converting xAOD::EmTauRoIAuxContainer_v1 to current version..." );
43 
44  // Remove this line once the converter is "ready":
45  //ATH_MSG( "WARNING Converter is not complete yet!" );
46 
47  // Clear the transient object:
48  newObj->resize( 0 );
49 
50  SG::copyAuxStoreThinned( *oldObj, *newObj, nullptr );
51 
52  // Now a bit of jiggery-pokery to set threshold pattern
54  for (size_t i = 0; i < newObj->size(); ++i) {
55  newInt.push_back( new xAOD::EmTauRoI() );
56  }
57  newInt.setStore( newObj);
58 
59  for (size_t i = 0; i < newObj->size(); ++i) {
60  if (newInt[i]->roiType() == xAOD::EmTauRoI::CPRoIWord) {
61  uint32_t pattern = newInt[i]->roiWord()&0xffff;
62  newInt[i]->setThrPattern(pattern);
63  }
64  }
65 
66  return;
67 }
68 
74  MsgStream& log ) const {
75 
76  log << MSG::ERROR
77  << "Somebody called xAODEmTauRoIAuxContainerCnv_v1::transToPers"
78  << endmsg;
79  throw std::runtime_error( "Somebody called xAODEmTauRoIAuxContainerCnv_v1::"
80  "transToPers" );
81 
82  return;
83 }
SG::copyAuxStoreThinned
void copyAuxStoreThinned(const SG::IConstAuxStore &orig, SG::IAuxStore &copy, const SG::ThinningInfo *info)
Helper to copy an aux store while applying thinning.
EmTauRoIContainer_v1.h
mergePhysValFiles.pattern
pattern
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:26
xAOD::EmTauRoIAuxContainer_v1
Auxiliary store for the LVL1 em/tau RoI container.
Definition: EmTauRoIAuxContainer_v1.h:34
xAODEmTauRoIAuxContainerCnv_v1::xAODEmTauRoIAuxContainerCnv_v1
xAODEmTauRoIAuxContainerCnv_v1()
Default constructor.
Definition: xAODEmTauRoIAuxContainerCnv_v1.cxx:32
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
xAOD::AuxContainerBase::resize
virtual bool resize(size_t size) override
Resize the arrays to a given size.
Definition: AuxContainerBase.cxx:485
xAOD::AuxContainerBase::size
virtual size_t size() const override
Get the size of the container.
Definition: AuxContainerBase.cxx:410
copyAuxStoreThinned.h
Helper to copy an aux store while applying thinning.
lumiFormat.i
int i
Definition: lumiFormat.py:92
xAOD::EmTauRoI_v2
Class describing a LVL1 em/tau region of interest.
Definition: EmTauRoI_v2.h:35
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
xAODEmTauRoIAuxContainerCnv_v1::transToPers
virtual void transToPers(const xAOD::EmTauRoIAuxContainer *, xAOD::EmTauRoIAuxContainer_v1 *, MsgStream &log) const override
Dummy function inherited from the base class.
Definition: xAODEmTauRoIAuxContainerCnv_v1.cxx:72
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
DataVector::push_back
value_type push_back(value_type pElem)
Add an element to the end of the collection.
xAODEmTauRoIAuxContainerCnv_v1.h
EmTauRoIContainer.h
xAOD::EmTauRoI_v2::CPRoIWord
@ CPRoIWord
This is a Run 1 EM/Tau RoI word.
Definition: EmTauRoI_v2.h:46
xAODEmTauRoIAuxContainerCnv_v1::persToTrans
virtual void persToTrans(const xAOD::EmTauRoIAuxContainer_v1 *oldObj, xAOD::EmTauRoIAuxContainer *newObj, MsgStream &log) const override
Function converting from the old type to the current one.
Definition: xAODEmTauRoIAuxContainerCnv_v1.cxx:37
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
xAOD::EmTauRoIAuxContainer_v2
Auxiliary store for the LVL1 em/tau RoI container.
Definition: EmTauRoIAuxContainer_v2.h:34