A base class holding the container independent part of ElementLink. More...
#include <ElementLinkBase.h>
Public Member Functions | |
ElementLinkBase (uint32_t key=0, uint32_t index=0) | |
Default constructor. | |
virtual | ~ElementLinkBase () |
Destructor. | |
uint32_t | persKey () const |
Get the key/identifier of the referenced container. | |
void | setPersKey (uint32_t key) |
Set the key/identifier of the referenced container. | |
uint32_t | persIndex () const |
Get the index of the referenced object in the container. | |
void | setPersIndex (uint32_t index) |
Set the index of the referenced object in the container. | |
virtual bool | toTransient ()=0 |
Reset the object's internal cache. | |
Protected Attributes | |
uint32_t | m_persKey |
Key/identifier of the referenced container. | |
uint32_t | m_persIndex |
Index of the referenced object in the container. | |
bool | m_isDirectIO |
A base class holding the container independent part of ElementLink.
For technical reasons it's a good idea to define a common base class for the ElementLink classes, it helps with ROOT I/O immensely.
bool ElementLinkBase::m_isDirectIO [protected] |
A transient variable signalling when direct I/O is happening
This flag is used exclusively by the ElementLink<>::toTransient() function to know when it should take the persistent data stored in this object into account. That function may be called in normal P->T conversions as well, in which case using the data from this class would just reset the object to its default state.