ATLAS Offline Software
Loading...
Searching...
No Matches
AlignableTransformContainerCnv Class Referenceabstract

#include <AlignableTransformContainerCnv.h>

Inheritance diagram for AlignableTransformContainerCnv:
Collaboration diagram for AlignableTransformContainerCnv:

Public Member Functions

 AlignableTransformContainerCnv (ISvcLocator *svcloc)
virtual StatusCode finalize () override
virtual long repSvcType () const override
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 AlignableTransform_PERS * createPersistent (AlignableTransform_TRANS *transObj)
 method to be implemented by the developer.
virtual AlignableTransform_TRANS * createTransient (const Token *token)
 method to be implemented by the developer.
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.
StatusCode objectToAttrListColl ATLAS_NOT_THREAD_SAFE (AlignableTransformContainer *obj, IOpaqueAddress *&pAddr, CondAttrListCollection *&attrListColl, std::unique_ptr< Token > &token)
 Write out objects stored in "obj" into POOL and save the tokens in a CondAttrListCollection, as well write out "obj" i.e.
StatusCode attrListCollToObject (CondAttrListCollection *attrListColl, AlignableTransformContainer *&obj)
 Read in objects from POOL for the tokens stored CondAttrListCollection and save the objects in the output collection.
StatusCode condMultChanCollImplToObject (const std::string &collImplToken, AlignableTransformContainer *&obj)
 Read in CondAttrListCollImpl and the objects for its tokens, saving them in the output collection.
P * poolReadObject (const Token *token)
 Read object of type P.
AlignableTransform_TRANS * poolReadObject (const Token *token)
virtual StatusCode transToPers (AlignableTransformContainer *obj, AlignableTransform_TRANS *&persObj) override
 Dummy methods not needed here.
virtual StatusCode transToPers (TRANS *obj, PERS *&persObj)=0
virtual StatusCode persToTrans (AlignableTransformContainer *&transObj, AlignableTransform_TRANS *obj) override
virtual StatusCode persToTrans (TRANS *&transObj, PERS *obj)=0
template<class P>
Placement setPlacementForP (P &p, const std::string &key, const std::string &output)
 Set POOL placement for type P.
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.
template<class P>
StatusCode objectToPool (P *pObj, std::unique_ptr< Token > &token, const std::string &key, const std::string &output)
 Write an object into POOL returning its token.
template<class P>
StatusCode poolToObject (const Token *token, P *&pObj)
 Read an object from POOL.
virtual bool compareClassGuid (const Token *token, const Guid &clid) const
 Compare POOL class GUID with the one of the object being read.
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.

Protected Attributes

int m_persCtx
 Persistency context in which to read all objects (extracted from the Collection Address).
RootType m_classDesc
ServiceHandle< StoreGateSvc > m_detStore
ServiceHandle< IAthenaPoolCnvSvc > m_athenaPoolCnvSvc
CallMutex m_conv_mut

Private Types

typedef std::map< std::string, RootType > ClassMap

Private Member Functions

virtual StatusCode initialize ()
 Gaudi Service Interface method implementations:
void initMessaging () const
 Initialize our message level and MessageSvc.

Private Attributes

std::string m_className
ClassMap m_classDescs
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).

Friends

class CnvFactory< AlignableTransformContainerCnv >

Detailed Description

Definition at line 24 of file AlignableTransformContainerCnv.h.

Member Typedef Documentation

◆ CallMutex

typedef std::mutex AthenaPoolConverter::CallMutex
protectedinherited

Definition at line 110 of file AthenaPoolConverter.h.

◆ ClassMap

template<class TRANS, class PERS>
typedef std::map<std::string, RootType> T_AthenaPoolCustCnv< TRANS, PERS >::ClassMap
privateinherited

Definition at line 86 of file T_AthenaPoolCustCnv.h.

Constructor & Destructor Documentation

◆ AlignableTransformContainerCnv()

AlignableTransformContainerCnv::AlignableTransformContainerCnv ( ISvcLocator * svcloc)
inline

Definition at line 31 of file AlignableTransformContainerCnv.h.

T_AthenaPoolCoolMultChanCnv< AlignableTransformContainer, AlignableTransform_TRANS, AlignableTransform_PERS > AlignableTransformContainerCnvBase

Member Function Documentation

◆ ATLAS_NOT_THREAD_SAFE()

StatusCode objectToAttrListColl T_AthenaPoolCoolMultChanCnv< AlignableTransformContainer, AlignableTransform_TRANS, AlignableTransform_PERS >::ATLAS_NOT_THREAD_SAFE ( AlignableTransformContainer * obj,
IOpaqueAddress *& pAddr,
CondAttrListCollection *& attrListColl,
std::unique_ptr< Token > & token )
protectedinherited

Write out objects stored in "obj" into POOL and save the tokens in a CondAttrListCollection, as well write out "obj" i.e.

CondMultChanCollImpl

Parameters
obj[IN] pointer to the collection of objects.
attrListColl[OUT] CondAttrListCollection filled with tokens
token[OUT] Token from writing out CondMultChanCollImpl

◆ attrListCollToObject()

Read in objects from POOL for the tokens stored CondAttrListCollection and save the objects in the output collection.

Parameters
attrListColl[IN] CondAttrListCollection filled with tokens
obj[OUT] pointer to the collection of objects.

◆ classID()

template<class TRANS, class PERS>
CLID T_AthenaPoolCustCnv< TRANS, PERS >::classID ( )
staticinherited
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()

template<class TRANS, class PERS>
virtual bool T_AthenaPoolCustCnv< TRANS, PERS >::compareClassGuid ( const Token * token,
const Guid & clid ) const
protectedvirtualinherited

Compare POOL class GUID with the one of the object being read.

Parameters
clid[IN] GUID to compare
Returns
true if the type of the object about to be read matches the GUID

◆ condMultChanCollImplToObject()

StatusCode T_AthenaPoolCoolMultChanCnv< AlignableTransformContainer, AlignableTransform_TRANS, AlignableTransform_PERS >::condMultChanCollImplToObject ( const std::string & collImplToken,
AlignableTransformContainer *& obj )
protectedinherited

Read in CondAttrListCollImpl and the objects for its tokens, saving them in the output collection.

Parameters
collImplToken[IN] CondAttrListCollImpl token
obj[OUT] pointer to the collection of objects.

◆ createObj()

virtual StatusCode T_AthenaPoolCoolMultChanCnv< AlignableTransformContainer, AlignableTransform_TRANS, AlignableTransform_PERS >::createObj ( IOpaqueAddress * pAddr,
DataObject *& pObj )
overrideprotectedvirtualinherited

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 from AthenaPoolConverter.

◆ createPersistent()

AlignableTransform_PERS * AlignableTransformContainerCnv::createPersistent ( AlignableTransform_TRANS * obj)
protectedvirtual

method to be implemented by the developer.

It should create the persistent representation of the object, using the default top-level TP converter.

Parameters
obj[IN] transient object
Returns
the created persistent representation (by pointer)

Reimplemented from T_AthenaPoolCoolMultChanCnv< AlignableTransformContainer, AlignableTransform_TRANS, AlignableTransform_PERS >.

Definition at line 15 of file AlignableTransformContainerCnv.cxx.

15 {
16 MsgStream log(msgSvc(), "AlignableTransformContainerCnv" );
17 AlignableTransformCnv_p1 cnv;
18 AlignableTransform_PERS* persObj = cnv.createPersistent( transObj, log );
19 if (log.level()<=MSG::DEBUG) log << MSG::DEBUG << "AlignableTransformContainer write a new AlignableTransform_PERS " << endmsg;
20 return persObj;
21}
AlignableTransform_p1 AlignableTransform_PERS
#define endmsg
virtual PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of a transient object.

◆ createRep()

virtual StatusCode T_AthenaPoolCoolMultChanCnv< AlignableTransformContainer, AlignableTransform_TRANS, AlignableTransform_PERS >::createRep ( DataObject * pObj,
IOpaqueAddress *& pAddr )
overrideprotectedvirtualinherited

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 from AthenaPoolConverter.

◆ createTransient()

AlignableTransform_TRANS * AlignableTransformContainerCnv::createTransient ( const Token * token)
protectedvirtual

method to be implemented by the developer.

It has to find out the type of the persistent object to be read (by comparing GUIDs), read it using poolReadObject(), call TLP converter to create a transient representation and return it. if the version 1 of poolReadObject is used, the persistent object HAS TO BE DELETED manually.

Reimplemented from T_AthenaPoolCoolMultChanCnv< AlignableTransformContainer, AlignableTransform_TRANS, AlignableTransform_PERS >.

Definition at line 23 of file AlignableTransformContainerCnv.cxx.

23 {
24 MsgStream log(msgSvc(), "AlignableTransformContainerCnv" );
25 static const Guid p1_guid("BA1A841C-8D92-45AE-9AD1-9AF7A1736844");
26 static const Guid p0_guid("E779C6B5-3F2A-473E-B35E-6CCB345E0665");
27 if( compareClassGuid(token, p1_guid) ) {
28 // using unique_ptr ensures deletion of the persistent object
29 if (log.level()<=MSG::DEBUG) log << MSG::DEBUG << "AlignableTransformContainer read p1" << endmsg;
30 std::unique_ptr< AlignableTransform_p1 > col_vect( poolReadObject< AlignableTransform_p1 >(token) );
31 AlignableTransformCnv_p1 cnv;
32 return cnv.createTransient( col_vect.get(), log );
33 }
34 else if( compareClassGuid(token, p0_guid) ) {
35 // regular object from before TP separation, just return it
36 if (log.level()<=MSG::DEBUG) log << MSG::DEBUG << "AlignableTransformContainer read p0" << endmsg;
37 return this->poolReadObject<AlignableTransform>(token);
38 }
39 throw std::runtime_error("Unsupported persistent version of AlignableTransformContainer");
40}
virtual TRANS * createTransient(const PERS *persObj, MsgStream &log)
Create transient representation of a persistent object.

◆ DataObjectToPool()

template<class TRANS, class PERS>
virtual StatusCode T_AthenaPoolCustCnv< TRANS, PERS >::DataObjectToPool ( IOpaqueAddress * pAddr,
DataObject * pObj )
protectedvirtualinherited

Write an object into POOL.

Parameters
pObj[IN] pointer to the transient object.
key[IN] StoreGate key (string) - placement hint to generate POOL container name

Reimplemented from T_AthenaPoolCnvBase< TRANS >.

Reimplemented in DataHeaderCnv, 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()

virtual StatusCode T_AthenaPoolCoolMultChanCnv< AlignableTransformContainer, AlignableTransform_TRANS, AlignableTransform_PERS >::fillRepRefs ( IOpaqueAddress * pAddr,
DataObject * pObj )
overrideprotectedvirtualinherited

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 from AthenaPoolConverter.

◆ 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()

StatusCode AlignableTransformContainerCnv::initialize ( )
privatevirtual

◆ 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}

◆ objectToPool()

template<class TRANS, class PERS>
template<class P>
StatusCode T_AthenaPoolCustCnv< TRANS, PERS >::objectToPool ( P * pObj,
std::unique_ptr< Token > & token,
const std::string & key,
const std::string & output )
protectedinherited

Write an object into POOL returning its token.

Parameters
pObj[IN] pointer to the object to be written.
token[OUT] POOL token of the persistent representation.
key[IN] StoreGate key (string) - placement hint to generate POOL container name

◆ persToTrans() [1/2]

virtual StatusCode T_AthenaPoolCoolMultChanCnv< AlignableTransformContainer, AlignableTransform_TRANS, AlignableTransform_PERS >::persToTrans ( AlignableTransformContainer *& transObj,
AlignableTransform_TRANS * obj )
overrideprotectedvirtualinherited

◆ persToTrans() [2/2]

template<class TRANS, class PERS>
virtual StatusCode T_AthenaPoolCustCnv< TRANS, PERS >::persToTrans ( TRANS *& transObj,
PERS * obj )
protectedpure virtualinherited

Implemented in CaloTTOnAttrIdMapCnv, CaloTTOnOffIdMapCnv, CaloTTPpmRxIdMapCnv, LArTTCellMapCnv, MuonRdoContainerCnv< T >, T_AthenaPoolCoolMultChanCnv< COLL_T, ELEM_T, ELEM_P >, T_AthenaPoolCoolMultChanCnv< LArHVScaleCorrComplete, LArConditionsSubset< LArSingleFloatP >, LArSingleFloatSubset_p1 >, 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< 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< TrackRecordCollection, TrackRecordCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TRANS, 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< TRTUncompressedHitCollection, TRT_HitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TruthEtIsolationsContainer, TruthEtIsolationsContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TruthParticleContainer, TruthParticleContainer_PERS >, T_AthenaPoolCustomCnvWithKey< ViewVector< DV >, ViewVector< DV > >, T_AthenaPoolCustomCnvWithKey< ZdcRawChannelCollection, ZdcRawChannelCollection_PERS >, and T_LArCondAthenaPoolCnv< T >.

◆ poolReadObject() [1/2]

◆ poolReadObject() [2/2]

Read object of type P.

This is an exception-throwing version of poolToObject() plus reading of all extending objects. Version 1 - (see createTransient() above)

Returns
object read from POOL (by pointer)

◆ PoolToDataObject()

template<class TRANS, class PERS>
virtual StatusCode T_AthenaPoolCustCnv< TRANS, PERS >::PoolToDataObject ( DataObject *& pObj,
const Token * token,
const std::string & key )
protectedvirtualinherited

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.

Reimplemented from T_AthenaPoolCnvBase< TRANS >.

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 >.

◆ poolToObject()

template<class TRANS, class PERS>
template<class P>
StatusCode T_AthenaPoolCustCnv< TRANS, PERS >::poolToObject ( const Token * token,
P *& pObj )
protectedinherited

Read an object from POOL.

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

◆ 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()

virtual Placement T_AthenaPoolCnvBase< TRANS >::setPlacement ( const std::string & key,
const std::string & output )
protectedvirtualinherited

Set POOL placement.

Implements AthenaPoolConverter.

◆ setPlacementForP()

template<class TRANS, class PERS>
template<class P>
Placement T_AthenaPoolCustCnv< TRANS, PERS >::setPlacementForP ( P & p,
const std::string & key,
const std::string & output )
protectedinherited

Set POOL placement for type P.

◆ 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}

◆ transToPers() [1/2]

Dummy methods not needed here.

◆ transToPers() [2/2]

template<class TRANS, class PERS>
virtual StatusCode T_AthenaPoolCustCnv< TRANS, PERS >::transToPers ( TRANS * obj,
PERS *& persObj )
protectedpure virtualinherited

Implemented in CaloTTOnAttrIdMapCnv, CaloTTOnOffIdMapCnv, CaloTTPpmRxIdMapCnv, LArTTCellMapCnv, MuonRdoContainerCnv< T >, T_AthenaPoolCoolMultChanCnv< COLL_T, ELEM_T, ELEM_P >, T_AthenaPoolCoolMultChanCnv< LArHVScaleCorrComplete, LArConditionsSubset< LArSingleFloatP >, LArSingleFloatSubset_p1 >, 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< 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< TrackRecordCollection, TrackRecordCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TRANS, 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< TRTUncompressedHitCollection, TRT_HitCollection_PERS >, T_AthenaPoolCustomCnvWithKey< TruthEtIsolationsContainer, TruthEtIsolationsContainer_PERS >, T_AthenaPoolCustomCnvWithKey< TruthParticleContainer, TruthParticleContainer_PERS >, T_AthenaPoolCustomCnvWithKey< ViewVector< DV >, ViewVector< DV > >, T_AthenaPoolCustomCnvWithKey< ZdcRawChannelCollection, ZdcRawChannelCollection_PERS >, and T_LArCondAthenaPoolCnv< T >.

◆ CnvFactory< AlignableTransformContainerCnv >

Definition at line 22 of file AlignableTransformContainerCnv.h.

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

RootType T_AthenaPoolCnvBase< TRANS >::m_classDesc
protectedinherited

Definition at line 58 of file T_AthenaPoolCnvBase.h.

◆ m_classDescs

template<class TRANS, class PERS>
ClassMap T_AthenaPoolCustCnv< TRANS, PERS >::m_classDescs
privateinherited

Definition at line 87 of file T_AthenaPoolCustCnv.h.

◆ m_className

template<class TRANS, class PERS>
std::string T_AthenaPoolCustCnv< TRANS, PERS >::m_className
privateinherited

Definition at line 84 of file T_AthenaPoolCustCnv.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.

◆ m_persCtx

Persistency context in which to read all objects (extracted from the Collection Address).

Definition at line 124 of file T_AthenaPoolCoolMultChanCnv.h.

124{ 0 };

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