![]() |
ATLAS Offline Software
|
This class provides the interface to the LCG POOL persistency software. More...
#include <AddressRemappingSvc.h>
Public Member Functions | |
| AddressRemappingSvc (const std::string &name, ISvcLocator *pSvcLocator) | |
| Standard Service Constructor. | |
| virtual | ~AddressRemappingSvc () |
| Destructor. | |
| virtual StatusCode initialize | ATLAS_NOT_THREAD_SAFE () override |
| Required of all Gaudi services: | |
| virtual StatusCode | finalize () override |
| Required of all Gaudi services: | |
| virtual StatusCode | preLoadAddresses (StoreID::type storeID, IAddressProvider::tadList &tads) override |
| Get all addresses from provider. | |
| virtual StatusCode | loadAddresses (StoreID::type storeID, IAddressProvider::tadList &tads) override |
| Implementation of the loadAddresses function without any functionality. | |
| virtual StatusCode | updateAddress (StoreID::type, SG::TransientAddress *pTad, const EventContext &ctx) override |
| Update a transient address. | |
| virtual const IInputRename::InputRenameRCU_t * | inputRenameMap () const override |
| Retrieve a pointer to the input rename map. | |
Private Types | |
| using | InputRenameMap_t = Athena::InputRenameMap_t |
| Map of sgkey->sgkey for input renames. | |
| using | InputRenameRCU_t = Athena::IInputRename::InputRenameRCU_t |
Private Member Functions | |
| CLID | getClid (const std::string &type) const |
| StatusCode | preLoadAddressesConst (StoreID::type storeID, IAddressProvider::tadList &tads) const |
| StatusCode | updateAddressConst (StoreID::type, SG::TransientAddress *pTad, const EventContext &ctx) const |
| StatusCode | loadAddressesConst (IAddressProvider::tadList &tads) const |
| void | addInputRenames (const InputRenameMap_t &toadd) const |
| Merge in additional input rename mappings. | |
| StatusCode initInputRenames | ATLAS_NOT_THREAD_SAFE () |
| Set up input rename mappings during initialization. | |
| StatusCode | renameTads (IAddressProvider::tadList &tads) const |
| Scan TAD list and carry out any requested renamings. | |
| void | initDeletes () |
| bool | isDeleted (const SG::TransientAddress &tad) const |
Private Attributes | |
| ServiceHandle< IClassIDSvc > | m_clidSvc |
| ServiceHandle< IProxyDict > | m_proxyDict |
| ServiceHandle< Athena::IRCUSvc > | m_RCUSvc |
| ServiceHandle< IAlgResourcePool > | m_algResourcePool |
| StringArrayProperty | m_overwriteMaps {this,"TypeKeyOverwriteMaps",{},"","OrderedSet<std::string>"} |
| TypeKeyOverwriteMaps, map for type#key overwrites. | |
| std::vector< SG::TransientAddress > | m_oldTads |
| std::vector< SG::TransientAddress > | m_newTads |
| CxxUtils::CachedValue< std::vector< SG::TransientAddress > > | m_oldTadsCleaned |
| CxxUtils::CachedValue< std::vector< SG::TransientAddress > > | m_newTadsCleaned |
| Gaudi::Property< std::vector< std::string > > | m_typeKeyRenameMaps |
| Property: list of requested input renames. | |
| std::unique_ptr< InputRenameRCU_t > | m_inputRenames |
| Gaudi::Property< bool > | m_skipBadRemappings |
| std::mutex | m_deletesMutex |
| std::atomic< bool > | m_haveDeletes =false |
| std::unordered_multimap< std::string, CLID > | m_deletes |
This class provides the interface to the LCG POOL persistency software.
Definition at line 39 of file AddressRemappingSvc.h.
|
private |
Map of sgkey->sgkey for input renames.
This object is exported via inputRenameMap and is synchronized via RCU.
Definition at line 112 of file AddressRemappingSvc.h.
|
private |
Definition at line 113 of file AddressRemappingSvc.h.
| AddressRemappingSvc::AddressRemappingSvc | ( | const std::string & | name, |
| ISvcLocator * | pSvcLocator ) |
Standard Service Constructor.
Definition at line 35 of file AddressRemappingSvc.cxx.
|
virtual |
|
private |
Merge in additional input rename mappings.
| toadd | Mappings to add. |
Additional sgkey->sgkey input rename mappings are merged into the rename map, using RCU synchronization.
Definition at line 113 of file AddressRemappingSvc.cxx.
|
private |
Set up input rename mappings during initialization.
|
overridevirtual |
Required of all Gaudi services:
|
overridevirtual |
Required of all Gaudi services:
Definition at line 173 of file AddressRemappingSvc.cxx.
|
private |
Definition at line 480 of file AddressRemappingSvc.cxx.
|
private |
Definition at line 498 of file AddressRemappingSvc.cxx.
|
overridevirtual |
Retrieve a pointer to the input rename map.
May return null if no renaming is to be done.
Definition at line 491 of file AddressRemappingSvc.cxx.
|
private |
Definition at line 542 of file AddressRemappingSvc.cxx.
|
overridevirtual |
Implementation of the loadAddresses function without any functionality.
Definition at line 229 of file AddressRemappingSvc.cxx.
|
private |
Definition at line 239 of file AddressRemappingSvc.cxx.
|
overridevirtual |
Get all addresses from provider.
Called before begin event.
| storeID | [IN] store ID, this function only preloads detector store addresses. |
| tads | [OUT] list of the transient addresses which were preloaded. |
Definition at line 183 of file AddressRemappingSvc.cxx.
|
private |
Definition at line 188 of file AddressRemappingSvc.cxx.
|
private |
Scan TAD list and carry out any requested renamings.
| tads | list of TADs from previous providers. |
Definition at line 364 of file AddressRemappingSvc.cxx.
|
overridevirtual |
Update a transient address.
Do mapping from one address to another
| tad | [IN] transient address to be updated. |
Definition at line 311 of file AddressRemappingSvc.cxx.
|
private |
Definition at line 317 of file AddressRemappingSvc.cxx.
|
private |
Definition at line 85 of file AddressRemappingSvc.h.
|
private |
Definition at line 81 of file AddressRemappingSvc.h.
|
private |
Definition at line 122 of file AddressRemappingSvc.h.
|
mutableprivate |
Definition at line 120 of file AddressRemappingSvc.h.
|
private |
Definition at line 121 of file AddressRemappingSvc.h.
|
private |
Definition at line 114 of file AddressRemappingSvc.h.
|
private |
Definition at line 91 of file AddressRemappingSvc.h.
|
private |
Definition at line 98 of file AddressRemappingSvc.h.
|
private |
Definition at line 90 of file AddressRemappingSvc.h.
|
private |
Definition at line 97 of file AddressRemappingSvc.h.
|
private |
TypeKeyOverwriteMaps, map for type#key overwrites.
Definition at line 89 of file AddressRemappingSvc.h.
|
private |
Definition at line 82 of file AddressRemappingSvc.h.
|
private |
Definition at line 84 of file AddressRemappingSvc.h.
|
private |
Definition at line 116 of file AddressRemappingSvc.h.
|
private |
Property: list of requested input renames.
Definition at line 101 of file AddressRemappingSvc.h.