CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
IdealZPrism.h
Go to the documentation of this file.
1 #ifndef GEOMETRY_CALOGEOMETRY_IDEALZPRISM_H
2 #define GEOMETRY_CALOGEOMETRY_IDEALZPRISM_H 1
3 
5 
6 namespace calogeom
7 {
29  class IdealZPrism : public CaloCellGeometry
30  {
31  public:
32 
33  IdealZPrism( const GlobalPoint& faceCenter ,
34  const CornersMgr* mgr ,
35  const double* parm ) :
36  CaloCellGeometry ( faceCenter, mgr, parm ) {}
37 
38  virtual ~IdealZPrism() {}
39 
40  virtual const CornersVec& getCorners() const ;
41 
42  double dEta() const { return param()[0] ; }
43  double dPhi() const { return param()[1] ; }
44  double dz() const { return param()[2] ; }
45  double eta() const { return param()[3] ; }
46  double z() const { return param()[4] ; }
47 
48  static std::vector<HepGeom::Point3D<double> > localCorners( const double* pv,
49  HepGeom::Point3D<double> & ref ) ;
50 
51  virtual std::vector<HepGeom::Point3D<double> > vocalCorners( const double* pv,
52  HepGeom::Point3D<double> & ref ) const
53  { return localCorners( pv, ref ) ; }
54 
55  private:
56  };
57 
58  std::ostream& operator<<( std::ostream& s , const IdealZPrism& cell ) ;
59 }
60 
61 
62 #endif
EZArrayFL< GlobalPoint > CornersVec
double dz() const
Definition: IdealZPrism.h:44
virtual ~IdealZPrism()
Definition: IdealZPrism.h:38
static std::vector< HepGeom::Point3D< double > > localCorners(const double *pv, HepGeom::Point3D< double > &ref)
Definition: IdealZPrism.cc:34
const double * param() const
double dEta() const
Definition: IdealZPrism.h:42
IdealZPrism(const GlobalPoint &faceCenter, const CornersMgr *mgr, const double *parm)
Definition: IdealZPrism.h:33
double eta() const
Definition: IdealZPrism.h:45
double dPhi() const
Definition: IdealZPrism.h:43
virtual std::vector< HepGeom::Point3D< double > > vocalCorners(const double *pv, HepGeom::Point3D< double > &ref) const
Definition: IdealZPrism.h:51
Definition: EZMgrFL.h:8
double z() const
Definition: IdealZPrism.h:46
virtual const CornersVec & getCorners() const
Definition: IdealZPrism.cc:76
std::ostream & operator<<(std::ostream &s, const IdealObliquePrism &cell)
string s
Definition: asciidump.py:422