CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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 34 of file ConstProductRegistry.h.

Constructor & Destructor Documentation

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

Definition at line 36 of file ConstProductRegistry.h.

36 : 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 55 of file ConstProductRegistry.h.

References reg_.

Referenced by ShallowTree::ShallowTree().

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

Definition at line 49 of file ConstProductRegistry.h.

References reg_.

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

Definition at line 57 of file ConstProductRegistry.h.

References reg_.

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

Definition at line 44 of file ConstProductRegistry.h.

References reg_.

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

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

Definition at line 42 of file ConstProductRegistry.h.

References reg_.

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

Definition at line 60 of file ConstProductRegistry.h.

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

60  {
61  serviceregistry::connect_but_block_self(reg_->productAddedSignal_, iFunc);
62  }
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 64 of file ConstProductRegistry.h.

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

64  {
65  using std::placeholders::_1;
66  serviceregistry::connect_but_block_self(reg_->productAddedSignal_, std::bind(iMethod, iObj, _1));
67  }
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