00001 #ifndef MagVolumeOutsideValidity_H 00002 #define MagVolumeOutsideValidity_H 00003 00004 #include "MagneticField/VolumeGeometry/interface/MagVolume.h" 00005 #include <exception> 00006 00007 class MagVolumeOutsideValidity : public std::exception { 00008 public: 00009 00010 MagVolumeOutsideValidity( MagVolume::LocalPoint l, 00011 MagVolume::LocalPoint u) throw() : 00012 lower_(l), upper_(u) {} 00013 00014 MagVolume::LocalPoint lower() const throw() {return lower_;} 00015 MagVolume::LocalPoint upper() const throw() {return upper_;} 00016 00017 virtual ~MagVolumeOutsideValidity() throw() {} 00018 00019 virtual const char* what() const throw() { return "Magnetic field requested outside of validity of the MagVolume";} 00020 00021 private: 00022 00023 MagVolume::LocalPoint lower_; 00024 MagVolume::LocalPoint upper_; 00025 }; 00026 #endif