ATLAS Offline Software
ExtraParticlesPhysicsTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef EXTRA_PARTICLES__EXTRA_PARTICLES_PHYSICS_TOOL_H
6 #define EXTRA_PARTICLES__EXTRA_PARTICLES_PHYSICS_TOOL_H 1
7 
8 // Include files
11 #include "G4VPhysicsConstructor.hh"
12 
22  : public G4VPhysicsConstructor,
23  public extends<AthAlgTool, IPhysicsOptionTool> {
24  public:
26  ExtraParticlesPhysicsTool(const std::string &type, const std::string &name,
27  const IInterface *parent);
28 
29  virtual ~ExtraParticlesPhysicsTool();
30 
32  virtual StatusCode initialize() override final;
33  virtual void ConstructParticle() override final;
34  virtual void ConstructProcess() override final;
35 
37  virtual ExtraParticlesPhysicsTool *GetPhysicsOption() override final;
38 
39  protected:
41  std::map<std::string, std::vector<double>> m_extraParticlesConfig;
42 
44  std::set<G4ParticleDefinition *> m_extraParticles;
45 };
46 
47 #endif // EXTRA_PARTICLES__EXTRA_PARTICLES_PHYSICS_TOOL_H
ExtraParticlesPhysicsTool
Definition: ExtraParticlesPhysicsTool.h:23
ExtraParticlesPhysicsTool::m_extraParticles
std::set< G4ParticleDefinition * > m_extraParticles
a set to hold the newly created extra particles
Definition: ExtraParticlesPhysicsTool.h:44
ExtraParticlesPhysicsTool::m_extraParticlesConfig
std::map< std::string, std::vector< double > > m_extraParticlesConfig
a set of parameters for extra particle building
Definition: ExtraParticlesPhysicsTool.h:41
IPhysicsOptionTool.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ExtraParticlesPhysicsTool::initialize
virtual StatusCode initialize() override final
Initialize method.
Definition: ExtraParticlesPhysicsTool.cxx:48
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
ExtraParticlesPhysicsTool::ExtraParticlesPhysicsTool
ExtraParticlesPhysicsTool(const std::string &type, const std::string &name, const IInterface *parent)
Standard constructor.
Definition: ExtraParticlesPhysicsTool.cxx:31
ExtraParticlesPhysicsTool::ConstructProcess
virtual void ConstructProcess() override final
Definition: ExtraParticlesPhysicsTool.cxx:101
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
ExtraParticlesPhysicsTool::GetPhysicsOption
virtual ExtraParticlesPhysicsTool * GetPhysicsOption() override final
Implements.
Definition: ExtraParticlesPhysicsTool.cxx:57
ExtraParticlesPhysicsTool::ConstructParticle
virtual void ConstructParticle() override final
Definition: ExtraParticlesPhysicsTool.cxx:64
ExtraParticlesPhysicsTool::~ExtraParticlesPhysicsTool
virtual ~ExtraParticlesPhysicsTool()
Destructor.
Definition: ExtraParticlesPhysicsTool.cxx:43