LArSoft
v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
|
#include "ServiceCacheEntry.h"
Public Member Functions | |
ServiceCacheEntry (fhicl::ParameterSet const &pset, std::unique_ptr< detail::ServiceHelperBase > &&helper) | |
ServiceCacheEntry (fhicl::ParameterSet const &pset, std::unique_ptr< detail::ServiceHelperBase > &&helper, ServiceCacheEntry const &impl) | |
ServiceCacheEntry (WrapperBase_ptr premade_service, std::unique_ptr< detail::ServiceHelperBase > &&helper) | |
WrapperBase_ptr | getService (ActivityRegistry ®, detail::ServiceStack &creationOrder) const |
void | forceCreation (ActivityRegistry ®) const |
fhicl::ParameterSet const & | getParameterSet () const |
template<typename T , typename = std::enable_if_t<detail::ServiceHelper<T>::scope_val != ServiceScope::PER_SCHEDULE>> | |
T & | get (ActivityRegistry ®, detail::ServiceStack &creationOrder) const |
template<typename T , typename = std::enable_if_t<detail::ServiceHelper<T>::scope_val == ServiceScope::PER_SCHEDULE>> | |
T & | get (ActivityRegistry ®, detail::ServiceStack &creationOrder, ScheduleID sID) const |
void | registerProducts (MasterProductRegistry &mpr, ProductDescriptions &productsToProduce, ProducingServiceSignals &signals, ModuleDescription const &md) |
bool | is_impl () const |
bool | is_interface () const |
ServiceScope | serviceScope () const |
Static Public Member Functions | |
static void | setNSchedules (size_t nSched) |
Private Member Functions | |
void | makeAndCacheService (ActivityRegistry ®) const |
void | createService (ActivityRegistry ®, detail::ServiceStack &creationOrder) const |
void | convertService (WrapperBase_ptr &swb) const |
Static Private Member Functions | |
static size_t & | nSchedules () |
Private Attributes | |
fhicl::ParameterSet | config_ {} |
std::unique_ptr< detail::ServiceHelperBase > | helper_ |
WrapperBase_ptr | service_ {} |
ServiceCacheEntry const *const | interface_impl_ {nullptr} |
Definition at line 31 of file ServiceCacheEntry.h.
art::detail::ServiceCacheEntry::ServiceCacheEntry | ( | fhicl::ParameterSet const & | pset, |
std::unique_ptr< detail::ServiceHelperBase > && | helper | ||
) |
Definition at line 24 of file ServiceCacheEntry.cc.
References helper_.
art::detail::ServiceCacheEntry::ServiceCacheEntry | ( | fhicl::ParameterSet const & | pset, |
std::unique_ptr< detail::ServiceHelperBase > && | helper, | ||
ServiceCacheEntry const & | impl | ||
) |
Definition at line 31 of file ServiceCacheEntry.cc.
References helper_, and interface_impl_.
art::detail::ServiceCacheEntry::ServiceCacheEntry | ( | WrapperBase_ptr | premade_service, |
std::unique_ptr< detail::ServiceHelperBase > && | helper | ||
) |
Definition at line 39 of file ServiceCacheEntry.cc.
References service_.
|
inlineprivate |
Definition at line 125 of file ServiceCacheEntry.h.
References art::detail::ServiceInterfaceImplHelper::convert(), is_impl(), and service_.
Referenced by getService().
|
inlineprivate |
Definition at line 112 of file ServiceCacheEntry.h.
References is_impl(), makeAndCacheService(), and service_.
Referenced by getService().
|
inline |
Definition at line 96 of file ServiceCacheEntry.h.
References is_impl(), makeAndCacheService(), and service_.
|
inline |
Definition at line 141 of file ServiceCacheEntry.h.
References getService(), art::PER_SCHEDULE, art::detail::ServiceLGRHelper::retrieve(), and serviceScope().
|
inline |
Definition at line 153 of file ServiceCacheEntry.h.
References getService(), art::PER_SCHEDULE, art::detail::ServicePSRHelper::retrieve(), and serviceScope().
|
inline |
Definition at line 106 of file ServiceCacheEntry.h.
References config_.
art::detail::WrapperBase_ptr art::detail::ServiceCacheEntry::getService | ( | ActivityRegistry & | reg, |
detail::ServiceStack & | creationOrder | ||
) | const |
Definition at line 48 of file ServiceCacheEntry.cc.
References convertService(), createService(), interface_impl_, is_interface(), and service_.
Referenced by get().
|
inline |
Definition at line 178 of file ServiceCacheEntry.h.
References is_interface().
Referenced by convertService(), createService(), forceCreation(), and makeAndCacheService().
|
inline |
Definition at line 184 of file ServiceCacheEntry.h.
References helper_.
Referenced by getService(), and is_impl().
|
private |
Definition at line 73 of file ServiceCacheEntry.cc.
References art::errors::BadExceptionType, art::detail::bold_fontify(), config_, art::errors::Configuration, e, fhicl::ParameterSet::get(), helper_, is_impl(), art::detail::ServicePSMHelper::make(), art::detail::ServiceLGMHelper::make(), nSchedules(), art::errors::OtherArt, art::PER_SCHEDULE, s, service_, serviceScope(), art::errors::StdException, art::errors::Unknown, and fhicl::detail::validationException::what().
Referenced by createService(), and forceCreation().
|
inlinestaticprivate |
Definition at line 171 of file ServiceCacheEntry.h.
Referenced by makeAndCacheService(), and setNSchedules().
void art::detail::ServiceCacheEntry::registerProducts | ( | MasterProductRegistry & | mpr, |
ProductDescriptions & | productsToProduce, | ||
ProducingServiceSignals & | signals, | ||
ModuleDescription const & | md | ||
) |
|
inline |
Definition at line 134 of file ServiceCacheEntry.h.
References helper_.
Referenced by get(), and makeAndCacheService().
|
inlinestatic |
Definition at line 165 of file ServiceCacheEntry.h.
References nSchedules().
Referenced by art::ServicesManager::fillCache_().
|
private |
Definition at line 89 of file ServiceCacheEntry.h.
Referenced by getParameterSet(), and makeAndCacheService().
|
private |
Definition at line 90 of file ServiceCacheEntry.h.
Referenced by is_interface(), makeAndCacheService(), ServiceCacheEntry(), and serviceScope().
|
private |
Definition at line 92 of file ServiceCacheEntry.h.
Referenced by getService(), and ServiceCacheEntry().
|
mutableprivate |
Definition at line 91 of file ServiceCacheEntry.h.
Referenced by convertService(), createService(), forceCreation(), getService(), makeAndCacheService(), registerProducts(), and ServiceCacheEntry().