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 template <class T>
22 
23 class MagVolume6Faces : public MagVolume {
24 public:
25 
27  const std::vector<VolumeSide>& faces,
28  const MagneticFieldProvider<float> * mfp,
29  double sf=1.);
30 
31  using MagVolume::inside;
32  bool inside( const GlobalPoint& gp, double tolerance=0.) const override;
33 
35  const std::vector<VolumeSide>& faces() const override {return theFaces;}
36 
37  //--> These are used for debugging purposes only
38  short volumeNo;
39  char copyno;
40  //<--
41 
42 private:
43 
44  std::vector<VolumeSide> theFaces;
45 
46 };
47 
48 #endif
const std::vector< VolumeSide > & faces() const override
Access to volume faces.
GloballyPositioned< float >::GlobalPoint GlobalPoint
Definition: MagVolume.h:19
const double tolerance
bool inside(const GlobalPoint &gp, double tolerance=0.) const override
virtual bool inside(const GlobalPoint &gp, double tolerance=0.) const =0
std::vector< VolumeSide > theFaces
MagVolume6Faces(const PositionType &pos, const RotationType &rot, const std::vector< VolumeSide > &faces, const MagneticFieldProvider< float > *mfp, double sf=1.)