SG::IAuxStoreIO Class Reference

Interface providing I/O for a generic auxiliary store. More...

#include <IAuxStoreIO.h>

Inheritance diagram for SG::IAuxStoreIO:
SG::AuxStoreInternal xAOD::AuxContainerBase xAOD::AuxInfoBase xAOD::ShallowAuxContainer xAOD::TAuxStore SG::AuxStoreStandalone xAOD::AFPDataAuxContainer_v1 xAOD::AFPSiHitAuxContainer_v1 xAOD::AFPTrackAuxContainer_v1 xAOD::ALFADataAuxContainer_v1 xAOD::BCMRawDataAuxContainer_v1 xAOD::BTaggingAuxContainer_v1 xAOD::BTaggingTrigAuxContainer_v1 xAOD::BTagVertexAuxContainer_v1 xAOD::BunchConfAuxContainer_v1 xAOD::CaloClusterAuxContainer_v1 xAOD::CaloClusterAuxContainer_v2 xAOD::CaloClusterTrigAuxContainer_v1 xAOD::CaloTowerAuxContainer_v1 xAOD::CMMCPHitsAuxContainer_v1 xAOD::CMMEtSumsAuxContainer_v1 xAOD::CMMJetHitsAuxContainer_v1 xAOD::CMXCPHitsAuxContainer_v1 xAOD::CMXCPTobAuxContainer_v1 xAOD::CMXEtSumsAuxContainer_v1 xAOD::CMXJetHitsAuxContainer_v1 xAOD::CMXJetTobAuxContainer_v1 xAOD::CMXRoIAuxContainer_v1 xAOD::CompositeParticleAuxContainer_v1 xAOD::CPMHitsAuxContainer_v1 xAOD::CPMRoIAuxContainer_v1 xAOD::CPMTobRoIAuxContainer_v1 xAOD::CPMTowerAuxContainer_v1 xAOD::CPMTowerAuxContainer_v2 xAOD::CutBookkeeperAuxContainer_v1 xAOD::DiTauJetAuxContainer_v1 xAOD::EgammaAuxContainer_v1 xAOD::ElectronAuxContainer_v2 xAOD::ElectronAuxContainer_v3 xAOD::ElectronTrigAuxContainer_v1 xAOD::EmTauRoIAuxContainer_v1 xAOD::EmTauRoIAuxContainer_v2 xAOD::EventInfoAuxContainer_v1 xAOD::ForwardEventInfoAuxContainer_v1 xAOD::HIEventShapeAuxContainer_v1 xAOD::HIEventShapeAuxContainer_v2 xAOD::JEMEtSumsAuxContainer_v1 xAOD::JEMEtSumsAuxContainer_v2 xAOD::JEMHitsAuxContainer_v1 xAOD::JEMRoIAuxContainer_v1 xAOD::JEMTobRoIAuxContainer_v1 xAOD::JetAuxContainer_v1 xAOD::JetElementAuxContainer_v1 xAOD::JetElementAuxContainer_v2 xAOD::JetRoIAuxContainer_v1 xAOD::JetRoIAuxContainer_v2 xAOD::L1TopoRawDataAuxContainer_v1 xAOD::L2CombinedMuonAuxContainer_v1 xAOD::L2IsoMuonAuxContainer_v1 xAOD::L2StandAloneMuonAuxContainer_v1 xAOD::L2StandAloneMuonAuxContainer_v2 xAOD::LumiBlockRangeAuxContainer_v1 xAOD::MBTSModuleAuxContainer_v1 xAOD::MissingETAuxAssociationMap_v1 xAOD::MissingETAuxAssociationMap_v2 xAOD::MissingETAuxComponentMap_v1 xAOD::MissingETAuxContainer_v1 xAOD::MuonAuxContainer_v1 xAOD::MuonAuxContainer_v2 xAOD::MuonAuxContainer_v3 xAOD::MuonRoIAuxContainer_v1 xAOD::MuonSegmentAuxContainer_v1 xAOD::NeutralParticleAuxContainer_v1 xAOD::ParticleAuxContainer_v1 xAOD::PFOAuxContainer_v1 xAOD::PhotonAuxContainer_v2 xAOD::PhotonAuxContainer_v3 xAOD::PhotonTrigAuxContainer_v1 xAOD::RODHeaderAuxContainer_v1 xAOD::RODHeaderAuxContainer_v2 xAOD::SCTRawHitValidationAuxContainer_v1 xAOD::SlowMuonAuxContainer_v1 xAOD::TauJetAuxContainer_v1 xAOD::TauJetAuxContainer_v2 xAOD::TrackMeasurementValidationAuxContainer_v1 xAOD::TrackParticleAuxContainer_v1 xAOD::TrackParticleAuxContainer_v2 xAOD::TrackParticleAuxContainer_v3 xAOD::TrackParticleClusterAssociationAuxContainer_v1 xAOD::TrackStateValidationAuxContainer_v1 xAOD::TrigBphysAuxContainer_v1 xAOD::TrigCaloClusterAuxContainer_v1 xAOD::TrigElectronAuxContainer_v1 xAOD::TrigEMClusterAuxContainer_v2 xAOD::TriggerMenuAuxContainer_v1 xAOD::TriggerTowerAuxContainer_v1 xAOD::TriggerTowerAuxContainer_v2 xAOD::TrigHisto2DAuxContainer_v1 xAOD::TrigMissingETAuxContainer_v1 xAOD::TrigPassBitsAuxContainer_v1 xAOD::TrigPhotonAuxContainer_v1 xAOD::TrigRingerRingsAuxContainer_v1 xAOD::TrigRingerRingsAuxContainer_v2 xAOD::TrigRNNOutputAuxContainer_v1 xAOD::TrigRNNOutputAuxContainer_v2 xAOD::TrigSpacePointCountsAuxContainer_v1 xAOD::TrigT2MbtsBitsAuxContainer_v1 xAOD::TrigT2ZdcSignalsAuxContainer_v1 xAOD::TrigTrackCountsAuxContainer_v1 xAOD::TrigVertexCountsAuxContainer_v1 xAOD::TruthEventAuxContainer_v1 xAOD::TruthMetaDataAuxContainer_v1 xAOD::TruthParticleAuxContainer_v1 xAOD::TruthPileupEventAuxContainer_v1 xAOD::TruthVertexAuxContainer_v1 xAOD::VertexAuxContainer_v1 xAOD::ZdcModuleAuxContainer_v1 xAOD::CMMRoIAuxInfo_v1 xAOD::EnergySumRoIAuxInfo_v1 xAOD::EventAuxInfo_v1 xAOD::EventShapeAuxInfo_v1 xAOD::FileMetaDataAuxInfo_v1 xAOD::JetEtRoIAuxInfo_v1 xAOD::RoiDescriptorStoreAuxInfo_v1 xAOD::TrigDecisionAuxInfo_v1 xAOD::TrigNavigationAuxInfo_v1 xAOD::ShallowAuxInfo

List of all members.

Public Member Functions

virtual ~IAuxStoreIO ()
 Destructor.
virtual const void * getIOData (SG::auxid_t auxid) const =0
 Return a pointer to the data to be stored for one aux data item.
virtual const std::type_info * getIOType (SG::auxid_t auxid) const =0
 Return the type of the data to be stored for one aux data item.
virtual const SG::auxid_set_tgetDynamicAuxIDs () const =0
 Get the list of all dynamically created variables.
virtual void selectAux (const std::set< std::string > &)
 Set up the object to only expose selected data items to the IO.
virtual const SG::auxid_set_tgetSelectedAuxIDs () const
 Get a list of all the variables that need to be written out.

Detailed Description

Interface providing I/O for a generic auxiliary store.

In order to read/write the properties stored in a generic auxiliary store object, this interface needs to be used. It allows the infrastructure code to inspect the contents of the object, and access it in a way that allows the information to be passed to the persistency system.

Author:
Attila Krasznahorkay <Attila.Krasznahorkay@cern.ch>
Marcin Nowak <Marcin.Nowak@cern.ch>
Revision
584348
Date
2014-02-20 10:21:15 +0100 (Thu, 20 Feb 2014)

Member Function Documentation

virtual const void* SG::IAuxStoreIO::getIOData ( SG::auxid_t  auxid  )  const [pure virtual]

Return a pointer to the data to be stored for one aux data item.

Parameters:
auxid The identifier of the desired aux data item.

This will usually be a pointer to a std::vector; however, it may be something different for a standalone object.

Returns 0 and reports an error if the requested aux data item does not exist.

Implemented in SG::AuxStoreInternal.

virtual const std::type_info* SG::IAuxStoreIO::getIOType ( SG::auxid_t  auxid  )  const [pure virtual]

Return the type of the data to be stored for one aux data item.

Parameters:
auxid The identifier of the desired aux data item.

For an aux data item of type T, this will usually be std::vector<T>. For standalone objects, however, it will usually be T; and std::vector<char> will be used instead of std::vector<bool>.

Returns 0 if the requested aux data item does not exist.

Implemented in SG::AuxStoreInternal.

virtual const SG::auxid_set_t& SG::IAuxStoreIO::getSelectedAuxIDs (  )  const [inline, virtual]

Get a list of all the variables that need to be written out.

The return value of this function depends on the parameters passed to selectAux previously.

Reimplemented in xAOD::AuxContainerBase, xAOD::AuxInfoBase, xAOD::ShallowAuxContainer, and xAOD::TAuxStore.

virtual void SG::IAuxStoreIO::selectAux ( const std::set< std::string > &   )  [inline, virtual]

Set up the object to only expose selected data items to the IO.

Parameters:
attr The attributes for selecting the variables to be written.

The convention for the formatting of the attributes expected by this function is still a bit in flux, documentation will be provided later.

Reimplemented in xAOD::AuxContainerBase, xAOD::AuxInfoBase, xAOD::ShallowAuxContainer, and xAOD::TAuxStore.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 15 Apr 2017 for RootCore Packages by  doxygen 1.6.1