#include <TAuxVector.h>
Public Member Functions | |
TAuxVector (const SG::IAuxTypeVectorFactory *factory,::TClass *cl, size_t size, size_t capacity) | |
Constructor. | |
TAuxVector (const TAuxVector &parent) | |
Copy constructor. | |
~TAuxVector () | |
Destructor. | |
TAuxVector & | operator= (const TAuxVector &other) |
Assignment operator. | |
Function implementing the SG::IAuxTypeVector interface | |
virtual SG::IAuxTypeVector * | clone () const |
Copy the managed vector. | |
virtual void * | toPtr () |
Return a pointer to the start of the vector's data. | |
virtual void * | toVector () |
Return a pointer to the STL vector itself. | |
virtual size_t | size () const |
Return the size of the vector. | |
virtual void | resize (size_t sz) |
Change the size of the vector. | |
virtual void | reserve (size_t sz) |
Change the capacity of the vector. | |
virtual void | shift (size_t pos, ptrdiff_t offs) |
Shift the elements of the vector. |
Auxiliary vector type for types known to ROOT
This class is used for types known to ROOT, which have not received a concrete auxiliary vector type yet. (By having been accessed explicitly.)
The code is pretty much a copy of what Scott wrote for RootStorageSvc for the offline code.
void xAOD::TAuxVector::shift | ( | size_t | pos, | |
ptrdiff_t | offs | |||
) | [virtual] |
Shift the elements of the vector.
pos | The starting index for the shift. | |
offs | The (signed) amount of the shift. |
This operation shifts the elements in the vectors for all aux data items, to implement an insertion or deletion. offs
may be either positive or negative.
If offs
is positive, then the container is growing. The container size should be increased by offs
, the element at pos
moved to pos
+ offs
, and similarly for following elements. The elements between pos
and pos
+ offs
should be default-initialized.
If offs
is negative, then the container is shrinking. The element at pos
should be moved to pos
+ offs
, and similarly for following elements. The container should then be shrunk by -offs
elements (running destructors as appropriate).
Implements SG::IAuxTypeVector.