Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:22:33

0001 #ifndef MagELayer_H
0002 #define MagELayer_H
0003 
0004 /** \class MagELayer
0005  *  A layer of volumes in an endcap sector.
0006  *
0007  *  \author N. Amapane - INFN Torino
0008  */
0009 
0010 #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
0011 
0012 #include <vector>
0013 
0014 class MagVolume;
0015 
0016 class MagELayer {
0017 public:
0018   /// Constructor
0019   MagELayer(const std::vector<MagVolume*>& volumes, double zMin, double zMax);
0020 
0021   /// Destructor
0022   virtual ~MagELayer();
0023 
0024   /// Find the volume containing a point, with a given tolerance
0025   const MagVolume* findVolume(const GlobalPoint& gp, double tolerance) const;
0026 
0027   /// Lower Z bound
0028   double minZ() const { return theZMin; }
0029 
0030   /// Upper Z bound
0031   double maxZ() const { return theZMax; }
0032 
0033 private:
0034   std::vector<MagVolume*> theVolumes;
0035   double theZMin;
0036   double theZMax;
0037 };
0038 #endif