Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:30:06

0001 #ifndef SimG4CMS_HGCalTestBeam_AHCALGEOMETRY_H
0002 #define SimG4CMS_HGCalTestBeam_AHCALGEOMETRY_H 1
0003 
0004 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0005 #include "SimG4CMS/HGCalTestBeam/interface/AHCalDetId.h"
0006 #include "Geometry/HGCalCommonData/interface/AHCalParameters.h"
0007 
0008 /** \class AHCalGeometry
0009  *  Gets position of AHCal cell
0010  */
0011 
0012 class AHCalGeometry {
0013 public:
0014   /** Create geometry of AHCal */
0015   AHCalGeometry(edm::ParameterSet const&);
0016   AHCalGeometry() = delete;
0017   ~AHCalGeometry() {}
0018 
0019   /// get maximum number of layers
0020   int maxDepth() const { return ahcal_->maxDepth(); }
0021 
0022   /// get the local coordinate in the plane and along depth
0023   std::pair<double, double> getXY(const AHCalDetId& id) const;
0024   double getZ(const AHCalDetId& id) const;
0025 
0026 private:
0027   std::unique_ptr<AHCalParameters> ahcal_;
0028 };
0029 #endif