5#ifndef LARREADOUTGEOMETRY_HECDETDESCR_H
6#define LARREADOUTGEOMETRY_HECDETDESCR_H
8#include "GeoModelKernel/CellBinning.h"
9#include "GeoModelKernel/RCBase.h"
38 HECDetDescr (
const HECDetectorManager *detManager,
unsigned int sampling,
unsigned int region,
const CellBinning &phiBinning,
bool isTestBeam =
false);
48 double getZMin (
unsigned int block)
const;
53 double getZMax (
unsigned int block)
const;
58 double getRMin (
unsigned int block,
unsigned int eta)
const;
63 double getRMax (
unsigned int block,
unsigned int eta)
const;
147 if (!segment)
throw std::range_error(
"Error in HECDetDescr, nonexistent segment.");
161 if (!segment)
throw std::range_error(
"Error in HECDetDescr, nonexistent segment.");
175 if (!bPtr)
throw std::range_error(
"Error in HECDetDescr, nonexistent block.");
Scalar eta() const
pseudorapidity method
unsigned int m_samplingIndex
unsigned int getBlockIndex(unsigned int block) const
Gets the block index for the ith block (in case it is ever needed).
unsigned int getSamplingIndex() const
The sampling index.
std::vector< double > m_zMin
HECDetDescr(const HECDetDescr &right)
double getRMax(unsigned int block, unsigned int eta) const
Returns max r at block i.
~HECDetDescr()
Destructor.
double getZMax(unsigned int block) const
Returns max z for the ith block at eta index.
const HECDetectorManager * getManager() const
The manager.
unsigned int m_regionIndex
unsigned int getNumBlocks() const
Number of blocks in the region.
HECDetDescr & operator=(const HECDetDescr &right)
unsigned int m_firstBlock
HECDetDescr(const HECDetectorManager *detManager, unsigned int sampling, unsigned int region, const CellBinning &phiBinning, bool isTestBeam=false)
Constructor.
unsigned int m_outerRadSegNumber
const HECDetectorManager * m_manager
const HECRadialSegment * getRadialSegment(unsigned int block, unsigned int eta) const
Returns the radial segment of in block b with eta index i, or else NULL.
double getRMin(unsigned int block, unsigned int eta) const
Returns min r for block i.
const CellBinning & getPhiBinning() const
The Binning in Phi.
double getZMin(unsigned int block) const
Returns min z for the ith block at eta index.
std::vector< double > m_zMax
unsigned int getRegionIndex() const
The region Index.
const CellBinning & getEtaBinning() const
The Binning in Eta.
A manager class providing access to readout geometry information for the hadronic endcap calorimeter.
const HECLongBlock * getBlock(unsigned int i) const
Random Access to Blocks.
const HECRadialSegment * getRadialSegment(unsigned int i) const
Returns a radial segment if it exists.
Description of a radial segment of a HEC module.
double getMaxVal() const
Maximum Range Value.
double getMinVal() const
Minimum Range Value.