CMS 3D CMS Logo

SimWatcherMaker< T > Class Template Reference

Description: Makes a particular type of SimWatcher. More...

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

Inheritance diagram for SimWatcherMaker< T >:

SimWatcherMakerBase

List of all members.

Public Member Functions

virtual void make (const edm::ParameterSet &p, SimActivityRegistry &reg, boost::shared_ptr< SimWatcher > &oWatcher, boost::shared_ptr< SimProducer > &oProd) const
 SimWatcherMaker ()

Private Member Functions

boost::shared_ptr< SimProducergetSimProducer (void *, boost::shared_ptr< T > &iProd) const
boost::shared_ptr< SimProducergetSimProducer (SimProducer *, boost::shared_ptr< T > &iProd) const


Detailed Description

template<class T>
class SimWatcherMaker< T >

Description: Makes a particular type of SimWatcher.

Usage: <usage>

Definition at line 32 of file SimWatcherMaker.h.


Constructor & Destructor Documentation

template<class T>
SimWatcherMaker< T >::SimWatcherMaker (  )  [inline]

Definition at line 36 of file SimWatcherMaker.h.

00036 {}


Member Function Documentation

template<class T>
boost::shared_ptr<SimProducer> SimWatcherMaker< T >::getSimProducer ( void ,
boost::shared_ptr< T > &  iProd 
) const [inline, private]

Definition at line 59 of file SimWatcherMaker.h.

00059                                                             {
00060          return boost::shared_ptr<SimProducer>();
00061       }

template<class T>
boost::shared_ptr<SimProducer> SimWatcherMaker< T >::getSimProducer ( SimProducer ,
boost::shared_ptr< T > &  iProd 
) const [inline, private]

Definition at line 55 of file SimWatcherMaker.h.

Referenced by SimWatcherMaker< T >::make().

00055                                                                    {
00056          return boost::shared_ptr<SimProducer>(iProd);
00057       }

template<class T>
virtual void SimWatcherMaker< T >::make ( const edm::ParameterSet p,
SimActivityRegistry reg,
boost::shared_ptr< SimWatcher > &  oWatcher,
boost::shared_ptr< SimProducer > &  oProd 
) const [inline, virtual]

Implements SimWatcherMakerBase.

Definition at line 39 of file SimWatcherMaker.h.

References SimActivityRegistryEnroller::enroll(), and SimWatcherMaker< T >::getSimProducer().

00044       {
00045         boost::shared_ptr<T> returnValue(new T(p));
00046         SimActivityRegistryEnroller::enroll(reg, returnValue.get());
00047         oWatcher = returnValue;
00048 
00049         //If this is also a SimProducer, set the value
00050         oProd = this->getSimProducer(returnValue.get(), returnValue);
00051       }


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