CMS 3D CMS Logo

List of all members | Public Types | Static Public Member Functions
edm::eventsetup::LooperMakerTraits Struct Reference

#include <LooperFactory.h>

Public Types

typedef EDLooperBase base_type
 

Static Public Member Functions

template<class T >
static void addTo (EventSetupProvider &iProvider, std::shared_ptr< T > iComponent, ParameterSet const &, bool)
 
static std::shared_ptr< base_typegetComponentAndRegisterProcess (EventSetupsController &esController, ParameterSet const &iConfiguration)
 
static std::string name ()
 
static void putComponent (EventSetupsController &esController, ParameterSet const &iConfiguration, std::shared_ptr< base_type > const &component)
 
static void replaceExisting (EventSetupProvider &iProvider, std::shared_ptr< EDLooperBase > iComponent)
 

Detailed Description

Definition at line 82 of file LooperFactory.h.

Member Typedef Documentation

◆ base_type

Definition at line 83 of file LooperFactory.h.

Member Function Documentation

◆ addTo()

template<class T >
static void edm::eventsetup::LooperMakerTraits::addTo ( EventSetupProvider iProvider,
std::shared_ptr< T iComponent,
ParameterSet const &  ,
bool   
)
inlinestatic

Definition at line 86 of file LooperFactory.h.

86  {
87  //a looper does not always have to be a provider or a finder
88  looper::addProviderTo(iProvider, iComponent, static_cast<const T*>(nullptr));
89  looper::addFinderTo(iProvider, iComponent, static_cast<const T*>(nullptr));
90  }

References edm::eventsetup::looper::addFinderTo(), and edm::eventsetup::looper::addProviderTo().

◆ getComponentAndRegisterProcess()

std::shared_ptr< LooperMakerTraits::base_type > edm::eventsetup::LooperMakerTraits::getComponentAndRegisterProcess ( EventSetupsController esController,
ParameterSet const &  iConfiguration 
)
static

Definition at line 31 of file LooperFactory.cc.

32  {
33  return std::shared_ptr<LooperMakerTraits::base_type>();
34  }

◆ name()

std::string edm::eventsetup::LooperMakerTraits::name ( void  )
static

Definition at line 23 of file LooperFactory.cc.

23 { return "CMS EDM Framework EDLooper"; }

Referenced by config.CFG::__str__(), validation.Sample::digest(), and VIDSelectorBase.VIDSelectorBase::initialize().

◆ putComponent()

void edm::eventsetup::LooperMakerTraits::putComponent ( EventSetupsController esController,
ParameterSet const &  iConfiguration,
std::shared_ptr< base_type > const &  component 
)
static

Definition at line 36 of file LooperFactory.cc.

38  {}

◆ replaceExisting()

void edm::eventsetup::LooperMakerTraits::replaceExisting ( EventSetupProvider iProvider,
std::shared_ptr< EDLooperBase iComponent 
)
static

Definition at line 25 of file LooperFactory.cc.

25  {
26  throw edm::Exception(edm::errors::LogicError) << "LooperMakerTraits::replaceExisting\n"
27  << "This function is not implemented and should never be called.\n"
28  << "Please report this to a Framework Developer\n";
29  }

References Exception, and edm::errors::LogicError.

edm::errors::LogicError
Definition: EDMException.h:37
edm::eventsetup::looper::addFinderTo
void addFinderTo(EventSetupProvider &iProvider, std::shared_ptr< T > iComponent, const EventSetupRecordIntervalFinder *)
Definition: LooperFactory.h:61
Exception
Definition: hltDiff.cc:245
edm::eventsetup::looper::addProviderTo
void addProviderTo(EventSetupProvider &iProvider, std::shared_ptr< T > iComponent, const DataProxyProvider *)
Definition: LooperFactory.h:43