ATLAS Offline Software
Loading...
Searching...
No Matches
T_AthenaPoolCnvBase< T > Class Template Reference

This templated class provides the converter to translate an object to/from its persistent POOL representation. More...

#include <T_AthenaPoolCnvBase.h>

Inheritance diagram for T_AthenaPoolCnvBase< T >:
Collaboration diagram for T_AthenaPoolCnvBase< T >:

Public Member Functions

 T_AthenaPoolCnvBase (ISvcLocator *svcloc, const char *name=nullptr)
 Constructor.
virtual StatusCode finalize () override
virtual long repSvcType () const override
virtual StatusCode createObj (IOpaqueAddress *pAddr, DataObject *&pObj) override
 Create a transient object from a POOL persistent representation.
virtual StatusCode createRep (DataObject *pObj, IOpaqueAddress *&pAddr) override
 Create a POOL persistent representation for a transient object.
virtual StatusCode fillRepRefs (IOpaqueAddress *pAddr, DataObject *pObj) override
 Create a POOL persistent representation for a transient object.
const ServiceHandle< StoreGateSvc > & detStore () const
 Handle to DetectorStore.
virtual StatusCode cleanUp (const std::string &output) override
 Implement cleanUp for AthenaPoolConverter to do nothing.
bool msgLvl (const MSG::Level lvl) const
 Test the output level.
MsgStream & msg () const
 The standard message stream.
MsgStream & msg (const MSG::Level lvl) const
 The standard message stream.
void setLevel (MSG::Level lvl)
 Change the current logging level.

Static Public Member Functions

static CLID classID ()
static long storageType ()

Protected Types

typedef std::mutex CallMutex

Protected Member Functions

virtual StatusCode initialize ()
 Gaudi Service Interface method implementations:
virtual StatusCode DataObjectToPool (IOpaqueAddress *pAddr, DataObject *pObj)
 Write an object into POOL.
virtual StatusCode PoolToDataObject (DataObject *&pObj, const Token *token, const std::string &key)
 Read an object from POOL.
virtual Placement setPlacement (const std::string &key, const std::string &output)
 Set POOL placement.
virtual Placement setPlacementWithType (const std::string &tname, const std::string &key, const std::string &output)
 Set POOL placement hint for a given type.
bool compareClassGuid (const Token *token, const Guid &guid) const

Protected Attributes

RootType m_classDesc
ServiceHandle< StoreGateSvc > m_detStore
ServiceHandle< IAthenaPoolCnvSvc > m_athenaPoolCnvSvc
CallMutex m_conv_mut

Private Member Functions

void initMessaging () const
 Initialize our message level and MessageSvc.

Private Attributes

std::string m_nm
 Message source name.
boost::thread_specific_ptr< MsgStream > m_msg_tls
 MsgStream instance (a std::cout like with print-out levels).
std::atomic< IMessageSvc * > m_imsg { nullptr }
 MessageSvc pointer.
std::atomic< MSG::Level > m_lvl { MSG::NIL }
 Current logging level.
std::atomic_flag m_initialized ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT
 Messaging initialized (initMessaging).

Detailed Description

template<class T>
class T_AthenaPoolCnvBase< T >

This templated class provides the converter to translate an object to/from its persistent POOL representation.

After reading, we also call SG::ToTransient<T>::toTransient (without an EventContext) on the object we read.

Definition at line 28 of file T_AthenaPoolCnvBase.h.

Member Typedef Documentation

◆ CallMutex

typedef std::mutex AthenaPoolConverter::CallMutex
protectedinherited

Definition at line 110 of file AthenaPoolConverter.h.

Constructor & Destructor Documentation

◆ T_AthenaPoolCnvBase()

template<class T>
T_AthenaPoolCnvBase< T >::T_AthenaPoolCnvBase ( ISvcLocator * svcloc,
const char * name = nullptr )

Constructor.

Member Function Documentation

◆ classID()

template<class T>
CLID T_AthenaPoolCnvBase< T >::classID ( )
static
Returns
class ID.

◆ cleanUp()

StatusCode AthenaPoolConverter::cleanUp ( const std::string & output)
overridevirtualinherited

Implement cleanUp for AthenaPoolConverter to do nothing.

Implements IAthenaPoolCleanUp.

Reimplemented in T_AthenaPoolCustomCnvWithKey< TRANS, PERS >, T_AthenaPoolCustomCnvWithKey< AFP_SiDigiCollection, AFP_SiDigiCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_SIDLocRecoEvCollection, AFP_SIDLocRecoEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_SIDSimHitCollection, AFP_SIDSimHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_TDDigiCollection, AFP_TDDigiCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_TDLocRecoEvCollection, AFP_TDLocRecoEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_TDSimHitCollection, AFP_TDSimHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_CLinkEvent, ALFA_CLinkEvent_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_DigitCollection, ALFA_DigitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_GloRecEvCollection, ALFA_GloRecEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_HitCollection, ALFA_HitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_LocRecCorrEvCollection, ALFA_LocRecCorrEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_LocRecCorrODEvCollection, ALFA_LocRecCorrODEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_LocRecEvCollection, ALFA_LocRecEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_LocRecODEvCollection, ALFA_LocRecODEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_ODDigitCollection, ALFA_ODDigitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_ODHitCollection, ALFA_ODHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< Analysis::MuonContainer, MuonContainer_PERS >, T_AthenaPoolCustomCnvWithKey< AthExDecay, AthExDecay_PERS >, T_AthenaPoolCustomCnvWithKey< AthExElephantino, AthExElephantino_PERS >, T_AthenaPoolCustomCnvWithKey< AthExFatObject, AthExFatObject_PERS >, T_AthenaPoolCustomCnvWithKey< AUXSTORE, AUXSTORE >, T_AthenaPoolCustomCnvWithKey< BCM_RDO_Container, BCM_RDO_Container_p0 >, T_AthenaPoolCustomCnvWithKey< CaloCalibrationHitContainer, CaloCalibrationHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< CaloRingsContainer, CaloRingsContainer_PERS >, T_AthenaPoolCustomCnvWithKey< egammaContainer, egammaContainer_PERS >, T_AthenaPoolCustomCnvWithKey< egDetailContainer, egDetailContainer_PERS >, T_AthenaPoolCustomCnvWithKey< ElectronContainer, ElectronContainer_PERS >, T_AthenaPoolCustomCnvWithKey< INav4MomAssocs, INav4MomAssocs_PERS >, T_AthenaPoolCustomCnvWithKey< INav4MomLinkContainer, INav4MomLinkContainer_PERS >, T_AthenaPoolCustomCnvWithKey< InDet::InDetLowBetaCandidate, InDetLowBetaCandidate_PERS >, T_AthenaPoolCustomCnvWithKey< IParticleLinkContainer, IParticleLinkContainer_PERS >, T_AthenaPoolCustomCnvWithKey< LArHitContainer, LArHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< LArHitFloatContainer, LArHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< LArTTL1Container, LArTTL1Container_PERS >, T_AthenaPoolCustomCnvWithKey< McEventCollection, McEventCollection_PERS >, T_AthenaPoolCustomCnvWithKey< MuonCaloEnergyContainer, MuonCaloEnergyContainer_PERS >, T_AthenaPoolCustomCnvWithKey< PhotonContainer, PhotonContainer_PERS >, T_AthenaPoolCustomCnvWithKey< Rec::MuonSpShowerContainer, MuonSpShowerContainer_PERS >, T_AthenaPoolCustomCnvWithKey< RingerRings, RingerRings_PERS >, T_AthenaPoolCustomCnvWithKey< SiHitCollection, SiHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< SimulationHitCollection, SimulationHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< SrCaloCalibrationHitContainer, SrCaloCalibrationHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< T, P >, T_AthenaPoolCustomCnvWithKey< TileBeamElemContainer, TileBeamElemContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileCosmicMuonContainer, TileCosmicMuonContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileDigitsContainer, TileDigitsContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileHitContainer, TileHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileHitVector, TileHitVector_PERS >, T_AthenaPoolCustomCnvWithKey< TileL2Container, TileL2Container_PERS >, T_AthenaPoolCustomCnvWithKey< TileMuContainer, TileMuContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileMuonReceiverContainer, TileMuonReceiverContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileRawChannelContainer, TileRawChannelContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileTTL1Container, TileTTL1Container_PERS >, T_AthenaPoolCustomCnvWithKey< TrackCollection, TrackCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrackRecordCollection, TrackRecordCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TRANS, TPCNV_CUR::Pers_t >, T_AthenaPoolCustomCnvWithKey< TRANS, typename TPCNV_CUR::Pers_t >, T_AthenaPoolCustomCnvWithKey< TrigEMCluster, TrigEMCluster_PERS >, T_AthenaPoolCustomCnvWithKey< TrigMonConfig, TrigMonConfig_PERS >, T_AthenaPoolCustomCnvWithKey< TrigMonConfigCollection, TrigMonConfigCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrigMonEvent, TrigMonEvent_PERS >, T_AthenaPoolCustomCnvWithKey< TrigMonEventCollection, TrigMonEventCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrigOperationalInfo, TrigOperationalInfo_PERS >, T_AthenaPoolCustomCnvWithKey< TrigOperationalInfoCollection, TrigOperationalInfoCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrigRNNOutput, TrigRNNOutput_PERS >, T_AthenaPoolCustomCnvWithKey< TrigRoiDescriptor, TrigRoiDescriptor_PERS >, T_AthenaPoolCustomCnvWithKey< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrigTauCluster, TrigTauCluster_PERS >, T_AthenaPoolCustomCnvWithKey< TrigTauClusterDetails, TrigTauClusterDetails_PERS >, T_AthenaPoolCustomCnvWithKey< TrigTauTracksInfo, TrigTauTracksInfo_PERS >, T_AthenaPoolCustomCnvWithKey< Trk::ElementTable, ElementTable_PERS >, T_AthenaPoolCustomCnvWithKey< Trk::LayerMaterialMap, LayerMaterialMap_PERS >, T_AthenaPoolCustomCnvWithKey< Trk::MaterialStepCollection, MaterialStepCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TRTUncompressedHitCollection, TRT_HitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TruthEtIsolationsContainer, TruthEtIsolationsContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TruthParticleContainer, TruthParticleContainer_PERS >, T_AthenaPoolCustomCnvWithKey< ViewVector< DV >, ViewVector< DV > >, T_AthenaPoolCustomCnvWithKey< XAOD, XAOD >, T_AthenaPoolCustomCnvWithKey< xAOD::ShallowAuxContainer, xAOD::ShallowAuxContainer >, and T_AthenaPoolCustomCnvWithKey< ZdcRawChannelCollection, ZdcRawChannelCollection_PERS >.

Definition at line 220 of file AthenaPoolConverter.cxx.

220 {
221 ATH_MSG_DEBUG("AthenaPoolConverter cleanUp called for base class.");
222 return StatusCode::SUCCESS;
223}
#define ATH_MSG_DEBUG(x,...)

◆ compareClassGuid()

bool AthenaPoolConverter::compareClassGuid ( const Token * token,
const Guid & guid ) const
protectedinherited

Definition at line 216 of file AthenaPoolConverter.cxx.

216 {
217 return(token ? (guid == token->classID()) : false);
218}
const Guid & classID() const
Access database identifier.
Definition Token.h:74

◆ createObj()

StatusCode AthenaPoolConverter::createObj ( IOpaqueAddress * pAddr,
DataObject *& pObj )
overridevirtualinherited

Create a transient object from a POOL persistent representation.

Parameters
pAddr[IN] IOpaqueAddress of POOL persistent representation.
pObj[OUT] pointer to the transient object.

Reimplemented in T_AthenaPoolCoolMultChanCnv< COLL_T, ELEM_T, ELEM_P >, T_AthenaPoolCoolMultChanCnv< AlignableTransformContainer, AlignableTransform_TRANS, AlignableTransform_PERS >, T_AthenaPoolCoolMultChanCnv< LArAutoCorrComplete, LArAutoCorrTransType, LArAutoCorrPersType >, T_AthenaPoolCoolMultChanCnv< LArAutoCorrMC, LArAutoCorrTransType, LArAutoCorrPersType >, T_AthenaPoolCoolMultChanCnv< LArCaliWaveContainer, LArCaliWaveTransType, LArCaliWavePersType >, T_AthenaPoolCoolMultChanCnv< LArDSPThresholdsComplete, LArDSPThrTransType, LArDSPThrPersType >, T_AthenaPoolCoolMultChanCnv< LArHVScaleCorrComplete, LArConditionsSubset< LArSingleFloatP >, LArSingleFloatSubset_p1 >, T_AthenaPoolCoolMultChanCnv< LArOFCBinComplete, LArOFCBinTransType, LArOFCBinPersType >, T_AthenaPoolCoolMultChanCnv< LArOFCComplete, LArOFCTransType, LArOFCPersType >, T_AthenaPoolCoolMultChanCnv< LArPedestalComplete, LArPedTransType, LArPedPersType >, T_AthenaPoolCoolMultChanCnv< LArPhysWaveContainer, LArPhysWaveTransType, LArPhysWavePersType >, T_AthenaPoolCoolMultChanCnv< LArRampComplete, LArRampTransType, LArRampPersType >, T_AthenaPoolCoolMultChanCnv< LArRampMC, LArRampTransType, LArRampPersType >, T_AthenaPoolCoolMultChanCnv< LArShape32MC, LArShapeTransType, LArShapePersType >, T_AthenaPoolCoolMultChanCnv< LArShapeComplete, LArShapeTransType2, LArShapePersType2 >, and T_AthenaPoolCoolMultChanCnv< TransientClass, LArConditionsSubset< LArSingleFloatP >, LArSingleFloatSubset_p1 >.

Definition at line 52 of file AthenaPoolConverter.cxx.

52 {
53 TokenAddress* tokAddr = dynamic_cast<TokenAddress*>(pAddr);
54
55 bool ownTokAddr = false;
56 if (tokAddr == nullptr || tokAddr->getToken() == nullptr) {
57 ownTokAddr = true;
58 auto token = std::make_unique<Token>();
59 token->fromString(*(pAddr->par()));
60 GenericAddress* genAddr = dynamic_cast<GenericAddress*>(pAddr);
61 if (not genAddr){
62 ATH_MSG_ERROR("Dynamic cast failed in AthenaPoolConverter::createObj");
63 //clean up
64 return StatusCode::FAILURE;
65 }
66 tokAddr = new TokenAddress(*genAddr, std::move(token));
67 }
68 if( tokAddr->ipar()[0] > 0 and tokAddr->getToken()->auxString().empty() ) {
69 tokAddr->getToken()->setAuxString(CxxUtils::HexString<"[CTXT={}]">(static_cast<int>(*(pAddr->ipar()))));
70 }
71 ATH_MSG_VERBOSE("createObj: " << tokAddr->getToken()->toString() << ", CTX=" << tokAddr->ipar()[0]
72 << ", auxStr=" << tokAddr->getToken()->auxString() );
73 try {
74 std::string key = pAddr->par()[1];
75 if (!PoolToDataObject(pObj, tokAddr->getToken(), key).isSuccess()) {
76 ATH_MSG_ERROR("createObj PoolToDataObject() failed, Token = " << (tokAddr->getToken() ? tokAddr->getToken()->toString() : "NULL"));
77 pObj = nullptr;
78 }
79 } catch (std::exception& e) {
80 ATH_MSG_ERROR("createObj - caught exception: " << e.what());
81 pObj = nullptr;
82 }
83 if (pObj == nullptr) {
84 ATH_MSG_ERROR("createObj failed to get DataObject, Token = " << (tokAddr->getToken() ? tokAddr->getToken()->toString() : "NULL"));
85 }
86 if (ownTokAddr) {
87 delete tokAddr; tokAddr = nullptr;
88 }
89 if (pObj == nullptr) {
90 return StatusCode::FAILURE;
91 }
92 return StatusCode::SUCCESS;
93}
#define ATH_MSG_ERROR(x,...)
#define ATH_MSG_VERBOSE(x,...)
virtual StatusCode PoolToDataObject(DataObject *&pObj, const Token *token, const std::string &key)=0
Read an object from POOL.
Token * getToken()
const std::string & auxString() const
Access auxiliary string.
Definition Token.h:92
const std::string toString() const
Retrieve the string representation of the token.
Definition Token.cxx:135
Token & setAuxString(std::string &&auxString)
Set auxiliary string.
Definition Token.h:94
detail::BasicHexString< FormatStr, detail::UpperHexDigits > HexString
Definition HexString.h:158

◆ createRep()

StatusCode AthenaPoolConverter::createRep ( DataObject * pObj,
IOpaqueAddress *& pAddr )
overridevirtualinherited

Create a POOL persistent representation for a transient object.

Parameters
pObj[IN] pointer to the transient object.
pAddr[OUT] IOpaqueAddress of POOL persistent representation.

Reimplemented in T_AthenaPoolCoolMultChanCnv< COLL_T, ELEM_T, ELEM_P >, T_AthenaPoolCoolMultChanCnv< AlignableTransformContainer, AlignableTransform_TRANS, AlignableTransform_PERS >, T_AthenaPoolCoolMultChanCnv< LArAutoCorrComplete, LArAutoCorrTransType, LArAutoCorrPersType >, T_AthenaPoolCoolMultChanCnv< LArAutoCorrMC, LArAutoCorrTransType, LArAutoCorrPersType >, T_AthenaPoolCoolMultChanCnv< LArCaliWaveContainer, LArCaliWaveTransType, LArCaliWavePersType >, T_AthenaPoolCoolMultChanCnv< LArDSPThresholdsComplete, LArDSPThrTransType, LArDSPThrPersType >, T_AthenaPoolCoolMultChanCnv< LArHVScaleCorrComplete, LArConditionsSubset< LArSingleFloatP >, LArSingleFloatSubset_p1 >, T_AthenaPoolCoolMultChanCnv< LArOFCBinComplete, LArOFCBinTransType, LArOFCBinPersType >, T_AthenaPoolCoolMultChanCnv< LArOFCComplete, LArOFCTransType, LArOFCPersType >, T_AthenaPoolCoolMultChanCnv< LArPedestalComplete, LArPedTransType, LArPedPersType >, T_AthenaPoolCoolMultChanCnv< LArPhysWaveContainer, LArPhysWaveTransType, LArPhysWavePersType >, T_AthenaPoolCoolMultChanCnv< LArRampComplete, LArRampTransType, LArRampPersType >, T_AthenaPoolCoolMultChanCnv< LArRampMC, LArRampTransType, LArRampPersType >, T_AthenaPoolCoolMultChanCnv< LArShape32MC, LArShapeTransType, LArShapePersType >, T_AthenaPoolCoolMultChanCnv< LArShapeComplete, LArShapeTransType2, LArShapePersType2 >, and T_AthenaPoolCoolMultChanCnv< TransientClass, LArConditionsSubset< LArSingleFloatP >, LArSingleFloatSubset_p1 >.

Definition at line 95 of file AthenaPoolConverter.cxx.

95 {
96 const SG::DataProxy* proxy = dynamic_cast<SG::DataProxy*>(pObj->registry());
97 if (proxy == nullptr) {
98 ATH_MSG_ERROR("AthenaPoolConverter CreateRep failed to cast DataProxy, key = " << pObj->name());
99 return StatusCode::FAILURE;
100 }
101 const CLID clid = proxy->clID();
102 if (pAddr == nullptr) {
103 // Create a IOpaqueAddress for this object.
104 pAddr = new TokenAddress(this->storageType(), clid, "", "", 0, 0);
105 } else {
106 GenericAddress* gAddr = dynamic_cast<GenericAddress*>(pAddr);
107 if (gAddr != nullptr) {
108 gAddr->setSvcType(this->storageType());
109 }
110 }
111 return StatusCode::SUCCESS;
112}
uint32_t CLID
The Class ID type.

◆ DataObjectToPool()

template<class T>
virtual StatusCode T_AthenaPoolCnvBase< T >::DataObjectToPool ( IOpaqueAddress * pAddr,
DataObject * pObj )
protectedvirtual

Write an object into POOL.

Parameters
pObj[IN] pointer to the transient object.

Implements AthenaPoolConverter.

Reimplemented in DataHeaderCnv, T_AthenaPoolCustCnv< TRANS, PERS >, T_AthenaPoolCustCnv< AFP_SiDigiCollection, AFP_SiDigiCollection_PERS >, T_AthenaPoolCustCnv< AFP_SIDLocRecoEvCollection, AFP_SIDLocRecoEvCollection_PERS >, T_AthenaPoolCustCnv< AFP_SIDSimHitCollection, AFP_SIDSimHitCollection_PERS >, T_AthenaPoolCustCnv< AFP_TDDigiCollection, AFP_TDDigiCollection_PERS >, T_AthenaPoolCustCnv< AFP_TDLocRecoEvCollection, AFP_TDLocRecoEvCollection_PERS >, T_AthenaPoolCustCnv< AFP_TDSimHitCollection, AFP_TDSimHitCollection_PERS >, T_AthenaPoolCustCnv< ALFA_CLinkEvent, ALFA_CLinkEvent_PERS >, T_AthenaPoolCustCnv< ALFA_DigitCollection, ALFA_DigitCollection_PERS >, T_AthenaPoolCustCnv< ALFA_GloRecEvCollection, ALFA_GloRecEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_HitCollection, ALFA_HitCollection_PERS >, T_AthenaPoolCustCnv< ALFA_LocRecCorrEvCollection, ALFA_LocRecCorrEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_LocRecCorrODEvCollection, ALFA_LocRecCorrODEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_LocRecEvCollection, ALFA_LocRecEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_LocRecODEvCollection, ALFA_LocRecODEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_ODDigitCollection, ALFA_ODDigitCollection_PERS >, T_AthenaPoolCustCnv< ALFA_ODHitCollection, ALFA_ODHitCollection_PERS >, T_AthenaPoolCustCnv< Analysis::MuonContainer, MuonContainer_PERS >, T_AthenaPoolCustCnv< AthExDecay, AthExDecay_PERS >, T_AthenaPoolCustCnv< AthExElephantino, AthExElephantino_PERS >, T_AthenaPoolCustCnv< AthExFatObject, AthExFatObject_PERS >, T_AthenaPoolCustCnv< BCM_RDO_Container, BCM_RDO_Container_p0 >, T_AthenaPoolCustCnv< CaloCalibrationHitContainer, CaloCalibrationHitContainer_PERS >, T_AthenaPoolCustCnv< CaloRingsContainer, CaloRingsContainer_PERS >, T_AthenaPoolCustCnv< CaloTTOnAttrIdMap, CaloTTOnAttrId_P >, T_AthenaPoolCustCnv< CaloTTOnOffIdMap, CaloTTOnOffId_P >, T_AthenaPoolCustCnv< CaloTTPpmRxIdMap, CaloTTPpmRxId_P >, T_AthenaPoolCustCnv< COLL_T, ELEM_T >, T_AthenaPoolCustCnv< egammaContainer, egammaContainer_PERS >, T_AthenaPoolCustCnv< egDetailContainer, egDetailContainer_PERS >, T_AthenaPoolCustCnv< ElectronContainer, ElectronContainer_PERS >, T_AthenaPoolCustCnv< INav4MomAssocs, INav4MomAssocs_PERS >, T_AthenaPoolCustCnv< INav4MomLinkContainer, INav4MomLinkContainer_PERS >, T_AthenaPoolCustCnv< InDet::InDetLowBetaCandidate, InDetLowBetaCandidate_PERS >, T_AthenaPoolCustCnv< IParticleLinkContainer, IParticleLinkContainer_PERS >, T_AthenaPoolCustCnv< LArHitContainer, LArHitContainer_PERS >, T_AthenaPoolCustCnv< LArHitFloatContainer, LArHitContainer_PERS >, T_AthenaPoolCustCnv< LArHVScaleCorrComplete, LArConditionsSubset< LArSingleFloatP > >, T_AthenaPoolCustCnv< LArTTCellMap, LArTTCell_P >, T_AthenaPoolCustCnv< LArTTL1Container, LArTTL1Container_PERS >, T_AthenaPoolCustCnv< McEventCollection, McEventCollection_PERS >, T_AthenaPoolCustCnv< MuonCaloEnergyContainer, MuonCaloEnergyContainer_PERS >, T_AthenaPoolCustCnv< PhotonContainer, PhotonContainer_PERS >, T_AthenaPoolCustCnv< Rec::MuonSpShowerContainer, MuonSpShowerContainer_PERS >, T_AthenaPoolCustCnv< RingerRings, RingerRings_PERS >, T_AthenaPoolCustCnv< SiHitCollection, SiHitCollection_PERS >, T_AthenaPoolCustCnv< SimulationHitCollection, SimulationHitCollection_PERS >, T_AthenaPoolCustCnv< SrCaloCalibrationHitContainer, SrCaloCalibrationHitContainer_PERS >, T_AthenaPoolCustCnv< T, DataVector< T::IDENTIFIABLE > >, T_AthenaPoolCustCnv< T, P >, T_AthenaPoolCustCnv< T, T::PERSIST >, T_AthenaPoolCustCnv< T, typename T::PERSIST >, T_AthenaPoolCustCnv< TileBeamElemContainer, TileBeamElemContainer_PERS >, T_AthenaPoolCustCnv< TileCosmicMuonContainer, TileCosmicMuonContainer_PERS >, T_AthenaPoolCustCnv< TileDigitsContainer, TileDigitsContainer_PERS >, T_AthenaPoolCustCnv< TileHitContainer, TileHitContainer_PERS >, T_AthenaPoolCustCnv< TileHitVector, TileHitVector_PERS >, T_AthenaPoolCustCnv< TileL2Container, TileL2Container_PERS >, T_AthenaPoolCustCnv< TileMuContainer, TileMuContainer_PERS >, T_AthenaPoolCustCnv< TileMuonReceiverContainer, TileMuonReceiverContainer_PERS >, T_AthenaPoolCustCnv< TileRawChannelContainer, TileRawChannelContainer_PERS >, T_AthenaPoolCustCnv< TileTTL1Container, TileTTL1Container_PERS >, T_AthenaPoolCustCnv< TrackRecordCollection, TrackRecordCollection_PERS >, T_AthenaPoolCustCnv< TRANS, TPCNV_CUR::Pers_t >, T_AthenaPoolCustCnv< TrigEMCluster, TrigEMCluster_PERS >, T_AthenaPoolCustCnv< TrigMonConfig, TrigMonConfig_PERS >, T_AthenaPoolCustCnv< TrigMonConfigCollection, TrigMonConfigCollection_PERS >, T_AthenaPoolCustCnv< TrigMonEvent, TrigMonEvent_PERS >, T_AthenaPoolCustCnv< TrigMonEventCollection, TrigMonEventCollection_PERS >, T_AthenaPoolCustCnv< TrigOperationalInfo, TrigOperationalInfo_PERS >, T_AthenaPoolCustCnv< TrigOperationalInfoCollection, TrigOperationalInfoCollection_PERS >, T_AthenaPoolCustCnv< TrigRNNOutput, TrigRNNOutput_PERS >, T_AthenaPoolCustCnv< TrigRoiDescriptor, TrigRoiDescriptor_PERS >, T_AthenaPoolCustCnv< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_PERS >, T_AthenaPoolCustCnv< TrigTauCluster, TrigTauCluster_PERS >, T_AthenaPoolCustCnv< TrigTauClusterDetails, TrigTauClusterDetails_PERS >, T_AthenaPoolCustCnv< TrigTauTracksInfo, TrigTauTracksInfo_PERS >, T_AthenaPoolCustCnv< TRTUncompressedHitCollection, TRT_HitCollection_PERS >, T_AthenaPoolCustCnv< TruthEtIsolationsContainer, TruthEtIsolationsContainer_PERS >, T_AthenaPoolCustCnv< TruthParticleContainer, TruthParticleContainer_PERS >, T_AthenaPoolCustCnv< ViewVector< DV >, ViewVector< DV > >, T_AthenaPoolCustCnv< ZdcRawChannelCollection, ZdcRawChannelCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TRANS, PERS >, T_AthenaPoolCustomCnvWithKey< AFP_SiDigiCollection, AFP_SiDigiCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_SIDLocRecoEvCollection, AFP_SIDLocRecoEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_SIDSimHitCollection, AFP_SIDSimHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_TDDigiCollection, AFP_TDDigiCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_TDLocRecoEvCollection, AFP_TDLocRecoEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_TDSimHitCollection, AFP_TDSimHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_CLinkEvent, ALFA_CLinkEvent_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_DigitCollection, ALFA_DigitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_GloRecEvCollection, ALFA_GloRecEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_HitCollection, ALFA_HitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_LocRecCorrEvCollection, ALFA_LocRecCorrEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_LocRecCorrODEvCollection, ALFA_LocRecCorrODEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_LocRecEvCollection, ALFA_LocRecEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_LocRecODEvCollection, ALFA_LocRecODEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_ODDigitCollection, ALFA_ODDigitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_ODHitCollection, ALFA_ODHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< Analysis::MuonContainer, MuonContainer_PERS >, T_AthenaPoolCustomCnvWithKey< AthExDecay, AthExDecay_PERS >, T_AthenaPoolCustomCnvWithKey< AthExElephantino, AthExElephantino_PERS >, T_AthenaPoolCustomCnvWithKey< AthExFatObject, AthExFatObject_PERS >, T_AthenaPoolCustomCnvWithKey< AUXSTORE, AUXSTORE >, T_AthenaPoolCustomCnvWithKey< BCM_RDO_Container, BCM_RDO_Container_p0 >, T_AthenaPoolCustomCnvWithKey< CaloCalibrationHitContainer, CaloCalibrationHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< CaloRingsContainer, CaloRingsContainer_PERS >, T_AthenaPoolCustomCnvWithKey< egammaContainer, egammaContainer_PERS >, T_AthenaPoolCustomCnvWithKey< egDetailContainer, egDetailContainer_PERS >, T_AthenaPoolCustomCnvWithKey< ElectronContainer, ElectronContainer_PERS >, T_AthenaPoolCustomCnvWithKey< INav4MomAssocs, INav4MomAssocs_PERS >, T_AthenaPoolCustomCnvWithKey< INav4MomLinkContainer, INav4MomLinkContainer_PERS >, T_AthenaPoolCustomCnvWithKey< InDet::InDetLowBetaCandidate, InDetLowBetaCandidate_PERS >, T_AthenaPoolCustomCnvWithKey< IParticleLinkContainer, IParticleLinkContainer_PERS >, T_AthenaPoolCustomCnvWithKey< LArHitContainer, LArHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< LArHitFloatContainer, LArHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< LArTTL1Container, LArTTL1Container_PERS >, T_AthenaPoolCustomCnvWithKey< McEventCollection, McEventCollection_PERS >, T_AthenaPoolCustomCnvWithKey< MuonCaloEnergyContainer, MuonCaloEnergyContainer_PERS >, T_AthenaPoolCustomCnvWithKey< PhotonContainer, PhotonContainer_PERS >, T_AthenaPoolCustomCnvWithKey< Rec::MuonSpShowerContainer, MuonSpShowerContainer_PERS >, T_AthenaPoolCustomCnvWithKey< RingerRings, RingerRings_PERS >, T_AthenaPoolCustomCnvWithKey< SiHitCollection, SiHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< SimulationHitCollection, SimulationHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< SrCaloCalibrationHitContainer, SrCaloCalibrationHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< T, P >, T_AthenaPoolCustomCnvWithKey< TileBeamElemContainer, TileBeamElemContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileCosmicMuonContainer, TileCosmicMuonContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileDigitsContainer, TileDigitsContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileHitContainer, TileHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileHitVector, TileHitVector_PERS >, T_AthenaPoolCustomCnvWithKey< TileL2Container, TileL2Container_PERS >, T_AthenaPoolCustomCnvWithKey< TileMuContainer, TileMuContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileMuonReceiverContainer, TileMuonReceiverContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileRawChannelContainer, TileRawChannelContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileTTL1Container, TileTTL1Container_PERS >, T_AthenaPoolCustomCnvWithKey< TrackCollection, TrackCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrackRecordCollection, TrackRecordCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TRANS, TPCNV_CUR::Pers_t >, T_AthenaPoolCustomCnvWithKey< TRANS, typename TPCNV_CUR::Pers_t >, T_AthenaPoolCustomCnvWithKey< TrigEMCluster, TrigEMCluster_PERS >, T_AthenaPoolCustomCnvWithKey< TrigMonConfig, TrigMonConfig_PERS >, T_AthenaPoolCustomCnvWithKey< TrigMonConfigCollection, TrigMonConfigCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrigMonEvent, TrigMonEvent_PERS >, T_AthenaPoolCustomCnvWithKey< TrigMonEventCollection, TrigMonEventCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrigOperationalInfo, TrigOperationalInfo_PERS >, T_AthenaPoolCustomCnvWithKey< TrigOperationalInfoCollection, TrigOperationalInfoCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrigRNNOutput, TrigRNNOutput_PERS >, T_AthenaPoolCustomCnvWithKey< TrigRoiDescriptor, TrigRoiDescriptor_PERS >, T_AthenaPoolCustomCnvWithKey< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrigTauCluster, TrigTauCluster_PERS >, T_AthenaPoolCustomCnvWithKey< TrigTauClusterDetails, TrigTauClusterDetails_PERS >, T_AthenaPoolCustomCnvWithKey< TrigTauTracksInfo, TrigTauTracksInfo_PERS >, T_AthenaPoolCustomCnvWithKey< Trk::ElementTable, ElementTable_PERS >, T_AthenaPoolCustomCnvWithKey< Trk::LayerMaterialMap, LayerMaterialMap_PERS >, T_AthenaPoolCustomCnvWithKey< Trk::MaterialStepCollection, MaterialStepCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TRTUncompressedHitCollection, TRT_HitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TruthEtIsolationsContainer, TruthEtIsolationsContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TruthParticleContainer, TruthParticleContainer_PERS >, T_AthenaPoolCustomCnvWithKey< ViewVector< DV >, ViewVector< DV > >, T_AthenaPoolCustomCnvWithKey< XAOD, XAOD >, T_AthenaPoolCustomCnvWithKey< xAOD::ShallowAuxContainer, xAOD::ShallowAuxContainer >, T_AthenaPoolCustomCnvWithKey< ZdcRawChannelCollection, ZdcRawChannelCollection_PERS >, and T_LArCondAthenaPoolCnv< T >.

◆ detStore()

const ServiceHandle< StoreGateSvc > & AthenaPoolConverter::detStore ( ) const
inlineinherited

Handle to DetectorStore.

Definition at line 68 of file AthenaPoolConverter.h.

68{ return m_detStore; }
ServiceHandle< StoreGateSvc > m_detStore

◆ fillRepRefs()

StatusCode AthenaPoolConverter::fillRepRefs ( IOpaqueAddress * pAddr,
DataObject * pObj )
overridevirtualinherited

Create a POOL persistent representation for a transient object.

Parameters
pAddr[IN] IOpaqueAddress of POOL persistent representation.
pObj[IN] pointer to the transient object.

Reimplemented in T_AthenaPoolCoolMultChanCnv< COLL_T, ELEM_T, ELEM_P >, T_AthenaPoolCoolMultChanCnv< AlignableTransformContainer, AlignableTransform_TRANS, AlignableTransform_PERS >, T_AthenaPoolCoolMultChanCnv< LArAutoCorrComplete, LArAutoCorrTransType, LArAutoCorrPersType >, T_AthenaPoolCoolMultChanCnv< LArAutoCorrMC, LArAutoCorrTransType, LArAutoCorrPersType >, T_AthenaPoolCoolMultChanCnv< LArCaliWaveContainer, LArCaliWaveTransType, LArCaliWavePersType >, T_AthenaPoolCoolMultChanCnv< LArDSPThresholdsComplete, LArDSPThrTransType, LArDSPThrPersType >, T_AthenaPoolCoolMultChanCnv< LArHVScaleCorrComplete, LArConditionsSubset< LArSingleFloatP >, LArSingleFloatSubset_p1 >, T_AthenaPoolCoolMultChanCnv< LArOFCBinComplete, LArOFCBinTransType, LArOFCBinPersType >, T_AthenaPoolCoolMultChanCnv< LArOFCComplete, LArOFCTransType, LArOFCPersType >, T_AthenaPoolCoolMultChanCnv< LArPedestalComplete, LArPedTransType, LArPedPersType >, T_AthenaPoolCoolMultChanCnv< LArPhysWaveContainer, LArPhysWaveTransType, LArPhysWavePersType >, T_AthenaPoolCoolMultChanCnv< LArRampComplete, LArRampTransType, LArRampPersType >, T_AthenaPoolCoolMultChanCnv< LArRampMC, LArRampTransType, LArRampPersType >, T_AthenaPoolCoolMultChanCnv< LArShape32MC, LArShapeTransType, LArShapePersType >, T_AthenaPoolCoolMultChanCnv< LArShapeComplete, LArShapeTransType2, LArShapePersType2 >, and T_AthenaPoolCoolMultChanCnv< TransientClass, LArConditionsSubset< LArSingleFloatP >, LArSingleFloatSubset_p1 >.

Definition at line 114 of file AthenaPoolConverter.cxx.

114 {
115 try {
116 if (!DataObjectToPool(pAddr, pObj).isSuccess()) {
117 ATH_MSG_ERROR("FillRepRefs failed, key = " << pObj->name());
118 return StatusCode::FAILURE;
119 }
120 } catch (std::exception& e) {
121 ATH_MSG_ERROR("fillRepRefs - caught exception: " << e.what());
122 return StatusCode::FAILURE;
123 }
124 return StatusCode::SUCCESS;
125}
virtual StatusCode DataObjectToPool(IOpaqueAddress *pAddr, DataObject *pObj)=0
Write an object into POOL.

◆ finalize()

StatusCode AthenaPoolConverter::finalize ( )
overridevirtualinherited

Definition at line 40 of file AthenaPoolConverter.cxx.

40 {
41 // Release AthenaPoolCnvSvc
42 if (!m_athenaPoolCnvSvc.release().isSuccess()) {
43 ATH_MSG_WARNING("Cannot release AthenaPoolCnvSvc.");
44 }
45 return(::Converter::finalize());
46}
#define ATH_MSG_WARNING(x,...)
ServiceHandle< IAthenaPoolCnvSvc > m_athenaPoolCnvSvc

◆ initialize()

template<class T>
virtual StatusCode T_AthenaPoolCnvBase< T >::initialize ( )
protectedvirtual

Gaudi Service Interface method implementations:

Reimplemented from AthenaPoolConverter.

Reimplemented in AlignableTransformContainerCnv, CaloTTOnAttrIdMapCnv, CaloTTOnOffIdMapCnv, CaloTTPpmRxIdMapCnv, CscPrepDataContainerCnv, CscRawDataContainerCnv, CscStripPrepDataContainerCnv, DataHeaderCnv, InDetTrackCnv, LArDigitContainerCnv, LArLATOMEHeaderContainerCnv, LArTTCellMapCnv, LayerMaterialMapCnv, MdtPrepDataContainerCnv, MM_RawDataContainerCnv, MMPrepDataContainerCnv, MuonCaloEnergiesCnv, MuonContainerCnv, MuonRdoContainerCnv< T >, MuonRdoContainerTPCnv< T, P, CONV >, MuonRdoContainerTPCnv< CscRawDataContainer, CscRawDataContainer_p4, CscRawDataContainerCnv_p4 >, MuonRdoContainerTPCnv< MdtCsmContainer, MdtCsmContainer_p1, MdtCsmContainerCnv_p1 >, MuonRdoContainerTPCnv< RpcPadContainer, RpcPadContainer_p2, RpcPadContainerCnv_p2 >, MuonRdoContainerTPCnv< TgcL1RdoContainer, TgcL1RdoContainer_p1, TgcL1RdoContainerCnv_p1 >, MuonRdoContainerTPCnv< TgcRdoContainer, TgcRdoContainer_p4, TgcRdoContainerCnv_p4 >, MVFVxContainerCnv, PhaseIIPixelRawDataContainerCnv, PhaseIIStripRawDataContainerCnv, PixelClusterContainerCnv, PixelRDO_ContainerCnv, RpcCoinDataContainerCnv, RpcPrepDataContainerCnv, SCT_ClusterContainerCnv, SCT_RDO_ContainerCnv, STGC_RawDataContainerCnv, sTgcPrepDataContainerCnv, T_AthenaPoolCustCnv< TRANS, PERS >, T_AthenaPoolCustCnv< AFP_SiDigiCollection, AFP_SiDigiCollection_PERS >, T_AthenaPoolCustCnv< AFP_SIDLocRecoEvCollection, AFP_SIDLocRecoEvCollection_PERS >, T_AthenaPoolCustCnv< AFP_SIDSimHitCollection, AFP_SIDSimHitCollection_PERS >, T_AthenaPoolCustCnv< AFP_TDDigiCollection, AFP_TDDigiCollection_PERS >, T_AthenaPoolCustCnv< AFP_TDLocRecoEvCollection, AFP_TDLocRecoEvCollection_PERS >, T_AthenaPoolCustCnv< AFP_TDSimHitCollection, AFP_TDSimHitCollection_PERS >, T_AthenaPoolCustCnv< ALFA_CLinkEvent, ALFA_CLinkEvent_PERS >, T_AthenaPoolCustCnv< ALFA_DigitCollection, ALFA_DigitCollection_PERS >, T_AthenaPoolCustCnv< ALFA_GloRecEvCollection, ALFA_GloRecEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_HitCollection, ALFA_HitCollection_PERS >, T_AthenaPoolCustCnv< ALFA_LocRecCorrEvCollection, ALFA_LocRecCorrEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_LocRecCorrODEvCollection, ALFA_LocRecCorrODEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_LocRecEvCollection, ALFA_LocRecEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_LocRecODEvCollection, ALFA_LocRecODEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_ODDigitCollection, ALFA_ODDigitCollection_PERS >, T_AthenaPoolCustCnv< ALFA_ODHitCollection, ALFA_ODHitCollection_PERS >, T_AthenaPoolCustCnv< Analysis::MuonContainer, MuonContainer_PERS >, T_AthenaPoolCustCnv< AthExDecay, AthExDecay_PERS >, T_AthenaPoolCustCnv< AthExElephantino, AthExElephantino_PERS >, T_AthenaPoolCustCnv< AthExFatObject, AthExFatObject_PERS >, T_AthenaPoolCustCnv< BCM_RDO_Container, BCM_RDO_Container_p0 >, T_AthenaPoolCustCnv< CaloCalibrationHitContainer, CaloCalibrationHitContainer_PERS >, T_AthenaPoolCustCnv< CaloRingsContainer, CaloRingsContainer_PERS >, T_AthenaPoolCustCnv< CaloTTOnAttrIdMap, CaloTTOnAttrId_P >, T_AthenaPoolCustCnv< CaloTTOnOffIdMap, CaloTTOnOffId_P >, T_AthenaPoolCustCnv< CaloTTPpmRxIdMap, CaloTTPpmRxId_P >, T_AthenaPoolCustCnv< COLL_T, ELEM_T >, T_AthenaPoolCustCnv< egammaContainer, egammaContainer_PERS >, T_AthenaPoolCustCnv< egDetailContainer, egDetailContainer_PERS >, T_AthenaPoolCustCnv< ElectronContainer, ElectronContainer_PERS >, T_AthenaPoolCustCnv< INav4MomAssocs, INav4MomAssocs_PERS >, T_AthenaPoolCustCnv< INav4MomLinkContainer, INav4MomLinkContainer_PERS >, T_AthenaPoolCustCnv< InDet::InDetLowBetaCandidate, InDetLowBetaCandidate_PERS >, T_AthenaPoolCustCnv< IParticleLinkContainer, IParticleLinkContainer_PERS >, T_AthenaPoolCustCnv< LArHitContainer, LArHitContainer_PERS >, T_AthenaPoolCustCnv< LArHitFloatContainer, LArHitContainer_PERS >, T_AthenaPoolCustCnv< LArHVScaleCorrComplete, LArConditionsSubset< LArSingleFloatP > >, T_AthenaPoolCustCnv< LArTTCellMap, LArTTCell_P >, T_AthenaPoolCustCnv< LArTTL1Container, LArTTL1Container_PERS >, T_AthenaPoolCustCnv< McEventCollection, McEventCollection_PERS >, T_AthenaPoolCustCnv< MuonCaloEnergyContainer, MuonCaloEnergyContainer_PERS >, T_AthenaPoolCustCnv< PhotonContainer, PhotonContainer_PERS >, T_AthenaPoolCustCnv< Rec::MuonSpShowerContainer, MuonSpShowerContainer_PERS >, T_AthenaPoolCustCnv< RingerRings, RingerRings_PERS >, T_AthenaPoolCustCnv< SiHitCollection, SiHitCollection_PERS >, T_AthenaPoolCustCnv< SimulationHitCollection, SimulationHitCollection_PERS >, T_AthenaPoolCustCnv< SrCaloCalibrationHitContainer, SrCaloCalibrationHitContainer_PERS >, T_AthenaPoolCustCnv< T, DataVector< T::IDENTIFIABLE > >, T_AthenaPoolCustCnv< T, P >, T_AthenaPoolCustCnv< T, T::PERSIST >, T_AthenaPoolCustCnv< T, typename T::PERSIST >, T_AthenaPoolCustCnv< TileBeamElemContainer, TileBeamElemContainer_PERS >, T_AthenaPoolCustCnv< TileCosmicMuonContainer, TileCosmicMuonContainer_PERS >, T_AthenaPoolCustCnv< TileDigitsContainer, TileDigitsContainer_PERS >, T_AthenaPoolCustCnv< TileHitContainer, TileHitContainer_PERS >, T_AthenaPoolCustCnv< TileHitVector, TileHitVector_PERS >, T_AthenaPoolCustCnv< TileL2Container, TileL2Container_PERS >, T_AthenaPoolCustCnv< TileMuContainer, TileMuContainer_PERS >, T_AthenaPoolCustCnv< TileMuonReceiverContainer, TileMuonReceiverContainer_PERS >, T_AthenaPoolCustCnv< TileRawChannelContainer, TileRawChannelContainer_PERS >, T_AthenaPoolCustCnv< TileTTL1Container, TileTTL1Container_PERS >, T_AthenaPoolCustCnv< TrackRecordCollection, TrackRecordCollection_PERS >, T_AthenaPoolCustCnv< TRANS, TPCNV_CUR::Pers_t >, T_AthenaPoolCustCnv< TrigEMCluster, TrigEMCluster_PERS >, T_AthenaPoolCustCnv< TrigMonConfig, TrigMonConfig_PERS >, T_AthenaPoolCustCnv< TrigMonConfigCollection, TrigMonConfigCollection_PERS >, T_AthenaPoolCustCnv< TrigMonEvent, TrigMonEvent_PERS >, T_AthenaPoolCustCnv< TrigMonEventCollection, TrigMonEventCollection_PERS >, T_AthenaPoolCustCnv< TrigOperationalInfo, TrigOperationalInfo_PERS >, T_AthenaPoolCustCnv< TrigOperationalInfoCollection, TrigOperationalInfoCollection_PERS >, T_AthenaPoolCustCnv< TrigRNNOutput, TrigRNNOutput_PERS >, T_AthenaPoolCustCnv< TrigRoiDescriptor, TrigRoiDescriptor_PERS >, T_AthenaPoolCustCnv< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_PERS >, T_AthenaPoolCustCnv< TrigTauCluster, TrigTauCluster_PERS >, T_AthenaPoolCustCnv< TrigTauClusterDetails, TrigTauClusterDetails_PERS >, T_AthenaPoolCustCnv< TrigTauTracksInfo, TrigTauTracksInfo_PERS >, T_AthenaPoolCustCnv< TRTUncompressedHitCollection, TRT_HitCollection_PERS >, T_AthenaPoolCustCnv< TruthEtIsolationsContainer, TruthEtIsolationsContainer_PERS >, T_AthenaPoolCustCnv< TruthParticleContainer, TruthParticleContainer_PERS >, T_AthenaPoolCustCnv< ViewVector< DV >, ViewVector< DV > >, T_AthenaPoolCustCnv< ZdcRawChannelCollection, ZdcRawChannelCollection_PERS >, T_AthenaPoolViewVectorCnv< DV >, TgcCoinDataContainerCnv, TgcPrepDataContainerCnv, TileCellContainerCnv, TrackCollectionCnv, TrackParticleContainerCnv, TRT_DriftCircleContainerCnv, TRT_RDO_ContainerCnv, V0ContainerCnv, VxContainerCnv, xAODSpacePointAuxContainerCnv, xAODTrackParticleAuxContainerCnv, and xAODTrackStateAuxContainerCnv.

◆ initMessaging()

void AthMessaging::initMessaging ( ) const
privateinherited

Initialize our message level and MessageSvc.

This method should only be called once.

Definition at line 39 of file AthMessaging.cxx.

40{
42 // If user did not set an explicit level, set a default
43 if (m_lvl == MSG::NIL) {
44 m_lvl = m_imsg ?
45 static_cast<MSG::Level>( m_imsg.load()->outputLevel(m_nm) ) :
46 MSG::INFO;
47 }
48}
std::string m_nm
Message source name.
std::atomic< IMessageSvc * > m_imsg
MessageSvc pointer.
std::atomic< MSG::Level > m_lvl
Current logging level.
IMessageSvc * getMessageSvc(bool quiet=false)
int outputLevel(const IMessageSvc *ims, const std::string &source)

◆ msg() [1/2]

MsgStream & AthMessaging::msg ( ) const
inlineinherited

The standard message stream.

Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.

Definition at line 167 of file AthMessaging.h.

168{
169 MsgStream* ms = m_msg_tls.get();
170 if (!ms) {
171 if (!m_initialized.test_and_set()) initMessaging();
172 ms = new MsgStream(m_imsg,m_nm);
173 m_msg_tls.reset( ms );
174 }
175
176 ms->setLevel (m_lvl);
177 return *ms;
178}
boost::thread_specific_ptr< MsgStream > m_msg_tls
MsgStream instance (a std::cout like with print-out levels).
void initMessaging() const
Initialize our message level and MessageSvc.

◆ msg() [2/2]

MsgStream & AthMessaging::msg ( const MSG::Level lvl) const
inlineinherited

The standard message stream.

Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.

Definition at line 182 of file AthMessaging.h.

183{ return msg() << lvl; }
MsgStream & msg() const
The standard message stream.

◆ msgLvl()

bool AthMessaging::msgLvl ( const MSG::Level lvl) const
inlineinherited

Test the output level.

Parameters
lvlThe message level to test against
Returns
boolean Indicating if messages at given level will be printed
Return values
trueMessages at level "lvl" will be printed

Definition at line 151 of file AthMessaging.h.

152{
153 // If user did not set explicit message level we have to initialize
154 // the messaging and retrieve the default via the MessageSvc.
155 if (m_lvl==MSG::NIL && !m_initialized.test_and_set()) initMessaging();
156
157 if (m_lvl <= lvl) {
158 msg() << lvl;
159 return true;
160 } else {
161 return false;
162 }
163}

◆ PoolToDataObject()

template<class T>
virtual StatusCode T_AthenaPoolCnvBase< T >::PoolToDataObject ( DataObject *& pObj,
const Token * token,
const std::string & key )
protectedvirtual

Read an object from POOL.

Parameters
pObj[OUT] pointer to the transient object.
token[IN] POOL token of the persistent representation.
key[IN] SG key of the object being read.

Implements AthenaPoolConverter.

Reimplemented in T_AthenaPoolCustCnv< TRANS, PERS >, T_AthenaPoolCustCnv< AFP_SiDigiCollection, AFP_SiDigiCollection_PERS >, T_AthenaPoolCustCnv< AFP_SIDLocRecoEvCollection, AFP_SIDLocRecoEvCollection_PERS >, T_AthenaPoolCustCnv< AFP_SIDSimHitCollection, AFP_SIDSimHitCollection_PERS >, T_AthenaPoolCustCnv< AFP_TDDigiCollection, AFP_TDDigiCollection_PERS >, T_AthenaPoolCustCnv< AFP_TDLocRecoEvCollection, AFP_TDLocRecoEvCollection_PERS >, T_AthenaPoolCustCnv< AFP_TDSimHitCollection, AFP_TDSimHitCollection_PERS >, T_AthenaPoolCustCnv< ALFA_CLinkEvent, ALFA_CLinkEvent_PERS >, T_AthenaPoolCustCnv< ALFA_DigitCollection, ALFA_DigitCollection_PERS >, T_AthenaPoolCustCnv< ALFA_GloRecEvCollection, ALFA_GloRecEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_HitCollection, ALFA_HitCollection_PERS >, T_AthenaPoolCustCnv< ALFA_LocRecCorrEvCollection, ALFA_LocRecCorrEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_LocRecCorrODEvCollection, ALFA_LocRecCorrODEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_LocRecEvCollection, ALFA_LocRecEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_LocRecODEvCollection, ALFA_LocRecODEvCollection_PERS >, T_AthenaPoolCustCnv< ALFA_ODDigitCollection, ALFA_ODDigitCollection_PERS >, T_AthenaPoolCustCnv< ALFA_ODHitCollection, ALFA_ODHitCollection_PERS >, T_AthenaPoolCustCnv< Analysis::MuonContainer, MuonContainer_PERS >, T_AthenaPoolCustCnv< AthExDecay, AthExDecay_PERS >, T_AthenaPoolCustCnv< AthExElephantino, AthExElephantino_PERS >, T_AthenaPoolCustCnv< AthExFatObject, AthExFatObject_PERS >, T_AthenaPoolCustCnv< BCM_RDO_Container, BCM_RDO_Container_p0 >, T_AthenaPoolCustCnv< CaloCalibrationHitContainer, CaloCalibrationHitContainer_PERS >, T_AthenaPoolCustCnv< CaloRingsContainer, CaloRingsContainer_PERS >, T_AthenaPoolCustCnv< CaloTTOnAttrIdMap, CaloTTOnAttrId_P >, T_AthenaPoolCustCnv< CaloTTOnOffIdMap, CaloTTOnOffId_P >, T_AthenaPoolCustCnv< CaloTTPpmRxIdMap, CaloTTPpmRxId_P >, T_AthenaPoolCustCnv< COLL_T, ELEM_T >, T_AthenaPoolCustCnv< egammaContainer, egammaContainer_PERS >, T_AthenaPoolCustCnv< egDetailContainer, egDetailContainer_PERS >, T_AthenaPoolCustCnv< ElectronContainer, ElectronContainer_PERS >, T_AthenaPoolCustCnv< INav4MomAssocs, INav4MomAssocs_PERS >, T_AthenaPoolCustCnv< INav4MomLinkContainer, INav4MomLinkContainer_PERS >, T_AthenaPoolCustCnv< InDet::InDetLowBetaCandidate, InDetLowBetaCandidate_PERS >, T_AthenaPoolCustCnv< IParticleLinkContainer, IParticleLinkContainer_PERS >, T_AthenaPoolCustCnv< LArHitContainer, LArHitContainer_PERS >, T_AthenaPoolCustCnv< LArHitFloatContainer, LArHitContainer_PERS >, T_AthenaPoolCustCnv< LArHVScaleCorrComplete, LArConditionsSubset< LArSingleFloatP > >, T_AthenaPoolCustCnv< LArTTCellMap, LArTTCell_P >, T_AthenaPoolCustCnv< LArTTL1Container, LArTTL1Container_PERS >, T_AthenaPoolCustCnv< McEventCollection, McEventCollection_PERS >, T_AthenaPoolCustCnv< MuonCaloEnergyContainer, MuonCaloEnergyContainer_PERS >, T_AthenaPoolCustCnv< PhotonContainer, PhotonContainer_PERS >, T_AthenaPoolCustCnv< Rec::MuonSpShowerContainer, MuonSpShowerContainer_PERS >, T_AthenaPoolCustCnv< RingerRings, RingerRings_PERS >, T_AthenaPoolCustCnv< SiHitCollection, SiHitCollection_PERS >, T_AthenaPoolCustCnv< SimulationHitCollection, SimulationHitCollection_PERS >, T_AthenaPoolCustCnv< SrCaloCalibrationHitContainer, SrCaloCalibrationHitContainer_PERS >, T_AthenaPoolCustCnv< T, DataVector< T::IDENTIFIABLE > >, T_AthenaPoolCustCnv< T, P >, T_AthenaPoolCustCnv< T, T::PERSIST >, T_AthenaPoolCustCnv< T, typename T::PERSIST >, T_AthenaPoolCustCnv< TileBeamElemContainer, TileBeamElemContainer_PERS >, T_AthenaPoolCustCnv< TileCosmicMuonContainer, TileCosmicMuonContainer_PERS >, T_AthenaPoolCustCnv< TileDigitsContainer, TileDigitsContainer_PERS >, T_AthenaPoolCustCnv< TileHitContainer, TileHitContainer_PERS >, T_AthenaPoolCustCnv< TileHitVector, TileHitVector_PERS >, T_AthenaPoolCustCnv< TileL2Container, TileL2Container_PERS >, T_AthenaPoolCustCnv< TileMuContainer, TileMuContainer_PERS >, T_AthenaPoolCustCnv< TileMuonReceiverContainer, TileMuonReceiverContainer_PERS >, T_AthenaPoolCustCnv< TileRawChannelContainer, TileRawChannelContainer_PERS >, T_AthenaPoolCustCnv< TileTTL1Container, TileTTL1Container_PERS >, T_AthenaPoolCustCnv< TrackRecordCollection, TrackRecordCollection_PERS >, T_AthenaPoolCustCnv< TRANS, TPCNV_CUR::Pers_t >, T_AthenaPoolCustCnv< TrigEMCluster, TrigEMCluster_PERS >, T_AthenaPoolCustCnv< TrigMonConfig, TrigMonConfig_PERS >, T_AthenaPoolCustCnv< TrigMonConfigCollection, TrigMonConfigCollection_PERS >, T_AthenaPoolCustCnv< TrigMonEvent, TrigMonEvent_PERS >, T_AthenaPoolCustCnv< TrigMonEventCollection, TrigMonEventCollection_PERS >, T_AthenaPoolCustCnv< TrigOperationalInfo, TrigOperationalInfo_PERS >, T_AthenaPoolCustCnv< TrigOperationalInfoCollection, TrigOperationalInfoCollection_PERS >, T_AthenaPoolCustCnv< TrigRNNOutput, TrigRNNOutput_PERS >, T_AthenaPoolCustCnv< TrigRoiDescriptor, TrigRoiDescriptor_PERS >, T_AthenaPoolCustCnv< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_PERS >, T_AthenaPoolCustCnv< TrigTauCluster, TrigTauCluster_PERS >, T_AthenaPoolCustCnv< TrigTauClusterDetails, TrigTauClusterDetails_PERS >, T_AthenaPoolCustCnv< TrigTauTracksInfo, TrigTauTracksInfo_PERS >, T_AthenaPoolCustCnv< TRTUncompressedHitCollection, TRT_HitCollection_PERS >, T_AthenaPoolCustCnv< TruthEtIsolationsContainer, TruthEtIsolationsContainer_PERS >, T_AthenaPoolCustCnv< TruthParticleContainer, TruthParticleContainer_PERS >, T_AthenaPoolCustCnv< ViewVector< DV >, ViewVector< DV > >, T_AthenaPoolCustCnv< ZdcRawChannelCollection, ZdcRawChannelCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TRANS, PERS >, T_AthenaPoolCustomCnvWithKey< AFP_SiDigiCollection, AFP_SiDigiCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_SIDLocRecoEvCollection, AFP_SIDLocRecoEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_SIDSimHitCollection, AFP_SIDSimHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_TDDigiCollection, AFP_TDDigiCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_TDLocRecoEvCollection, AFP_TDLocRecoEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< AFP_TDSimHitCollection, AFP_TDSimHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_CLinkEvent, ALFA_CLinkEvent_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_DigitCollection, ALFA_DigitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_GloRecEvCollection, ALFA_GloRecEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_HitCollection, ALFA_HitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_LocRecCorrEvCollection, ALFA_LocRecCorrEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_LocRecCorrODEvCollection, ALFA_LocRecCorrODEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_LocRecEvCollection, ALFA_LocRecEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_LocRecODEvCollection, ALFA_LocRecODEvCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_ODDigitCollection, ALFA_ODDigitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< ALFA_ODHitCollection, ALFA_ODHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< Analysis::MuonContainer, MuonContainer_PERS >, T_AthenaPoolCustomCnvWithKey< AthExDecay, AthExDecay_PERS >, T_AthenaPoolCustomCnvWithKey< AthExElephantino, AthExElephantino_PERS >, T_AthenaPoolCustomCnvWithKey< AthExFatObject, AthExFatObject_PERS >, T_AthenaPoolCustomCnvWithKey< AUXSTORE, AUXSTORE >, T_AthenaPoolCustomCnvWithKey< BCM_RDO_Container, BCM_RDO_Container_p0 >, T_AthenaPoolCustomCnvWithKey< CaloCalibrationHitContainer, CaloCalibrationHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< CaloRingsContainer, CaloRingsContainer_PERS >, T_AthenaPoolCustomCnvWithKey< egammaContainer, egammaContainer_PERS >, T_AthenaPoolCustomCnvWithKey< egDetailContainer, egDetailContainer_PERS >, T_AthenaPoolCustomCnvWithKey< ElectronContainer, ElectronContainer_PERS >, T_AthenaPoolCustomCnvWithKey< INav4MomAssocs, INav4MomAssocs_PERS >, T_AthenaPoolCustomCnvWithKey< INav4MomLinkContainer, INav4MomLinkContainer_PERS >, T_AthenaPoolCustomCnvWithKey< InDet::InDetLowBetaCandidate, InDetLowBetaCandidate_PERS >, T_AthenaPoolCustomCnvWithKey< IParticleLinkContainer, IParticleLinkContainer_PERS >, T_AthenaPoolCustomCnvWithKey< LArHitContainer, LArHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< LArHitFloatContainer, LArHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< LArTTL1Container, LArTTL1Container_PERS >, T_AthenaPoolCustomCnvWithKey< McEventCollection, McEventCollection_PERS >, T_AthenaPoolCustomCnvWithKey< MuonCaloEnergyContainer, MuonCaloEnergyContainer_PERS >, T_AthenaPoolCustomCnvWithKey< PhotonContainer, PhotonContainer_PERS >, T_AthenaPoolCustomCnvWithKey< Rec::MuonSpShowerContainer, MuonSpShowerContainer_PERS >, T_AthenaPoolCustomCnvWithKey< RingerRings, RingerRings_PERS >, T_AthenaPoolCustomCnvWithKey< SiHitCollection, SiHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< SimulationHitCollection, SimulationHitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< SrCaloCalibrationHitContainer, SrCaloCalibrationHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< T, P >, T_AthenaPoolCustomCnvWithKey< TileBeamElemContainer, TileBeamElemContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileCosmicMuonContainer, TileCosmicMuonContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileDigitsContainer, TileDigitsContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileHitContainer, TileHitContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileHitVector, TileHitVector_PERS >, T_AthenaPoolCustomCnvWithKey< TileL2Container, TileL2Container_PERS >, T_AthenaPoolCustomCnvWithKey< TileMuContainer, TileMuContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileMuonReceiverContainer, TileMuonReceiverContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileRawChannelContainer, TileRawChannelContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TileTTL1Container, TileTTL1Container_PERS >, T_AthenaPoolCustomCnvWithKey< TrackCollection, TrackCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrackRecordCollection, TrackRecordCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TRANS, TPCNV_CUR::Pers_t >, T_AthenaPoolCustomCnvWithKey< TRANS, typename TPCNV_CUR::Pers_t >, T_AthenaPoolCustomCnvWithKey< TrigEMCluster, TrigEMCluster_PERS >, T_AthenaPoolCustomCnvWithKey< TrigMonConfig, TrigMonConfig_PERS >, T_AthenaPoolCustomCnvWithKey< TrigMonConfigCollection, TrigMonConfigCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrigMonEvent, TrigMonEvent_PERS >, T_AthenaPoolCustomCnvWithKey< TrigMonEventCollection, TrigMonEventCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrigOperationalInfo, TrigOperationalInfo_PERS >, T_AthenaPoolCustomCnvWithKey< TrigOperationalInfoCollection, TrigOperationalInfoCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrigRNNOutput, TrigRNNOutput_PERS >, T_AthenaPoolCustomCnvWithKey< TrigRoiDescriptor, TrigRoiDescriptor_PERS >, T_AthenaPoolCustomCnvWithKey< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TrigTauCluster, TrigTauCluster_PERS >, T_AthenaPoolCustomCnvWithKey< TrigTauClusterDetails, TrigTauClusterDetails_PERS >, T_AthenaPoolCustomCnvWithKey< TrigTauTracksInfo, TrigTauTracksInfo_PERS >, T_AthenaPoolCustomCnvWithKey< Trk::ElementTable, ElementTable_PERS >, T_AthenaPoolCustomCnvWithKey< Trk::LayerMaterialMap, LayerMaterialMap_PERS >, T_AthenaPoolCustomCnvWithKey< Trk::MaterialStepCollection, MaterialStepCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TRTUncompressedHitCollection, TRT_HitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TruthEtIsolationsContainer, TruthEtIsolationsContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TruthParticleContainer, TruthParticleContainer_PERS >, T_AthenaPoolCustomCnvWithKey< ViewVector< DV >, ViewVector< DV > >, T_AthenaPoolCustomCnvWithKey< XAOD, XAOD >, T_AthenaPoolCustomCnvWithKey< xAOD::ShallowAuxContainer, xAOD::ShallowAuxContainer >, and T_AthenaPoolCustomCnvWithKey< ZdcRawChannelCollection, ZdcRawChannelCollection_PERS >.

◆ repSvcType()

long AthenaPoolConverter::repSvcType ( ) const
overridevirtualinherited

Definition at line 48 of file AthenaPoolConverter.cxx.

48 {
50}
int type() const
Access to full type.
Definition DbType.h:65
static const DbType POOL_StorageType
Definition DbType.h:84

◆ setLevel()

void AthMessaging::setLevel ( MSG::Level lvl)
inherited

Change the current logging level.

Use this rather than msg().setLevel() for proper operation with MT.

Definition at line 28 of file AthMessaging.cxx.

29{
30 m_lvl = lvl;
31}

◆ setPlacement()

template<class T>
virtual Placement T_AthenaPoolCnvBase< T >::setPlacement ( const std::string & key,
const std::string & output )
protectedvirtual

Set POOL placement.

Implements AthenaPoolConverter.

◆ setPlacementWithType()

Placement AthenaPoolConverter::setPlacementWithType ( const std::string & tname,
const std::string & key,
const std::string & output )
protectedvirtualinherited

Set POOL placement hint for a given type.

Parameters
tname[IN] type name.
key[IN] SG key.

Definition at line 140 of file AthenaPoolConverter.cxx.

140 {
141 // Resulting placement
142 Placement placement;
143
144 // Extract the file name and global technology (if available)
145 std::string::size_type pos1 = output.find('[');
146 std::string outputConnectionSpec = output.substr(0, pos1);
147 placement.setFileName(outputConnectionSpec);
148
149 // Override streaming parameters from StreamTool if requested.
150 std::string containerPrefix{APRDefaults::WriteConfig::getEventDataName()};
151 std::string dhContainerPrefix{APRDefaults::WriteConfig::getDataHeaderName()};
152 std::string containerName{""};
153 std::string containerNameHint{""};
154 std::string branchNameHint{""};
155 std::string containerFriendPostfix{""};
156 while (pos1 != std::string::npos) {
157 const std::string::size_type pos2 = output.find('=', pos1);
158 const std::string thisKey = output.substr(pos1 + 1, pos2 - pos1 - 1);
159 const std::string::size_type pos3 = output.find(']', pos2);
160 const std::string value = output.substr(pos2 + 1, pos3 - pos2 - 1);
161 if (thisKey == "OutputCollection") {
162 dhContainerPrefix = std::move(value);
163 } else if (thisKey == "PoolContainerPrefix") {
164 containerPrefix = std::move(value);
165 } else if (thisKey == "TopLevelContainerName") {
166 containerNameHint = std::move(value);
167 } else if (thisKey == "SubLevelBranchName") {
168 branchNameHint = std::move(value);
169 } else if (thisKey == "PoolContainerFriendPostfix") {
170 containerFriendPostfix = std::move(value);
171 }
172 pos1 = output.find('[', pos3);
173 }
174
175 // Extract the technology from the container prefix (if available)
176 if (auto colonPost = containerPrefix.find(':'); colonPost != std::string::npos) {
177 placement.setTechnology(pool::DbType::getType(containerPrefix.substr(0, colonPost)).type());
178 containerPrefix.erase(0, colonPost + 1); // Note that DataHeader and EventTag bypass this...
179 }
180
181 // --- Special types: DataHeader & Form
182 if ( tname.starts_with(APRDefaults::DataHeaderTypeName) ) {
183 containerName = std::format("{}{}({}{})",
184 dhContainerPrefix,
185 tname.starts_with(APRDefaults::DataHeaderFormTypeName) ? "Form" : "",
186 key.back() == '/' ? key : "",
187 tname);
188 }
189 // AttributeList - writing attributes separately to EventTag container group
190 else if ( tname.starts_with(APRDefaults::EventTagTypeName) ) {
191 containerName = std::format("{}({})",
193 key);
194 }
195 // all other object types
196 else {
197 constexpr std::string_view typeTok = "<type>", keyTok = "<key>";
198 containerName = std::format("{}{}{}{}",
199 containerPrefix,
200 containerFriendPostfix,
201 containerNameHint,
202 branchNameHint.empty() ? "" : std::format("({})", branchNameHint));
203 if (auto pos = containerName.find(typeTok); pos != std::string::npos) {
204 containerName.replace(pos, typeTok.size(), tname);
205 }
206 if (auto pos = containerName.find(keyTok); pos != std::string::npos) {
207 containerName.replace(pos, keyTok.size(), key.empty() ? tname : key);
208 }
209 }
210
211 // Set the container name
212 placement.setContainerName(containerName);
213 return(placement);
214}
Placement & setContainerName(const std::string &containerName)
Set container name.
Definition Placement.h:35
Placement & setFileName(const std::string &fileName)
Set file name.
Definition Placement.h:31
Placement & setTechnology(int technology)
Set technology type.
Definition Placement.h:39
static DbType getType(const std::string &name)
Access known storage type object by name.
const char * getEventDataName()
const char * getDataHeaderName()
const char * getEventTagName()
static constexpr const char * DataHeaderTypeName
static constexpr const char * EventTagTypeName
static constexpr const char * DataHeaderFormTypeName
output
Definition merge.py:16

◆ storageType()

long AthenaPoolConverter::storageType ( )
staticinherited
Returns
storage type.

Definition at line 127 of file AthenaPoolConverter.cxx.

127 {
129}

Member Data Documentation

◆ ATLAS_THREAD_SAFE

std::atomic_flag m_initialized AthMessaging::ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT
mutableprivateinherited

Messaging initialized (initMessaging).

Definition at line 141 of file AthMessaging.h.

◆ m_athenaPoolCnvSvc

ServiceHandle<IAthenaPoolCnvSvc> AthenaPoolConverter::m_athenaPoolCnvSvc
protectedinherited

Definition at line 108 of file AthenaPoolConverter.h.

◆ m_classDesc

template<class T>
RootType T_AthenaPoolCnvBase< T >::m_classDesc
protected

Definition at line 58 of file T_AthenaPoolCnvBase.h.

◆ m_conv_mut

CallMutex AthenaPoolConverter::m_conv_mut
protectedinherited

Definition at line 111 of file AthenaPoolConverter.h.

◆ m_detStore

ServiceHandle<StoreGateSvc> AthenaPoolConverter::m_detStore
protectedinherited

Definition at line 107 of file AthenaPoolConverter.h.

◆ m_imsg

std::atomic<IMessageSvc*> AthMessaging::m_imsg { nullptr }
mutableprivateinherited

MessageSvc pointer.

Definition at line 135 of file AthMessaging.h.

135{ nullptr };

◆ m_lvl

std::atomic<MSG::Level> AthMessaging::m_lvl { MSG::NIL }
mutableprivateinherited

Current logging level.

Definition at line 138 of file AthMessaging.h.

138{ MSG::NIL };

◆ m_msg_tls

boost::thread_specific_ptr<MsgStream> AthMessaging::m_msg_tls
mutableprivateinherited

MsgStream instance (a std::cout like with print-out levels).

Definition at line 132 of file AthMessaging.h.

◆ m_nm

std::string AthMessaging::m_nm
privateinherited

Message source name.

Definition at line 129 of file AthMessaging.h.


The documentation for this class was generated from the following file: