CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions
HcalFlexiHardcodeGeometryLoader Class Reference

#include <HcalFlexiHardcodeGeometryLoader.h>

Public Member Functions

 HcalFlexiHardcodeGeometryLoader ()
 
CaloSubdetectorGeometryload (const HcalTopology &fTopology)
 

Detailed Description

Date:
2008/08/30 20:18:54
Revision:
1.2
Author
F.Ratnikov, UMd

Definition at line 15 of file HcalFlexiHardcodeGeometryLoader.h.

Constructor & Destructor Documentation

HcalFlexiHardcodeGeometryLoader::HcalFlexiHardcodeGeometryLoader ( )

Definition at line 374 of file HcalFlexiHardcodeGeometryLoader.cc.

375 {
376 }

Member Function Documentation

CaloSubdetectorGeometry * HcalFlexiHardcodeGeometryLoader::load ( const HcalTopology fTopology)

Definition at line 378 of file HcalFlexiHardcodeGeometryLoader.cc.

References CaloSubdetectorGeometry::allocateCorners(), CaloSubdetectorGeometry::allocatePar(), CaloSubdetectorGeometry::cornersMgr(), HcalTopology::firstHEDoublePhiRing(), HcalGeometry::k_NumberOfCellsForCorners, HcalGeometry::k_NumberOfParametersPerShape, HcalGeometry::k_NumberOfShapes, and CaloSubdetectorGeometry::parMgr().

Referenced by HcalHardcodeGeometryEP::produceIdeal().

378  {
379  CaloSubdetectorGeometry* hcalGeometry = new HcalGeometry (&fTopology);
380  if( 0 == hcalGeometry->cornersMgr() ) hcalGeometry->allocateCorners (
382  if( 0 == hcalGeometry->parMgr() ) hcalGeometry->allocatePar (
385  // ugly kluge to extract H2 mode from the topology
386  if (fTopology.firstHEDoublePhiRing() < 22) { // regular geometry
387  fillHBHO (hcalGeometry, makeHBCells(), true);
388  fillHBHO (hcalGeometry, makeHOCells(), false);
389  fillHF (hcalGeometry, makeHFCells());
390  fillHE (hcalGeometry, makeHECells());
391  }
392  else { // TB geometry
393  fillHBHO (hcalGeometry, makeHBCells(), true);
394  fillHBHO (hcalGeometry, makeHOCells(), false);
395  fillHE (hcalGeometry, makeHECells_H2());
396  }
397  return hcalGeometry;
398 }
void allocatePar(ParVec::size_type n, unsigned int m)
int firstHEDoublePhiRing() const
Definition: HcalTopology.h:70
CaloCellGeometry::CornersMgr * cornersMgr()
void allocateCorners(CaloCellGeometry::CornersVec::size_type n)