CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
edm::serviceregistry::ServicesManager::MakerHolder Struct Reference

#include <ServicesManager.h>

Public Member Functions

bool add (ServicesManager &) const
 
 MakerHolder (std::shared_ptr< ServiceMakerBase > iMaker, ParameterSet &iPSet, ActivityRegistry &)
 

Public Attributes

edm::propagate_const< std::shared_ptr< ServiceMakerBase > > maker_
 
ParameterSetpset_
 
ActivityRegistryregistry_
 
bool wasAdded_
 

Detailed Description

Definition at line 45 of file ServicesManager.h.

Constructor & Destructor Documentation

edm::serviceregistry::ServicesManager::MakerHolder::MakerHolder ( std::shared_ptr< ServiceMakerBase iMaker,
ParameterSet iPSet,
ActivityRegistry iRegistry 
)

Definition at line 43 of file ServicesManager.cc.

46  : maker_(iMaker), pset_(&iPSet), registry_(&iRegistry), wasAdded_(false) {}
edm::propagate_const< std::shared_ptr< ServiceMakerBase > > maker_

Member Function Documentation

bool edm::serviceregistry::ServicesManager::MakerHolder::add ( ServicesManager oManager) const

Definition at line 48 of file ServicesManager.cc.

References edm::ParameterSet::addUntrackedParameter(), maker_, pset_, registry_, and wasAdded_.

Referenced by edm::serviceregistry::ServicesManager::createServiceFor(), and counter.Counter::register().

48  {
49  if (!wasAdded_) {
50  wasAdded_ = maker_->make(*pset_, *registry_, oManager);
51  if (wasAdded_ && maker_->saveConfiguration()) {
52  pset_->addUntrackedParameter("@save_config", true);
53  }
54  }
55  return wasAdded_;
56  }
edm::propagate_const< std::shared_ptr< ServiceMakerBase > > maker_
void addUntrackedParameter(std::string const &name, T const &value)
Definition: ParameterSet.h:182

Member Data Documentation

edm::propagate_const<std::shared_ptr<ServiceMakerBase> > edm::serviceregistry::ServicesManager::MakerHolder::maker_

Definition at line 49 of file ServicesManager.h.

Referenced by add().

ParameterSet* edm::serviceregistry::ServicesManager::MakerHolder::pset_
ActivityRegistry* edm::serviceregistry::ServicesManager::MakerHolder::registry_

Definition at line 51 of file ServicesManager.h.

Referenced by add().

bool edm::serviceregistry::ServicesManager::MakerHolder::wasAdded_
mutable

Definition at line 52 of file ServicesManager.h.

Referenced by add().