ATLAS Offline Software
Simulation
G4Atlas
G4AtlasServices
src
G4MagFieldSvcBase.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef G4ATLASSERVICES_G4MagFieldSvcBase_H
6
#define G4ATLASSERVICES_G4MagFieldSvcBase_H
7
8
// Geant4 includes
9
#include "G4SystemOfUnits.hh"
10
11
// Framework includes
12
#include "
AthenaBaseComps/AthService.h
"
13
14
// G4Atlas includes
15
#include "
G4AtlasInterfaces/IG4FieldSvc.h
"
16
17
// Forward declarations
18
class
G4MagneticField;
19
20
28
class
G4MagFieldSvcBase
:
public
extends<AthService, IG4FieldSvc> {
29
30
public
:
32
G4MagFieldSvcBase
(
const
std::string&
name
, ISvcLocator* pSvcLocator );
33
35
virtual
~G4MagFieldSvcBase
() {};
36
39
G4MagneticField*
getField
() override
final
;
40
41
protected
:
42
44
virtual G4MagneticField*
makeField
() = 0;
45
};
46
47
#endif // G4ATLASSERVICES_G4AtlasFieldTool_H
G4MagFieldSvcBase::makeField
virtual G4MagneticField * makeField()=0
This method must be overridden by concrete tools to create a new field.
G4MagFieldSvcBase::~G4MagFieldSvcBase
virtual ~G4MagFieldSvcBase()
Empty destructor.
Definition:
G4MagFieldSvcBase.h:35
G4MagFieldSvcBase
Definition:
G4MagFieldSvcBase.h:28
G4MagFieldSvcBase::getField
G4MagneticField * getField() override final
Retrieve a G4 magnetic field object.
Definition:
G4MagFieldSvcBase.cxx:31
IG4FieldSvc.h
columnar::final
CM final
Definition:
ColumnAccessor.h:106
protected
#define protected
Definition:
GenEventCnv_p1.h:26
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:240
G4MagFieldSvcBase::G4MagFieldSvcBase
G4MagFieldSvcBase(const std::string &name, ISvcLocator *pSvcLocator)
Standard constructor.
Definition:
G4MagFieldSvcBase.cxx:22
AthService.h
Generated on Tue Nov 25 2025 21:10:31 for ATLAS Offline Software by
1.8.18