1#include "TrkExtAlg/ExtBesMagneticField.h"
3#include "GaudiKernel/AlgFactory.h"
4#include "GaudiKernel/MsgStream.h"
5#include "GaudiKernel/SvcFactory.h"
6#include "GaudiKernel/ISvcLocator.h"
7#include "GaudiKernel/SmartDataPtr.h"
8#include "GaudiKernel/Bootstrap.h"
10#include "G4FieldManager.hh"
11#include "G4MagneticField.hh"
14#include "CLHEP/Geometry/Vector3D.h"
15#include "CLHEP/Geometry/Point3D.h"
16#include "CLHEP/Units/PhysicalConstants.h"
18#ifndef ENABLE_BACKWARDS_COMPATIBILITY
21#ifndef ENABLE_BACKWARDS_COMPATIBILITY
34 ISvcLocator* svcLocator = Gaudi::svcLocator();
35 StatusCode sc = svcLocator->service(
"MagneticFieldSvc",m_pIMF);
36 if(sc!=StatusCode::SUCCESS) {
37 G4cout<<
"Unable to open Magnetic field service"<<G4endl;
64#include "G4TransportationManager.hh"
68 return G4TransportationManager::GetTransportationManager()->GetFieldManager();
HepGeom::Point3D< double > HepPoint3D
HepGeom::Vector3D< double > HepVector3D
void GetFieldValue(const double Point[3], double *Bfield) const
G4FieldManager * GetFieldManager()
virtual StatusCode uniFieldVector(const HepGeom::Point3D< double > &xyz, HepGeom::Vector3D< double > &fvec) const =0
virtual StatusCode fieldVector(const HepGeom::Point3D< double > &xyz, HepGeom::Vector3D< double > &fvec) const =0
virtual bool ifRealField() const =0