29#ifndef ATHCONTAINERSINTERFACES_IAUXSTORE_H
30#define ATHCONTAINERSINTERFACES_IAUXSTORE_H
135 virtual void shift (
size_t pos, ptrdiff_t offs) = 0;
207#ifndef XAOD_STANDALONE
Provide an interface for finding inheritance information at run time.
#define SG_BASE(D, B)
Declare that class D derives from class B.
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 for const operations on an auxiliary store.
Hold information about an option setting request.
Interface for non-const operations on an auxiliary store.
virtual bool insertMove(size_t pos, IAuxStore &other, const SG::auxid_set_t &ignore=SG::auxid_set_t())=0
Move all elements from other to this store.
virtual bool setOption(auxid_t, const AuxDataOption &)
Set an option for a given auxiliary variable.
virtual bool resize(size_t sz)=0
Change the size of all aux data vectors.
virtual void reserve(size_t sz)=0
Change the capacity of all aux data vectors.
virtual IAuxTypeVector * linkedVector(SG::auxid_t)
static constexpr bool supportsThinning
Mark that this type supports thinning operations.
virtual const SG::auxid_set_t & getWritableAuxIDs() const =0
Return a set of identifiers for writable data items in this store.
virtual void shift(size_t pos, ptrdiff_t offs)=0
Shift the elements of the container.
virtual void * getData(auxid_t auxid, size_t size, size_t capacity)=0
Return the data vector for one aux data item.
Abstract interface for manipulating vectors of arbitrary types.
Interface for const operations on an auxiliary store.
virtual const IAuxTypeVector * linkedVector(SG::auxid_t) const
Return interface for a linked variable.
virtual const void * getData(SG::auxid_t auxid) const =0
Return the data vector for one aux data item.
virtual size_t size() const =0
Return the number of elements in the store.
A set of aux data identifiers.
size_t auxid_t
Identifier for a particular aux data item.