CMS 3D CMS Logo

SimProducer Class Reference

Description: a SimWatcher which puts data into the edm::Event. More...

#include <SimG4Core/Watcher/interface/SimProducer.h>

Inheritance diagram for SimProducer:

SimWatcher EcalSimHitsValidProducer HcalTB02Analysis HcalTB04Analysis HcalTB06Analysis MaterialBudgetAction SimG4HcalValidation simwatcher::BeginOfTrackCounter StoreSecondary TotemTestGem TrackingMaterialProducer

List of all members.

Public Member Functions

virtual void produce (edm::Event &, const edm::EventSetup &)=0
void registerProducts (edm::EDProducer &iProd)
 SimProducer ()

Protected Member Functions

template<class T>
void produces (const std::string &instanceName)
template<class T>
void produces ()

Private Member Functions

const SimProduceroperator= (const SimProducer &)
 SimProducer (const SimProducer &)

Private Attributes

std::vector< boost::shared_ptr
< simproducer::ProductInfoBase > > 
m_info


Detailed Description

Description: a SimWatcher which puts data into the edm::Event.

Usage: <usage>

Definition at line 60 of file SimProducer.h.


Constructor & Destructor Documentation

SimProducer::SimProducer (  )  [inline]

Definition at line 64 of file SimProducer.h.

00064 {}

SimProducer::SimProducer ( const SimProducer  )  [private]


Member Function Documentation

const SimProducer& SimProducer::operator= ( const SimProducer  )  [private]

virtual void SimProducer::produce ( edm::Event ,
const edm::EventSetup  
) [pure virtual]

Implemented in TotemTestGem, HcalTB02Analysis, HcalTB04Analysis, HcalTB06Analysis, StoreSecondary, simwatcher::BeginOfTrackCounter, TrackingMaterialProducer, EcalSimHitsValidProducer, MaterialBudgetAction, and SimG4HcalValidation.

template<class T>
void SimProducer::produces ( const std::string &  instanceName  )  [inline, protected]

Definition at line 85 of file SimProducer.h.

00085                                                    {
00086          using namespace simproducer;
00087          m_info.push_back( 
00088             boost::shared_ptr<ProductInfo<T> >(new ProductInfo<T>(instanceName) ));
00089       }

template<class T>
void SimProducer::produces (  )  [inline, protected]

Definition at line 80 of file SimProducer.h.

00080                       {
00081          produces<T>("");
00082       }

void SimProducer::registerProducts ( edm::EDProducer iProd  )  [inline]

Definition at line 74 of file SimProducer.h.

References simproducer::ProductInfoBase::registerProduct().

00074                                                   {
00075          std::for_each(m_info.begin(), m_info.end(),
00076                        boost::bind(&simproducer::ProductInfoBase::registerProduct,_1, &iProd));
00077       }


Member Data Documentation

std::vector<boost::shared_ptr< simproducer::ProductInfoBase> > SimProducer::m_info [private]

Definition at line 97 of file SimProducer.h.


The documentation for this class was generated from the following file:
Generated on Tue Jun 9 18:31:44 2009 for CMSSW by  doxygen 1.5.4