CMS 3D CMS Logo

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 
31  DDSolidShape shape, const std::vector<VolumeSide>& faces,
32  const MagneticFieldProvider<float> * mfp,
33  double sf=1.);
34 
35  using MagVolume::inside;
36  bool inside( const GlobalPoint& gp, double tolerance=0.) const override;
37 
39  const std::vector<VolumeSide>& faces() const override {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
const std::vector< VolumeSide > & faces() const override
Access to volume faces.
GloballyPositioned< float >::GlobalPoint GlobalPoint
Definition: MagVolume.h:20
DDSolidShape
Definition: DDSolidShapes.h:6
bool inside(const GlobalPoint &gp, double tolerance=0.) const override
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.)
std::vector< VolumeSide > theFaces