Loading [MathJax]/extensions/tex2jax.js
Go to the documentation of this file.
76 template <
typename Base>
102 template <
typename T>
108 :
m_key{ owner, keyName, keyDefault, keyDoc } {
109 owner->registerConditionAccessor( *
this );
128 auto sc = Base::initialize();
129 if ( !sc )
return sc;
146 template <
typename T>
150 template <
typename T>
Class wrapping the communication between condition users and conditions backend.
Gaudi::Property< ConditionKey > m_key
Internal property object for the condition key.
details::ConditionsStore::ConditionContext ConditionContext
Forward backend specific ConditionContext to specializations.
std::list< std::function< void()> > m_delayedRegistrations
Helper to postpone the registration to the backend.
void declareKey(const ConditionKey &key)
friend class ConditionAccessor
static ConditionsStore & instance()
StatusCode initialize() override
const std::any * getConditionAny(const ConditionKey &key, const ConditionContext &ctx) const
Example class to implement an actual backend for Gaudi::Examples::Conditions::ConditionAccessorHolder...
const ConditionContext & getConditionContext(const EventContext &ctx) const
const T & getCondition(const ConditionKey &key, const ConditionContext &ctx) const
Example of a ConditionAccessorHolder implementation.
std::set< ConditionKey > m_requestedKeys
const ConditionContext & getConditionContext(const EventContext &ctx) const
Helper to map the event being processed to the corresponding conditions slot.
const T & get(const ConditionContext &ctx) const
Get the condition value for the requested condition slot.
const ConditionKey & key() const
Helper to access the key of the current accessor.
ConditionAccessor(base_class *owner, const std::string &keyName, const ConditionKey &keyDefault, const std::string &keyDoc="")
Constructor a ConditionAccessor instance registering it to the current holder.
ConditionsStore()=default
void registerConditionAccessor(ConditionAccessor< T > &accessor)
Register a ConditionAccessor instance to internal bookkeeping.
Implementation of property with value of concrete type.