File indexing completed on 2023-03-17 11:14:32
0001 #ifndef VolumeGridTester_h
0002 #define VolumeGridTester_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #include "MagneticField/Interpolation/interface/MagProviderInterpol.h"
0013 #include "MagneticField/Interpolation/interface/MFGrid.h"
0014 #include <DataFormats/GeometryVector/interface/GlobalPoint.h>
0015
0016 class MagVolume6Faces;
0017 class VolumeBasedMagneticField;
0018
0019 class VolumeGridTester {
0020 public:
0021 VolumeGridTester(const MagVolume6Faces* vol, const MagProviderInterpol* mp, const VolumeBasedMagneticField* field)
0022 : volume_(vol), magProvider_(mp), field_(field) {}
0023
0024 bool testInside() const;
0025 bool testFind(GlobalPoint gp) const;
0026
0027 private:
0028 const MagVolume6Faces* volume_;
0029 const MagProviderInterpol* magProvider_;
0030 const VolumeBasedMagneticField* field_;
0031
0032 void dumpProblem(const MFGrid::LocalPoint& lp, double tolerance) const;
0033 };
0034
0035 #endif