test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MagVolume6Faces.h
Go to the documentation of this file.
1 #ifndef MagVolume6Faces_h
2 #define MagVolume6Faces_h
3 
17 
18 #include <vector>
19 
20 //-- FIXME
21 #include <string>
22 //--
23 
24 template <class T>
26 
27 class MagVolume6Faces : public MagVolume {
28 public:
29 
30  MagVolume6Faces( const PositionType& pos, const RotationType& rot,
31  DDSolidShape shape, const std::vector<VolumeSide>& faces,
32  const MagneticFieldProvider<float> * mfp,
33  double sf=1.);
34 
35  using MagVolume::inside;
36  virtual bool inside( const GlobalPoint& gp, double tolerance=0.) const;
37 
39  virtual const std::vector<VolumeSide>& faces() const {return theFaces;}
40 
41  //--> These are used for debugging purposes only
42  short volumeNo;
43  char copyno;
44  //<--
45 
46 private:
47 
48  std::vector<VolumeSide> theFaces;
49 
50 };
51 
52 #endif
GloballyPositioned< float >::GlobalPoint GlobalPoint
Definition: MagVolume.h:20
DDSolidShape
Definition: DDSolidShapes.h:6
virtual bool inside(const GlobalPoint &gp, double tolerance=0.) const =0
MagVolume6Faces(const PositionType &pos, const RotationType &rot, DDSolidShape shape, const std::vector< VolumeSide > &faces, const MagneticFieldProvider< float > *mfp, double sf=1.)
virtual bool inside(const GlobalPoint &gp, double tolerance=0.) const
virtual const std::vector< VolumeSide > & faces() const
Access to volume faces.
std::vector< VolumeSide > theFaces