ATLAS Offline Software
|
Navigable template generalization to handle navigation. More...
#include <Navigable.h>
Public Types | |
typedef COLL | constituent_coll |
typedef constituent_coll::iterator | constituent_iter |
typedef constituent_coll::const_iterator | constituent_const_iter |
typedef CONT | container_type |
Object container type. More... | |
typedef RPAR | parameter_type |
\ brief Relational parameter type More... | |
typedef NavigationDefaults::DefaultChildColl< container_type, parameter_type > | navhelper_t |
Collection manager type. More... | |
typedef CONT::base_value_type | constituent_type |
typedef CONT::reference | constituent_ptr_ref |
typedef CONT::const_reference | constituent_const_ptr_ref |
typedef CONT::value_type | constituent_ptr |
typedef SG::GenerateIndexingPolicy< CONT >::type::index_type | external_index_type |
typedef NavigableIterator< CONT, RPAR, COLL > | object_iter |
Public Member Functions | |
Navigable () | |
virtual | ~Navigable ()=default |
virtual void | fillToken (INavigationToken &navToken) const |
virtual void | fillToken (INavigationToken &navToken, const std::any &parentParameter) const |
void | putElement (const CONT *objectContainer, const constituent_type *constituentObject, const RPAR &objectParameter=RPAR(), size_t sizeHint=0) |
void | putElement (const CONT *objectContainer, const external_index_type &theIndex, const RPAR &objectParameter=RPAR(), size_t sizeHint=0) |
void | insertElement (const CONT *objectContainer, const constituent_type *constituentObject, const RPAR &objectParameter=RPAR(), size_t sizeHint=0) |
void | insertElement (const CONT *objectContainer, const external_index_type &theIndex, const RPAR &objectParameter=RPAR(), size_t sizeHint=0) |
void | insertElement (const CONT *objectContainer, const external_index_type &theIndex, IProxyDict *sg, const RPAR &objectParameter=RPAR(), size_t sizeHint=0) |
void | insertElement (const ElementLink< CONT > &el, const RPAR &objectParameter=RPAR(), size_t sizeHint=0) |
void | reweight (const constituent_type *constituentObject, const RPAR &objectParameter=RPAR()) |
void | reweight (const CONT *objectContainer, const external_index_type &theIndex, const RPAR &objectParameter=RPAR()) |
void | reweight (object_iter &objectIter, const RPAR &objectParameter=RPAR()) |
bool | remove (const constituent_type *aConstituent) |
bool | remove (const CONT *objectContainer, const external_index_type &theIndex) |
bool | removeAll () |
bool | replace (const CONT *newObjectContainer) |
replace old object container with a new container assumes that all objects have been or will be inserted to the new container More... | |
bool | contains (const constituent_type *aConstituent) const |
bool | contains (const CONT *objectContainer, const external_index_type &theIndex) const |
virtual object_iter | begin () const |
virtual object_iter | end () const |
virtual unsigned int | size () const |
RPAR | getParameter (const constituent_type *aConstituent) const |
RPAR | getParameter (const CONT *objectContainer, const external_index_type &theIndex) const |
RPAR | getParameter (object_iter &theIter) const |
const CONT * | getContainer (const constituent_type *aConstituent) const |
const CONT * | getContainer (constituent_const_iter anIter) const |
const CONT * | getContainer (object_iter objectIter) const |
bool | getIndex (const constituent_type *aConstituent, external_index_type &theIndex) const |
bool | getIndex (constituent_const_iter anIter, external_index_type &theIndex) const |
bool | getIndex (object_iter objectIter, external_index_type &theIndex) const |
Protected Member Functions | |
const constituent_coll & | getConstituents () const |
constituent_coll & | getConstituents () |
const constituent_coll * | getPtrToConstituents () const |
constituent_coll * | getPtrToConstituents () |
virtual const constituent_type * | getConstituentPtr (constituent_iter iter) const |
virtual const constituent_type * | getConstituentPtr (constituent_const_iter iter) const |
virtual RPAR | getConstituentPar (constituent_iter iter) const |
virtual RPAR | getConstituentPar (constituent_const_iter iter) const |
void | dumpStore () const |
Private Member Functions | |
virtual void | apply (NavigationToken< constituent_type > &navToken) const |
virtual void | apply (NavigationToken< constituent_type, RPAR > &navToken, const RPAR &aParameter) const |
virtual void | toKidsAfterAccept (INavigationToken &navToken) const |
virtual void | toKidsAfterReject (INavigationToken &navToken) const |
virtual void | toKidsAfterAccept (INavigationToken &navToken, const std::any &aParameter) const |
virtual void | toKidsAfterReject (INavigationToken &navToken, const std::any &aParameter) const |
Private Attributes | |
constituent_coll | m_constituents |
Navigable template generalization to handle navigation.
Generalization of navigable composite object implementation.
Generalization of Navigable Object Features
The Navigable<CONT,RPAR,COLL>
generalization handles navigation queries and provides persistifiable data stores for composite reconstruction objects. The template parameters are:
CONT
- storable container type
RPAR
- relational parameter type
COLL
- internal collection type for future use< >
This class provides the most common implementation for a navigable composite object in Athena. In particular, homogeneous composites with only only one constituent type are easily implemented using this template.
Definition at line 92 of file Navigable.h.
typedef COLL Navigable< CONT, RPAR, COLL >::constituent_coll |
Definition at line 101 of file Navigable.h.
typedef constituent_coll::const_iterator Navigable< CONT, RPAR, COLL >::constituent_const_iter |
Definition at line 103 of file Navigable.h.
typedef CONT::const_reference Navigable< CONT, RPAR, COLL >::constituent_const_ptr_ref |
Definition at line 151 of file Navigable.h.
typedef constituent_coll::iterator Navigable< CONT, RPAR, COLL >::constituent_iter |
Definition at line 102 of file Navigable.h.
typedef CONT::value_type Navigable< CONT, RPAR, COLL >::constituent_ptr |
Definition at line 152 of file Navigable.h.
typedef CONT::reference Navigable< CONT, RPAR, COLL >::constituent_ptr_ref |
Definition at line 150 of file Navigable.h.
typedef CONT::base_value_type Navigable< CONT, RPAR, COLL >::constituent_type |
Definition at line 149 of file Navigable.h.
typedef CONT Navigable< CONT, RPAR, COLL >::container_type |
Object container type.
Definition at line 110 of file Navigable.h.
typedef SG::GenerateIndexingPolicy<CONT>::type::index_type Navigable< CONT, RPAR, COLL >::external_index_type |
Definition at line 156 of file Navigable.h.
typedef NavigationDefaults::DefaultChildColl<container_type,parameter_type> Navigable< CONT, RPAR, COLL >::navhelper_t |
Collection manager type.
Definition at line 114 of file Navigable.h.
typedef NavigableIterator<CONT,RPAR,COLL> Navigable< CONT, RPAR, COLL >::object_iter |
Definition at line 159 of file Navigable.h.
typedef RPAR Navigable< CONT, RPAR, COLL >::parameter_type |
\ brief Relational parameter type
Definition at line 112 of file Navigable.h.
Navigable< CONT, RPAR, COLL >::Navigable | ( | ) |
|
virtualdefault |
|
privatevirtual |
|
privatevirtual |
|
virtual |
bool Navigable< CONT, RPAR, COLL >::contains | ( | const constituent_type * | aConstituent | ) | const |
bool Navigable< CONT, RPAR, COLL >::contains | ( | const CONT * | objectContainer, |
const external_index_type & | theIndex | ||
) | const |
|
protected |
|
virtual |
|
virtual |
Implements INavigable.
Reimplemented in Analysis::MuonAssociation.
|
virtual |
Implements INavigable.
Reimplemented in Analysis::MuonAssociation.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
inlineprotected |
Definition at line 291 of file Navigable.h.
|
inlineprotected |
Definition at line 290 of file Navigable.h.
const CONT* Navigable< CONT, RPAR, COLL >::getContainer | ( | const constituent_type * | aConstituent | ) | const |
const CONT* Navigable< CONT, RPAR, COLL >::getContainer | ( | constituent_const_iter | anIter | ) | const |
const CONT* Navigable< CONT, RPAR, COLL >::getContainer | ( | object_iter | objectIter | ) | const |
bool Navigable< CONT, RPAR, COLL >::getIndex | ( | const constituent_type * | aConstituent, |
external_index_type & | theIndex | ||
) | const |
bool Navigable< CONT, RPAR, COLL >::getIndex | ( | constituent_const_iter | anIter, |
external_index_type & | theIndex | ||
) | const |
bool Navigable< CONT, RPAR, COLL >::getIndex | ( | object_iter | objectIter, |
external_index_type & | theIndex | ||
) | const |
RPAR Navigable< CONT, RPAR, COLL >::getParameter | ( | const constituent_type * | aConstituent | ) | const |
RPAR Navigable< CONT, RPAR, COLL >::getParameter | ( | const CONT * | objectContainer, |
const external_index_type & | theIndex | ||
) | const |
RPAR Navigable< CONT, RPAR, COLL >::getParameter | ( | object_iter & | theIter | ) | const |
|
inlineprotected |
Definition at line 296 of file Navigable.h.
|
inlineprotected |
Definition at line 294 of file Navigable.h.
void Navigable< CONT, RPAR, COLL >::insertElement | ( | const CONT * | objectContainer, |
const constituent_type * | constituentObject, | ||
const RPAR & | objectParameter = RPAR() , |
||
size_t | sizeHint = 0 |
||
) |
void Navigable< CONT, RPAR, COLL >::insertElement | ( | const CONT * | objectContainer, |
const external_index_type & | theIndex, | ||
const RPAR & | objectParameter = RPAR() , |
||
size_t | sizeHint = 0 |
||
) |
void Navigable< CONT, RPAR, COLL >::insertElement | ( | const CONT * | objectContainer, |
const external_index_type & | theIndex, | ||
IProxyDict * | sg, | ||
const RPAR & | objectParameter = RPAR() , |
||
size_t | sizeHint = 0 |
||
) |
void Navigable< CONT, RPAR, COLL >::insertElement | ( | const ElementLink< CONT > & | el, |
const RPAR & | objectParameter = RPAR() , |
||
size_t | sizeHint = 0 |
||
) |
void Navigable< CONT, RPAR, COLL >::putElement | ( | const CONT * | objectContainer, |
const constituent_type * | constituentObject, | ||
const RPAR & | objectParameter = RPAR() , |
||
size_t | sizeHint = 0 |
||
) |
void Navigable< CONT, RPAR, COLL >::putElement | ( | const CONT * | objectContainer, |
const external_index_type & | theIndex, | ||
const RPAR & | objectParameter = RPAR() , |
||
size_t | sizeHint = 0 |
||
) |
bool Navigable< CONT, RPAR, COLL >::remove | ( | const constituent_type * | aConstituent | ) |
bool Navigable< CONT, RPAR, COLL >::remove | ( | const CONT * | objectContainer, |
const external_index_type & | theIndex | ||
) |
|
inline |
Definition at line 237 of file Navigable.h.
bool Navigable< CONT, RPAR, COLL >::replace | ( | const CONT * | newObjectContainer | ) |
replace old object container with a new container assumes that all objects have been or will be inserted to the new container
void Navigable< CONT, RPAR, COLL >::reweight | ( | const constituent_type * | constituentObject, |
const RPAR & | objectParameter = RPAR() |
||
) |
void Navigable< CONT, RPAR, COLL >::reweight | ( | const CONT * | objectContainer, |
const external_index_type & | theIndex, | ||
const RPAR & | objectParameter = RPAR() |
||
) |
void Navigable< CONT, RPAR, COLL >::reweight | ( | object_iter & | objectIter, |
const RPAR & | objectParameter = RPAR() |
||
) |
|
virtual |
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
private |
Definition at line 345 of file Navigable.h.