ATLAS Offline Software
Loading...
Searching...
No Matches
Athena::IThinningHdlr Class Referenceabstract

This class defines a protocol to pack and unpack thinned collections. More...

#include <IThinningHdlr.h>

Inheritance diagram for Athena::IThinningHdlr:
Collaboration diagram for Athena::IThinningHdlr:

Public Member Functions

virtual ~IThinningHdlr ()
 virtual destructor
virtual void remove (const std::size_t idx)=0
 remove an element from the proxied DataVector
virtual void commit ()=0
 pack the proxied collection This is needed in order to keep element link indices consistent and T/P converters unchanged.
virtual void rollback ()=0
 unpack the proxied DataVector ie: restore it as it was before any thinning took place
virtual bool isMapping () const
 publish the type of underlying indexing (mapping or sequencing)

Detailed Description

This class defines a protocol to pack and unpack thinned collections.

Definition at line 34 of file IThinningHdlr.h.

Constructor & Destructor Documentation

◆ ~IThinningHdlr()

Athena::IThinningHdlr::~IThinningHdlr ( )
virtual

virtual destructor

Definition at line 21 of file IThinningHdlr.cxx.

22{}

Member Function Documentation

◆ commit()

virtual void Athena::IThinningHdlr::commit ( )
pure virtual

pack the proxied collection This is needed in order to keep element link indices consistent and T/P converters unchanged.

Implemented in Athena::DvThinningHdlr< Container >, Athena::IdcThinningHdlr< Container >, and Athena::StdThinningHdlr< Container >.

◆ isMapping()

virtual bool Athena::IThinningHdlr::isMapping ( ) const
inlinevirtual

publish the type of underlying indexing (mapping or sequencing)

Reimplemented in Athena::IdcThinningHdlr< Container >.

Definition at line 57 of file IThinningHdlr.h.

57{return false;}

◆ remove()

virtual void Athena::IThinningHdlr::remove ( const std::size_t idx)
pure virtual

◆ rollback()

virtual void Athena::IThinningHdlr::rollback ( )
pure virtual

unpack the proxied DataVector ie: restore it as it was before any thinning took place

Implemented in Athena::DvThinningHdlr< Container >, Athena::IdcThinningHdlr< Container >, and Athena::StdThinningHdlr< Container >.


The documentation for this class was generated from the following files: