CMS 3D CMS Logo

HcalHardcodeGeometryEP.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: HcalHardcodeGeometryEP
4 // Class: HcalHardcodeGeometryEP
5 //
13 //
14 // Original Author: Jeremiah Mans
15 // Created: Mon Oct 3 11:35:27 CDT 2005
16 //
17 //
18 
20 
30 
31 class HcalTopology;
32 
33 //
34 // constants, enums and typedefs
35 //
36 
37 //
38 // static data member definitions
39 //
40 
41 //
42 // constructors and destructor
43 //
44 
46  useOld_ = ps.getParameter<bool>("UseOldLoader");
47  //the following line is needed to tell the framework what
48  // data is being produced
49  setWhatProduced( this,
53 
54 // disable
55 // setWhatProduced( this,
56 // &HcalHardcodeGeometryEP::produceIdeal,
57 // edm::es::Label( "HCAL" ) );
58 }
59 
60 
62 
63 
64 //
65 // member functions
66 //
67 
68 
71 
72  edm::LogInfo("HCAL") << "Using default HCAL topology" ;
74  iRecord.get( hcons ) ;
76  iRecord.get( topology ) ;
77  if (useOld_) {
79  return ReturnType (loader.load (*topology));
80  } else {
82  return ReturnType (loader.load (*topology, *hcons));
83  }
84 }
85 
88  const HcalRecNumberingRecord& idealRecord = iRecord.getRecord<HcalRecNumberingRecord>();
89  return produceIdeal (idealRecord);
90 }
91 
T getParameter(std::string const &) const
HcalHardcodeGeometryEP(const edm::ParameterSet &)
depends_on::OneHolder< T, TDependsOnRecord > dependsOn(void(T::*iT)(const TDependsOnRecord &))
CaloTopology const * topology(0)
static std::string producerTag()
Definition: HcalGeometry.h:66
void setWhatProduced(T *iThis, const es::Label &iLabel=es::Label())
Definition: ESProducer.h:115
void get(HolderT &iHolder) const
std::shared_ptr< CaloSubdetectorGeometry > ReturnType
CaloSubdetectorGeometry * load(const HcalTopology &fTopology)
void idealRecordCallBack(const HcalRecNumberingRecord &)
ReturnType produceAligned(const HcalGeometryRecord &)
ReturnType produceIdeal(const HcalRecNumberingRecord &)
CaloSubdetectorGeometry * load(const HcalTopology &fTopology, const HcalDDDRecConstants &hcons)