ATLAS Offline Software
Loading...
Searching...
No Matches
IAuxStoreIO.h
Go to the documentation of this file.
1// This file's extension implies that it's C, but it's really -*- C++ -*-.
2
3/*
4 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
5*/
6
7// $Id: IAuxStoreIO.h 584348 2014-02-20 09:21:15Z krasznaa $
14
15
16#ifndef ATHCONTAINERSINTERFACES_IAUXSTOREIO_H
17#define ATHCONTAINERSINTERFACES_IAUXSTOREIO_H
18
19
21#include <typeinfo>
22#include <set>
23
24
25namespace SG {
26
27
44{
45public:
47 virtual ~IAuxStoreIO() {}
48
49
60 virtual const void* getIOData (SG::auxid_t auxid) const = 0;
61
62
74 virtual const std::type_info* getIOType (SG::auxid_t auxid) const = 0;
75
76
80 virtual const SG::auxid_set_t& getDynamicAuxIDs() const = 0;
81
82
87 // default all are selected
88 return getDynamicAuxIDs();
89 }
90
91}; // class IAuxStoreIO
92
93
94} // namespace SG
95
96
97#ifndef XAOD_STANDALONE
99CLASS_DEF( SG::IAuxStoreIO, 55879233, 1 )
100#endif
101
102
103#endif // not ATHCONTAINERSINTERFACES_IAUXSTOREIO_H
Basic definitions for auxiliary types.
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Interface providing I/O for a generic auxiliary store.
Definition IAuxStoreIO.h:44
virtual SG::auxid_set_t getSelectedAuxIDs() const
Get a list of dynamic variables that need to be written out.
Definition IAuxStoreIO.h:86
virtual ~IAuxStoreIO()
Destructor.
Definition IAuxStoreIO.h:47
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 void * getIOData(SG::auxid_t auxid) const =0
Return a pointer to the data to be stored for one aux data item.
virtual const SG::auxid_set_t & getDynamicAuxIDs() const =0
Get the list of all dynamically created variables.
A set of aux data identifiers.
Definition AuxTypes.h:47
Forward declaration.
size_t auxid_t
Identifier for a particular aux data item.
Definition AuxTypes.h:27