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 19:32:21
Revision:
1.1.2.2
Author
F.Ratnikov, UMd

Definition at line 15 of file HcalFlexiHardcodeGeometryLoader.h.

Constructor & Destructor Documentation

HcalFlexiHardcodeGeometryLoader::HcalFlexiHardcodeGeometryLoader ( )

Definition at line 378 of file HcalFlexiHardcodeGeometryLoader.cc.

379 {
380 }

Member Function Documentation

CaloSubdetectorGeometry * HcalFlexiHardcodeGeometryLoader::load ( const HcalTopology fTopology)

Definition at line 382 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().

382  {
383  CaloSubdetectorGeometry* hcalGeometry = new HcalGeometry (&fTopology);
384  if( 0 == hcalGeometry->cornersMgr() ) hcalGeometry->allocateCorners (
386  if( 0 == hcalGeometry->parMgr() ) hcalGeometry->allocatePar (
389  // ugly kluge to extract H2 mode from the topology
390  if (fTopology.firstHEDoublePhiRing() < 22) { // regular geometry
391  fillHBHO (hcalGeometry, makeHBCells(), true);
392  fillHBHO (hcalGeometry, makeHOCells(), false);
393  fillHF (hcalGeometry, makeHFCells());
394  fillHE (hcalGeometry, makeHECells());
395  }
396  else { // TB geometry
397  fillHBHO (hcalGeometry, makeHBCells(), true);
398  fillHBHO (hcalGeometry, makeHOCells(), false);
399  fillHE (hcalGeometry, makeHECells_H2());
400  }
401  return hcalGeometry;
402 }
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)