|
ATLAS Offline Software
|
Go to the documentation of this file.
19 m_passProcessCodeRangeLow(0),
20 m_passProcessCodeRangeHigh(0),
21 m_passProcessCategory(0)
39 for(
auto region : m_regionListProperty.value()) {
41 ATH_MSG_ERROR(
"Unknown Region (" << region <<
") specified. Please check your configuration.");
42 return StatusCode::FAILURE;
47 return StatusCode::SUCCESS;
55 return StatusCode::SUCCESS;
61 if( (processCode>m_passProcessCodeRangeLow && processCode<m_passProcessCodeRangeHigh) ){
65 if ( !isSUSYParticle( abs(pdg) ) ) {
77 if( processCategory==m_passProcessCategory ){
80 ATH_MSG_VERBOSE(
"ACHLLP: saved a truth interaction fUserDefined for pdg "<<pdg);
93 return std::find( m_regionListProperty.begin(),
94 m_regionListProperty.end(),
95 geoID ) != m_regionListProperty.end();
101 return ( (
id>1000000 &&
id<1000007) || (
id>1000010 &&
id<1000017) ||
102 (
id>2000000 &&
id<2000007) || (
id>2000010 &&
id<2000017) ||
103 (
id>1000020 &&
id<1000026) || (
id>1000034 &&
id<1000040) ||
104 id==1000512 ||
id==1000522 ||
id==1000991 ||
id==1000993 ||
105 id==1000612 ||
id==1000622 ||
id==1000632 ||
id==1000642 ||
id==1000652 ||
id==1005211 ||
106 id==1006113 ||
id==1006211 ||
id==1006213 ||
id==1006223 ||
id==1006311 ||
107 id==1006313 ||
id==1006321 ||
id==1006323 ||
id==1006333 ||
108 id==1009111 ||
id==1009113 ||
id==1009211 ||
id==1009213 ||
id==1009311 ||
109 id==1009313 ||
id==1009321 ||
id==1009323 ||
id==1009223 ||
id==1009333 ||
110 id==1092112 ||
id==1091114 ||
id==1092114 ||
id==1092212 ||
id==1092214 ||
id==1092224 ||
111 id==1093114 ||
id==1093122 ||
id==1093214 ||
id==1093224 ||
id==1093314 ||
id==1093324 ||
id==1093334 );
virtual bool pass(ITruthIncident &incident) const override
True if the ITruthStrategy implementationapplies to the given ITruthIncident.
std::string find(const std::string &s)
return a remapped string
virtual int physicsProcessCode() const =0
Return specific physics process code of the truth incident (eg ionisation, bremsstrahlung,...
virtual int parentPdgCode() const =0
Return the PDG Code of the parent particle.
int m_passProcessCodeRangeLow
The process code range (low-high) and the category of processes that should pass this strategy.
#define ATH_MSG_VERBOSE(x)
virtual StatusCode finalize() override
int m_passProcessCategory
LLPTruthStrategy(const std::string &t, const std::string &n, const IInterface *p)
Constructor with parameters.
~LLPTruthStrategy()
Destructor.
int m_passProcessCodeRangeHigh
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual StatusCode initialize() override
IntegerArrayProperty m_regionListProperty
virtual bool appliesToRegion(unsigned short geoID) const override
virtual int physicsProcessCategory() const =0
Return category of the physics process represented by the truth incident (eg hadronic,...
bool isSUSYParticle(const int absPdgID) const
Returns true if the given |pdgID| is a SUSY particle.