![]() |
ATLAS Offline Software
|
'Nested' template container for storing TRT conditions data. More...
#include <vector>#include <map>#include <functional>#include <algorithm>#include "TRT_ConditionsData/ExpandedIdentifier.h"#include "AthenaKernel/getMessageSvc.h"#include "GaudiKernel/MsgStream.h"Go to the source code of this file.
Classes | |
| struct | TRTCond::NestedContainerDaughterAccessor< Daughter, T, Trait > |
| struct | TRTCond::NestedContainerDaughterAccessor< T, T, Trait > |
| NestedContainerDaugtherAccessor specialization if the daughter is not a container, but an atomic object ('STRAW' level) More... | |
| class | TRTCond::NestedContainerBase< NestingLevel, Daughter, T, Trait > |
| class | TRTCond::NestedContainer< NestingLevel, T, Trait > |
| class | TRTCond::NestedContainer< ExpandedIdentifier::STRAWLAYER, T, Trait > |
| Template specialization for the lowest level ('STRAWLAYER') to truncate the nesting loop. More... | |
| class | TRTCond::NestedContainerPointerTrait< T > |
Namespaces | |
| TRTCond | |
'Nested' template container for storing TRT conditions data.
Entries are accessed via an identifier (TRTCond::ExpandedIdentifier), which specifies barrel, layer, sector, strawlayer and straw. At each level it stores a 'default' value which is returned in case the specified entry does not exist or is 'invalid' (not-calibrated). The identifier can also specify a 'level' which allows to access the constants at a particular granularity. For example, to access the t0 of a straw 'bec=1, layer=2, sector=3, strawlayer=4, straw=5', one uses
StrawT0Container * strawt0container = ... ; ExpandedIdentifier id(3,2,3,4,5,ExpandedIdentifier::STRAW) ; const StrawT0& strawt0 = strawt0container->get( id ) ;
To retrieve the corresponding entry an module level, one would use
ExpandedIdentifier id(3,2,3,4,5,ExpandedIdentifier::MODULE) ;
The NestedContainer is implement via two classes
Definition in file NestedContainer.h.
1.8.18