00001 // $Id: MagFieldReader.h,v 1.8 2008/07/03 10:35:16 ahicheur Exp $ 00002 #ifndef MAGFIELDREADER_H 00003 #define MAGFIELDREADER_H 1 00004 00005 // Include files 00006 // from STL 00007 #include <string> 00008 00009 // from Gaudi 00010 #include "GaudiAlg/GaudiTupleAlg.h" 00011 00012 // Forward references 00013 class IMagneticFieldSvc; 00014 00015 00025 class MagFieldReader : public GaudiTupleAlg { 00026 public: 00028 MagFieldReader( const std::string& name, ISvcLocator* pSvcLocator ); 00029 00030 virtual ~MagFieldReader( ){ }; 00031 00032 virtual StatusCode initialize(); 00033 virtual StatusCode execute (); 00034 virtual StatusCode finalize (); 00035 void TestBdl(); 00036 00037 protected: 00038 00039 private: 00040 00041 // Pointer to the magnetic field service 00042 IMagneticFieldSvc* m_pIMF; 00043 IMagneticFieldSvc* m_pIAF; 00044 00045 00046 00047 00048 // range and steps in z to get the magnetic field 00049 double m_zMin, m_zMax, m_step; 00050 00051 // range in x and y 00052 double m_xMin, m_xMax, m_yMin, m_yMax; 00053 std::string m_FieldServiceName; 00054 bool m_testbdl; 00055 int m_nInt; 00056 00057 00058 00059 }; 00060 #endif // MAGFIELDREADER_H