ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Simulation
G4Atlas
G4AtlasInterfaces
G4AtlasInterfaces
IPunchThroughG4Tool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef IPunchThroughG4Tool_H
6
#define IPunchThroughG4Tool_H
7
8
// C++
9
#include <vector>
10
#include <map>
11
#include <string>
12
13
// Gaudi
14
#include "GaudiKernel/IAlgTool.h"
15
16
//G4
17
#include "G4TrackVector.hh"
18
19
// forward declarations
20
class
G4Track;
21
class
G4FastTrack;
22
class
G4FastStep;
23
class
G4ParticleTable;
24
25
namespace
CLHEP
{
26
class
HepRandomEngine;
27
}
28
36
class
IPunchThroughG4Tool
:
virtual
public
IAlgTool
37
{
38
public
:
40
DeclareInterfaceID
(
IPunchThroughG4Tool
, 1, 0);
41
43
virtual
std::vector<std::map<std::string, double>>
computePunchThroughParticles
(
const
G4FastTrack& fastTrack, CLHEP::HepRandomEngine* rndmEngine,
double
punchThroughProbability,
double
punchThroughClassifierRand) = 0;
44
virtual
void
createAllSecondaryTracks
(G4ParticleTable &ptable, G4FastStep& fastStep,
const
G4Track& g4PrimaryTrack, std::vector<std::map<std::string, double>> &secKinematicsMapVect, G4TrackVector& secTrackCont,
const
std::vector<double> &caloMSVars) = 0;
45
47
virtual
std::vector<double>
getCaloMSVars
() = 0;
48
};
49
50
#endif
// IPunchThroughG4Tool_H
IPunchThroughG4Tool
Interface for a tool to simulate punchtrough particles outgoing Calo-MS boundaries.
Definition
IPunchThroughG4Tool.h:37
IPunchThroughG4Tool::DeclareInterfaceID
DeclareInterfaceID(IPunchThroughG4Tool, 1, 0)
AlgTool interface method, handles constructor/destructor.
IPunchThroughG4Tool::createAllSecondaryTracks
virtual void createAllSecondaryTracks(G4ParticleTable &ptable, G4FastStep &fastStep, const G4Track &g4PrimaryTrack, std::vector< std::map< std::string, double > > &secKinematicsMapVect, G4TrackVector &secTrackCont, const std::vector< double > &caloMSVars)=0
IPunchThroughG4Tool::getCaloMSVars
virtual std::vector< double > getCaloMSVars()=0
Other methods.
IPunchThroughG4Tool::computePunchThroughParticles
virtual std::vector< std::map< std::string, double > > computePunchThroughParticles(const G4FastTrack &fastTrack, CLHEP::HepRandomEngine *rndmEngine, double punchThroughProbability, double punchThroughClassifierRand)=0
Creates new vector of G4Track out of a given G4Track.
CLHEP
STD'S.
Definition
CaloNoiseCompCondAlg.h:57
Generated on
for ATLAS Offline Software by
1.17.0