CMS 3D CMS Logo

Public Types | Public Member Functions

CaloTopologyBuilder Class Reference

#include <CaloTopologyBuilder.h>

Inheritance diagram for CaloTopologyBuilder:
edm::ESProducer edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

List of all members.

Public Types

typedef boost::shared_ptr
< CaloTopology
ReturnType

Public Member Functions

 CaloTopologyBuilder (const edm::ParameterSet &iP)
ReturnType produceCalo (const CaloTopologyRecord &)
 ~CaloTopologyBuilder ()

Detailed Description

Description: <one line="" class="" summary>="">

Implementation: <Notes on="" implementation>="">

Definition at line 36 of file CaloTopologyBuilder.h.


Member Typedef Documentation

typedef boost::shared_ptr< CaloTopology > CaloTopologyBuilder::ReturnType

Definition at line 42 of file CaloTopologyBuilder.h.


Constructor & Destructor Documentation

CaloTopologyBuilder::CaloTopologyBuilder ( const edm::ParameterSet iP)

Definition at line 10 of file CaloTopologyBuilder.cc.

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

{
   //the following line is needed to tell the framework what
   // data is being produced

// disable
//   setWhatProduced( this, &CaloTopologyBuilder::produceIdeal );
   setWhatProduced( this, &CaloTopologyBuilder::produceCalo  );
}
CaloTopologyBuilder::~CaloTopologyBuilder ( )

Definition at line 21 of file CaloTopologyBuilder.cc.

{ 
}

Member Function Documentation

CaloTopologyBuilder::ReturnType CaloTopologyBuilder::produceCalo ( const CaloTopologyRecord iRecord)

Definition at line 32 of file CaloTopologyBuilder.cc.

References DetId::Ecal, EcalBarrel, EcalEndcap, EcalPreshower, and edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::getRecord().

Referenced by CaloTopologyBuilder().

{
   edm::ESHandle<CaloGeometry>                  theGeometry   ;
   iRecord.getRecord<CaloGeometryRecord>().get( theGeometry ) ;

   ReturnType ct ( new CaloTopology ) ;
   //ECAL parts      
   ct->setSubdetTopology( DetId::Ecal,
                          EcalBarrel,
                          new EcalBarrelTopology( theGeometry ) ) ;
   ct->setSubdetTopology( DetId::Ecal,
                          EcalEndcap,
                          new EcalEndcapTopology( theGeometry ) ) ;
   ct->setSubdetTopology( DetId::Ecal,
                          EcalPreshower,
                          new EcalPreshowerTopology(theGeometry));
   return ct ;
}