00001 // $Id: IMagFieldTool.h,v 1.1 2008/07/26 18:04:53 cattanem Exp $ 00002 #ifndef IMAGFIELDTOOL_H 00003 #define IMAGFIELDTOOL_H 1 00004 00005 // Include files 00006 // from STL 00007 #include <string> 00008 #include <vector> 00009 00010 // from Gaudi 00011 #include "GaudiKernel/Vector3DTypes.h" 00012 #include "GaudiKernel/Point3DTypes.h" 00013 #include "GaudiKernel/IAlgTool.h" 00014 00015 static const InterfaceID IID_IMagFieldTool ( "IMagFieldTool", 1, 0 ); 00016 00023 class IMagFieldTool : virtual public IAlgTool { 00024 public: 00025 00027 static const InterfaceID& interfaceID() { return IID_IMagFieldTool; } 00028 00030 virtual void fieldVector( const Gaudi::XYZPoint& xyz, 00031 Gaudi::XYZVector& fvec ) const = 0; 00032 00034 virtual StatusCode updateMap( const std::vector<std::string>& theFiles, 00035 const double& scaleFactor ) = 0; 00036 00037 protected: 00038 00039 private: 00040 00041 }; 00042 #endif // IMAGFIELDTOOL_H