00001
00002
00011 #ifndef ATHCONTAINERSINTERFACES_ICONSTAUXSTORE_H
00012 #define ATHCONTAINERSINTERFACES_ICONSTAUXSTORE_H
00013
00014
00015 #include "AthContainersInterfaces/AuxTypes.h"
00016 #include <cstddef>
00017
00018
00019 namespace SG {
00020
00021
00058 class IConstAuxStore
00059 {
00060 public:
00062 virtual ~IConstAuxStore() {}
00063
00064
00075 virtual const void* getData (SG::auxid_t auxid) const = 0;
00076
00077
00099 virtual void* getDecoration (auxid_t auxid, size_t size, size_t capacity) = 0;
00100
00101
00109 virtual const SG::auxid_set_t& getAuxIDs() const = 0;
00110
00111
00118 virtual void lock() = 0;
00119
00120
00128 virtual void clearDecorations() = 0;
00129
00130
00136 virtual size_t size() const = 0;
00137 };
00138
00139
00140 }
00141
00142
00143
00144 #ifndef XAOD_STANDALONE
00145 #include "SGTools/CLASS_DEF.h"
00146 CLASS_DEF( SG::IConstAuxStore , 187169987 , 1 )
00147 #endif // not XAOD_STANDALONE
00148
00149
00150 #endif // not ATHCONTAINERSINTERFACES_ICONSTAUXSTORE_H