ATLAS Offline Software
|
Handle DataProxy
holding IdentifiableContainer
This class defines a (type-safe) protocol to pack and unpack thinned IdentifiableContainer
.
More...
#include <IThinningHdlr.h>
Public Member Functions | |
IdcThinningHdlr (const Container &c) | |
void | remove (const std::size_t idx) |
remove an element from the proxied DataVector More... | |
void | commit () |
pack the proxied collection This is needed in order to keep element link indices consistent and T/P converters unchanged. More... | |
void | rollback () |
unpack the proxied DataVector ie: restore it as it was before any thinning took place More... | |
virtual bool | isMapping () const |
publish the type of underlying indexing (mapping or sequencing) More... | |
Private Types | |
typedef Container | Idc_t |
typedef Idc_t::IDENTIFIABLE | Identifiable_t |
typedef std::pair< std::size_t, Identifiable_t * > | Backup_t |
typedef std::list< Backup_t > | Backups_t |
Private Attributes | |
Backups_t | m_backup |
Vector holding the pointers to the elements of IdentifiableContainer , before any thinning took place. More... | |
Idc_t & | m_container |
Handle DataProxy
holding IdentifiableContainer
This class defines a (type-safe) protocol to pack and unpack thinned IdentifiableContainer
.
This is not MT-safe!
Definition at line 181 of file IThinningHdlr.h.
|
private |
Definition at line 185 of file IThinningHdlr.h.
|
private |
Definition at line 186 of file IThinningHdlr.h.
|
private |
Definition at line 183 of file IThinningHdlr.h.
|
private |
Definition at line 184 of file IThinningHdlr.h.
|
inline |
Definition at line 195 of file IThinningHdlr.h.
|
inlinevirtual |
pack the proxied collection This is needed in order to keep element link indices consistent and T/P converters unchanged.
Implements Athena::IThinningHdlr.
Definition at line 207 of file IThinningHdlr.h.
|
inlinevirtual |
publish the type of underlying indexing (mapping or sequencing)
Reimplemented from Athena::IThinningHdlr.
Definition at line 220 of file IThinningHdlr.h.
|
inlinevirtual |
remove an element from the proxied DataVector
Implements Athena::IThinningHdlr.
Definition at line 201 of file IThinningHdlr.h.
|
inlinevirtual |
unpack the proxied DataVector
ie: restore it as it was before any thinning took place
Implements Athena::IThinningHdlr.
Definition at line 209 of file IThinningHdlr.h.
|
private |
Vector holding the pointers to the elements of IdentifiableContainer
, before any thinning took place.
Definition at line 191 of file IThinningHdlr.h.
|
private |
Definition at line 192 of file IThinningHdlr.h.