CMS 3D CMS Logo

RingMakerESProducer Class Reference

#include <RecoTracker/RingMakerESProducer/interface/RingMakerESProducer.h>

Inheritance diagram for RingMakerESProducer:

edm::ESProducer edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

List of all members.

Public Types

typedef std::auto_ptr< RingsReturnType

Public Member Functions

ReturnType produce (const RingRecord &)
 RingMakerESProducer (const edm::ParameterSet &)
 ~RingMakerESProducer ()

Private Attributes

std::string configuration_
std::string detIdsDumpFileName_
bool dumpDetIds_
std::string fileName_
Ringsrings_
bool writeOut_


Detailed Description

Definition at line 33 of file RingMakerESProducer.h.


Member Typedef Documentation

typedef std::auto_ptr<Rings> RingMakerESProducer::ReturnType

Definition at line 40 of file RingMakerESProducer.h.


Constructor & Destructor Documentation

RingMakerESProducer::RingMakerESProducer ( const edm::ParameterSet iConfig  ) 

Definition at line 24 of file RingMakerESProducer.cc.

References configuration_, detIdsDumpFileName_, dumpDetIds_, fileName_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), rings_, edm::ESProducer::setWhatProduced(), and writeOut_.

00025 {
00026   std::string componentName = iConfig.getParameter<std::string>("ComponentName");
00027   setWhatProduced(this, componentName);
00028 
00029   writeOut_                  = iConfig.getUntrackedParameter<bool>("WriteOutRingsToAsciiFile",false);
00030   fileName_                  = iConfig.getUntrackedParameter<std::string>("RingAsciiFileName","");
00031   dumpDetIds_                = iConfig.getUntrackedParameter<bool>("DumpDetIds",false);
00032   detIdsDumpFileName_        = iConfig.getUntrackedParameter<std::string>("DetIdsDumpFileName","");
00033   configuration_             = iConfig.getUntrackedParameter<std::string>("Configuration","FULL");
00034   
00035   rings_ = 0;
00036 
00037 }

RingMakerESProducer::~RingMakerESProducer (  ) 

Definition at line 40 of file RingMakerESProducer.cc.

00041 {
00042 //   if ( rings_ != 0) {
00043 //     delete rings_;
00044 //   }
00045   
00046 }


Member Function Documentation

RingMakerESProducer::ReturnType RingMakerESProducer::produce ( const RingRecord iRecord  ) 

Definition at line 50 of file RingMakerESProducer.cc.

References configuration_, detIdsDumpFileName_, Rings::dump(), dumpDetIds_, RingMaker::dumpDetIdsIntoFile(), fileName_, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::getRecord(), RingMaker::getRings(), edm::ESHandle< T >::product(), rings_, and writeOut_.

00051 {
00052 
00053   // get geometry
00054   edm::ESHandle<TrackerGeometry> trackingGeometryHandle;
00055   iRecord.getRecord<TrackerDigiGeometryRecord>().get(trackingGeometryHandle);
00056   const TrackerGeometry *tracker = trackingGeometryHandle.product();
00057 
00058   RingMaker maker(tracker,configuration_);
00059 
00060   if ( dumpDetIds_ ) {
00061     maker.dumpDetIdsIntoFile(detIdsDumpFileName_);
00062   }
00063 
00064   rings_ = maker.getRings();
00065   
00066   ReturnType pRings(rings_) ;
00067 
00068   if ( writeOut_ ) {
00069     rings_->dump(fileName_);
00070   }
00071 
00072   return pRings ;
00073 }


Member Data Documentation

std::string RingMakerESProducer::configuration_ [private]

Definition at line 50 of file RingMakerESProducer.h.

Referenced by produce(), and RingMakerESProducer().

std::string RingMakerESProducer::detIdsDumpFileName_ [private]

Definition at line 49 of file RingMakerESProducer.h.

Referenced by produce(), and RingMakerESProducer().

bool RingMakerESProducer::dumpDetIds_ [private]

Definition at line 48 of file RingMakerESProducer.h.

Referenced by produce(), and RingMakerESProducer().

std::string RingMakerESProducer::fileName_ [private]

Definition at line 47 of file RingMakerESProducer.h.

Referenced by produce(), and RingMakerESProducer().

Rings* RingMakerESProducer::rings_ [private]

Definition at line 51 of file RingMakerESProducer.h.

Referenced by produce(), and RingMakerESProducer().

bool RingMakerESProducer::writeOut_ [private]

Definition at line 46 of file RingMakerESProducer.h.

Referenced by produce(), and RingMakerESProducer().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:30:47 2009 for CMSSW by  doxygen 1.5.4