ATLAS Offline Software
DetectorFieldManagerTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef G4ATLASTOOLS_DetectorFieldManagerTool_H
6 #define G4ATLASTOOLS_DetectorFieldManagerTool_H
7 
8 // Geant4 field manger
9 #include "G4FieldManager.hh"
10 
11 // Local includes
14 
23 {
24 
25  public:
26 
28  DetectorFieldManagerTool( const std::string& type, const std::string& name,
29  const IInterface* parent );
30 
33 
35  StatusCode initializeField() override final;
36 
37  protected:
38 
40  Gaudi::Property<std::vector<std::string> > m_logVolumeList{this, "LogicalVolumes", {}, "List of logical volumes to which the field will be applied"};
41  Gaudi::Property<std::vector<std::string> > m_physVolumeList{this, "PhysicalVolumes", {}, "List of physical volumes to which the field will be applied"};
42 
44  Gaudi::Property<bool> m_muonOnlyField{this, "MuonOnlyField", false, "Only muons experience the magnetic field"};
45 
48 
49 };
50 
51 #endif // G4ATLASTOOLS_DetectorFieldManagerTool_H
DetectorFieldManagerTool::DetectorFieldManagerTool
DetectorFieldManagerTool(const std::string &type, const std::string &name, const IInterface *parent)
Standard constructor.
Definition: DetectorFieldManagerTool.cxx:25
DetectorFieldManagerTool::m_fieldMgrHolder
thread_utils::ThreadLocalOwner< G4FieldManager > m_fieldMgrHolder
My field manager.
Definition: DetectorFieldManagerTool.h:47
DetectorFieldManagerTool::m_logVolumeList
Gaudi::Property< std::vector< std::string > > m_logVolumeList
List of volumes to assign this field configuration to.
Definition: DetectorFieldManagerTool.h:40
thread_utils::ThreadLocalOwner< G4FieldManager >
DetectorFieldManagerTool::m_muonOnlyField
Gaudi::Property< bool > m_muonOnlyField
Option for muons feeling the B-field only.
Definition: DetectorFieldManagerTool.h:44
G4FieldManagerToolBase.h
ThreadLocalHolder.h
Defines template helper classes for thread-local storage.
G4FieldManagerToolBase
Definition: G4FieldManagerToolBase.h:34
Property
Support class for PropertyMgr.
Definition: Property.h:23
protected
#define protected
Definition: DetDescrConditionsDict_dict_fixes.cxx:14
DetectorFieldManagerTool::initializeField
StatusCode initializeField() override final
Initialize a field manager.
Definition: DetectorFieldManagerTool.cxx:35
DetectorFieldManagerTool
Tool for setting up a volume-local magnetic field manager.
Definition: DetectorFieldManagerTool.h:23
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
vector
Definition: MultiHisto.h:13
test_pyathena.parent
parent
Definition: test_pyathena.py:15
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
DetectorFieldManagerTool::m_physVolumeList
Gaudi::Property< std::vector< std::string > > m_physVolumeList
Definition: DetectorFieldManagerTool.h:41
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
DetectorFieldManagerTool::~DetectorFieldManagerTool
~DetectorFieldManagerTool()
Empty destructor.
Definition: DetectorFieldManagerTool.h:32
Gaudi
=============================================================================
Definition: CaloGPUClusterAndCellDataMonitorOptions.h:273