CMS 3D CMS Logo

SiStripHashedDetIdESProducer Class Reference

Author:
R.Bainbridge
More...

#include <CalibTracker/SiStripESProducers/interface/SiStripHashedDetIdESProducer.h>

Inheritance diagram for SiStripHashedDetIdESProducer:

edm::ESProducer edm::ESProducer edm::ESProxyFactoryProducer edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider edm::eventsetup::DataProxyProvider SiStripHashedDetIdESModule SiStripHashedDetIdFakeESSource

List of all members.

Public Member Functions

std::auto_ptr< SiStripHashedDetIdproduce (const SiStripHashedDetIdRcd &)
virtual std::auto_ptr
< SiStripHashedDetId
produce (const SiStripHashedDetIdRcd &)
 Calls pure virtual make() method, to force concrete implementation.
 SiStripHashedDetIdESProducer (const edm::ParameterSet &)
 SiStripHashedDetIdESProducer (const edm::ParameterSet &)
virtual ~SiStripHashedDetIdESProducer ()
virtual ~SiStripHashedDetIdESProducer ()

Private Member Functions

virtual SiStripHashedDetIdmake (const SiStripHashedDetIdRcd &)=0
const
SiStripHashedDetIdESProducer
operator= (const SiStripHashedDetIdESProducer &)
 SiStripHashedDetIdESProducer (const SiStripHashedDetIdESProducer &)


Detailed Description

Author:
R.Bainbridge

Abstract base class for producer of SiStripHashedDetId record.

Definition at line 17 of file SiStripHashedDetIdESProducer.h.


Constructor & Destructor Documentation

SiStripHashedDetIdESProducer::SiStripHashedDetIdESProducer ( const edm::ParameterSet pset  ) 

Definition at line 13 of file SiStripHashedDetIdESProducer.cc.

References produce(), and edm::ESProducer::setWhatProduced().

00013                                                                                         {
00014   setWhatProduced( this, &SiStripHashedDetIdESProducer::produce );
00015 }

SiStripHashedDetIdESProducer::~SiStripHashedDetIdESProducer (  )  [virtual]

Definition at line 19 of file SiStripHashedDetIdESProducer.cc.

00019 {}

SiStripHashedDetIdESProducer::SiStripHashedDetIdESProducer ( const SiStripHashedDetIdESProducer  )  [private]

SiStripHashedDetIdESProducer::SiStripHashedDetIdESProducer ( const edm::ParameterSet  ) 

virtual SiStripHashedDetIdESProducer::~SiStripHashedDetIdESProducer (  )  [virtual]


Member Function Documentation

virtual SiStripHashedDetId* SiStripHashedDetIdESProducer::make ( const SiStripHashedDetIdRcd  )  [private, pure virtual]

Implemented in SiStripHashedDetIdFakeESSource, and SiStripHashedDetIdESModule.

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

std::auto_ptr<SiStripHashedDetId> SiStripHashedDetIdESProducer::produce ( const SiStripHashedDetIdRcd  ) 

std::auto_ptr< SiStripHashedDetId > SiStripHashedDetIdESProducer::produce ( const SiStripHashedDetIdRcd rcd  )  [virtual]

Calls pure virtual make() method, to force concrete implementation.

Definition at line 23 of file SiStripHashedDetIdESProducer.cc.

References lat::endl(), StripGeomDetUnit::geographicalId(), edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::getRecord(), iter, LogTrace, sistrip::mlDqmCommon_, and strip().

Referenced by SiStripHashedDetIdESProducer().

00023                                                                                                         {
00024 
00025   // Retrieve geometry
00026   edm::ESHandle<TrackerGeometry> geom;
00027   rcd.getRecord<TrackerDigiGeometryRecord>().get( geom );
00028   
00029   // Build list of DetIds
00030   std::vector<uint32_t> dets;
00031   dets.reserve(16000);
00032   TrackerGeometry::DetUnitContainer::const_iterator iter = geom->detUnits().begin();
00033   for( ; iter != geom->detUnits().end(); ++iter ) {
00034     const StripGeomDetUnit* strip = dynamic_cast<StripGeomDetUnit*>(*iter);
00035     if( strip ) {
00036       dets.push_back( (strip->geographicalId()).rawId() );
00037     }
00038   }
00039   edm::LogVerbatim(mlDqmCommon_)
00040     << "[SiStripHashedDetIdESProducer::" << __func__ << "]"
00041     << " Retrieved " << dets.size()
00042     << " sistrip DetIds from geometry!";
00043   
00044   // Create hash map object
00045   SiStripHashedDetId* hash = new SiStripHashedDetId( dets );
00046   LogTrace(mlDqmCommon_)
00047     << "[SiStripHashedDetIdESProducer::" << __func__ << "]"
00048     << " DetId hash map: " << std::endl
00049     << *hash;
00050   
00051   return std::auto_ptr<SiStripHashedDetId>( hash );
00052 
00053 }


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