1 #ifndef PreshowerStrip_h
2 #define PreshowerStrip_h
5 #include <CLHEP/Geometry/Point3D.h>
6 #include <CLHEP/Geometry/Plane3D.h>
7 #include <CLHEP/Geometry/Vector3D.h>
8 #include <CLHEP/Geometry/Transform3D.h>
31 const double* parm ) :
38 const double dx()
const {
return param()[0] ; }
39 const double dy()
const {
return param()[1] ; }
40 const double dz()
const {
return param()[2] ; }
42 virtual std::vector<HepGeom::Point3D<double> >
vocalCorners(
const double* pv,
43 HepGeom::Point3D<double> & ref )
const
46 static std::vector<HepGeom::Point3D<double> >
localCorners(
const double* pv,
47 HepGeom::Point3D<double> & ref ) ;
48 virtual HepGeom::Transform3D
getTransform( std::vector<HepGeom::Point3D<double> >* lptr )
const
49 {
return HepGeom::Transform3D() ; }
EZArrayFL< GlobalPoint > CornersVec
virtual HepGeom::Transform3D getTransform(std::vector< HepGeom::Point3D< double > > *lptr) const
virtual const CornersVec & getCorners() const
const double * param() const
std::ostream & operator<<(std::ostream &out, const ALILine &li)
A base class to handle the shape of preshower strips.
PreshowerStrip(const GlobalPoint &po, const CornersMgr *mgr, const double *parm)
virtual ~PreshowerStrip()
virtual std::vector< HepGeom::Point3D< double > > vocalCorners(const double *pv, HepGeom::Point3D< double > &ref) const
static std::vector< HepGeom::Point3D< double > > localCorners(const double *pv, HepGeom::Point3D< double > &ref)