CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
edm::ConstProductRegistry Class Reference

#include <ConstProductRegistry.h>

Public Types

typedef ProductRegistry::ProductList ProductList
 

Public Member Functions

std::vector< BranchDescription const * > allBranchDescriptions () const
 
std::vector< std::string > allBranchNames () const
 
bool anyProductProduced () const
 
 ConstProductRegistry (SignallingProductRegistry &iReg)
 
 ConstProductRegistry (ConstProductRegistry const &)=delete
 
ConstProductRegistryoperator= (ConstProductRegistry const &)=delete
 
ProductList const & productList () const
 
ProductRegistry const & productRegistry () const
 
template<class T >
void watchProductAdditions (const T &iFunc)
 
template<class T , class TMethod >
void watchProductAdditions (T const &iObj, TMethod iMethod)
 

Private Attributes

edm::propagate_const< SignallingProductRegistry * > reg_
 

Detailed Description

Definition at line 32 of file ConstProductRegistry.h.

Member Typedef Documentation

Definition at line 36 of file ConstProductRegistry.h.

Constructor & Destructor Documentation

edm::ConstProductRegistry::ConstProductRegistry ( SignallingProductRegistry iReg)
inline

Definition at line 38 of file ConstProductRegistry.h.

References operator=().

38 : reg_(&iReg) { }
edm::propagate_const< SignallingProductRegistry * > reg_
edm::ConstProductRegistry::ConstProductRegistry ( ConstProductRegistry const &  )
delete

Member Function Documentation

std::vector<BranchDescription const*> edm::ConstProductRegistry::allBranchDescriptions ( ) const
inline

Definition at line 57 of file ConstProductRegistry.h.

References reg_.

Referenced by ShallowTree::ShallowTree().

57 {return reg_->allBranchDescriptions();}
edm::propagate_const< SignallingProductRegistry * > reg_
std::vector<std::string> edm::ConstProductRegistry::allBranchNames ( ) const
inline

Definition at line 51 of file ConstProductRegistry.h.

References reg_.

51 {return reg_->allBranchNames();}
edm::propagate_const< SignallingProductRegistry * > reg_
bool edm::ConstProductRegistry::anyProductProduced ( ) const
inline

Definition at line 59 of file ConstProductRegistry.h.

References reg_.

59 {return reg_->anyProductProduced();}
edm::propagate_const< SignallingProductRegistry * > reg_
ConstProductRegistry& edm::ConstProductRegistry::operator= ( ConstProductRegistry const &  )
delete

Referenced by ConstProductRegistry().

ProductList const& edm::ConstProductRegistry::productList ( ) const
inline

Definition at line 46 of file ConstProductRegistry.h.

References reg_.

Referenced by edm::HiMixingModule::verifyRegistry().

46 {return reg_->productList();}
edm::propagate_const< SignallingProductRegistry * > reg_
ProductRegistry const& edm::ConstProductRegistry::productRegistry ( ) const
inline

Definition at line 44 of file ConstProductRegistry.h.

References reg_.

44 {return *reg_;}
edm::propagate_const< SignallingProductRegistry * > reg_
template<class T >
void edm::ConstProductRegistry::watchProductAdditions ( const T iFunc)
inline

Definition at line 62 of file ConstProductRegistry.h.

References edm::serviceregistry::connect_but_block_self(), and reg_.

63  {
64  serviceregistry::connect_but_block_self(reg_->productAddedSignal_,
65  iFunc);
66  }
edm::propagate_const< SignallingProductRegistry * > reg_
void connect_but_block_self(Signal &oSignal, const Func &iFunc)
template<class T , class TMethod >
void edm::ConstProductRegistry::watchProductAdditions ( T const &  iObj,
TMethod  iMethod 
)
inline

Definition at line 68 of file ConstProductRegistry.h.

References edm::serviceregistry::connect_but_block_self(), and reg_.

69  {
70  using std::placeholders::_1;
71  serviceregistry::connect_but_block_self(reg_->productAddedSignal_,
72  std::bind(iMethod, iObj,_1));
73  }
edm::propagate_const< SignallingProductRegistry * > reg_
void connect_but_block_self(Signal &oSignal, const Func &iFunc)

Member Data Documentation

edm::propagate_const<SignallingProductRegistry*> edm::ConstProductRegistry::reg_
private