![]() |
ATLAS Offline Software
|
doubly templated class interfacing access to feature containers in StoreGate. More...
#include <TypedHolder.h>
Public Types | |
| template<typename T, bool value> | |
| using | StatusCode_if = typename std::enable_if<std::is_same<T,CONTAINER>::value == value,StatusCode>::type |
| shorthand for enable_if with returning StatusCode base on comparison with CONTAINER type | |
Public Member Functions | |
| TypedHolder (const BaseHolder &baseholder, const asg::EventStoreType *store, const std::string &container_name=ClassID_traits< CONTAINER >::typeName()) | |
| constructor from BaseHolder. | |
| TypedHolder (const TypelessHolder &typeless, const asg::EventStoreType *store, const std::string &container_name=ClassID_traits< CONTAINER >::typeName()) | |
| constructor from BaseHolder. | |
| const std::string & | key () const |
| key used to access EventStore | |
| template<typename T> | |
| StatusCode_if< T, true > | get (const T *&destination, HLT::TriggerElement::ObjectIndex idx) |
| method creates a new VIEW container containing pointers to the elements pointed to by the ObjectIndex. | |
| template<typename T> | |
| StatusCode_if< T, false > | get (const T *&destination, HLT::TriggerElement::ObjectIndex idx) |
| method retrieves container from storegated and returns pointer at passed ObjectIndex Only enabled for ELEMENT holders (i.e. | |
| virtual class_id_type | typeClid () const |
| virtual const std::string & | label () const |
| virtual sub_index_type | subTypeIndex () const |
| virtual bool | serialize (std::vector< uint32_t > &data) const |
| void | setLevel (MSG::Level lvl) |
| Change the current logging level. | |
Functions providing the same interface as AthMessaging | |
| bool | msgLvl (const MSG::Level lvl) const |
| Test the output level of the object. | |
| MsgStream & | msg () const |
| The standard message stream. | |
| MsgStream & | msg (const MSG::Level lvl) const |
| The standard message stream. | |
Static Public Member Functions | |
| static bool | enquireSerialized (std::vector< uint32_t >::const_iterator &fromHere, const std::vector< uint32_t >::const_iterator &end, class_id_type &c, std::string &label, sub_index_type &subtypeIndex) |
Protected Attributes | |
| class_id_type | m_clid |
| std::string | m_label |
| sub_index_type | m_sub |
Private Member Functions | |
| StatusCode | syncWithStore () |
| cache container retrieved from StoreGate | |
| TypedHolder () | |
| void | initMessaging () const |
| Initialize our message level and MessageSvc. | |
Private Attributes | |
| const asg::EventStoreType * | m_store = nullptr |
| const CONTAINER * | m_cont = nullptr |
| std::string | m_key |
| std::string | m_nm |
| Message source name. | |
| boost::thread_specific_ptr< MsgStream > | m_msg_tls |
| MsgStream instance (a std::cout like with print-out levels) | |
| std::atomic< IMessageSvc * > | m_imsg { nullptr } |
| MessageSvc pointer. | |
| std::atomic< MSG::Level > | m_lvl { MSG::NIL } |
| Current logging level. | |
| std::atomic_flag m_initialized | ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
| Messaging initialized (initMessaging) | |
doubly templated class interfacing access to feature containers in StoreGate.
Definition at line 55 of file TypedHolder.h.
| using HLT::TypedHolder< FEATURE, CONTAINER >::StatusCode_if = typename std::enable_if<std::is_same<T,CONTAINER>::value == value,StatusCode>::type |
shorthand for enable_if with returning StatusCode base on comparison with CONTAINER type
Definition at line 60 of file TypedHolder.h.
|
inline |
constructor from BaseHolder.
Throws runtime exception if clids of BaseHolder and FEATURE type don't match
Definition at line 66 of file TypedHolder.h.
|
inline |
constructor from BaseHolder.
Throws runtime exception if clids of BaseHolder and FEATURE type don't match
Definition at line 79 of file TypedHolder.h.
|
inlineprivate |
Definition at line 171 of file TypedHolder.h.
|
staticinherited |
Definition at line 12 of file BaseHolder.cxx.
|
inline |
method creates a new VIEW container containing pointers to the elements pointed to by the ObjectIndex.
Caller owns the VIEW container. Only enabled for CONTAINER holders
Definition at line 99 of file TypedHolder.h.
|
inline |
method retrieves container from storegated and returns pointer at passed ObjectIndex Only enabled for ELEMENT holders (i.e.
non CONTAINER)
Definition at line 135 of file TypedHolder.h.
|
privateinherited |
Initialize our message level and MessageSvc.
This method should only be called once.
Definition at line 39 of file AthMessaging.cxx.
|
inline |
|
inlinevirtualinherited |
|
inherited |
The standard message stream.
Definition at line 49 of file AsgMessaging.cxx.
|
inherited |
The standard message stream.
| lvl | The message level to set the stream to |
Definition at line 57 of file AsgMessaging.cxx.
|
inherited |
Test the output level of the object.
| lvl | The message level to test against |
true If messages at level "lvl" will be printed Definition at line 41 of file AsgMessaging.cxx.
|
virtualinherited |
Reimplemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, HLTNavDetails::IHolder, and HolderImp< STORED, CONTAINER >.
Definition at line 38 of file BaseHolder.cxx.
|
inherited |
Change the current logging level.
Use this rather than msg().setLevel() for proper operation with MT.
Definition at line 28 of file AthMessaging.cxx.
|
inlinevirtualinherited |
|
inlineprivate |
cache container retrieved from StoreGate
Definition at line 159 of file TypedHolder.h.
|
inlinevirtualinherited |
|
mutableprivateinherited |
Messaging initialized (initMessaging)
Definition at line 141 of file AthMessaging.h.
|
protectedinherited |
Definition at line 19 of file TypelessHolder.h.
|
private |
Definition at line 173 of file TypedHolder.h.
|
mutableprivateinherited |
|
private |
Definition at line 174 of file TypedHolder.h.
|
protectedinherited |
Definition at line 20 of file TypelessHolder.h.
|
mutableprivateinherited |
|
mutableprivateinherited |
MsgStream instance (a std::cout like with print-out levels)
Definition at line 132 of file AthMessaging.h.
|
privateinherited |
Message source name.
Definition at line 129 of file AthMessaging.h.
|
private |
Definition at line 172 of file TypedHolder.h.
|
protectedinherited |
Definition at line 21 of file TypelessHolder.h.