1 #ifndef art_Framework_Services_Registry_detail_ServiceHelper_h 2 #define art_Framework_Services_Registry_detail_ServiceHelper_h 36 struct ServiceHelperBase;
37 struct ServiceImplHelper;
38 struct ServiceInterfaceImplHelper;
39 struct ServiceInterfaceHelper;
40 struct ServiceLGMHelper;
41 struct ServicePSMHelper;
42 struct ServiceLGRHelper;
43 struct ServicePSRHelper;
44 template <
typename SERVICE>
54 virtual TypeID get_typeid()
const = 0;
56 virtual bool is_interface()
const = 0;
57 virtual bool is_interface_impl()
const = 0;
78 virtual TypeID get_interface_typeid()
const = 0;
80 virtual std::unique_ptr<ServiceWrapperBase> convert(
81 std::shared_ptr<ServiceWrapperBase>
const& swb)
const = 0;
102 virtual std::unique_ptr<ServiceWrapperBase> make(
105 size_t nSchedules)
const = 0;
110 virtual void* retrieve(std::shared_ptr<ServiceWrapperBase>& swb,
117 virtual std::unique_ptr<ServiceWrapperBase> make(
124 virtual void* retrieve(std::shared_ptr<ServiceWrapperBase>& swb)
const = 0;
bool is_interface() const override
bool is_interface_impl() const final override
bool is_interface() const final override
bool is_interface_impl() const final override