ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
ISF::ParticleUserInformation Class Reference

#include <ParticleUserInformation.h>

Collaboration diagram for ISF::ParticleUserInformation:

Public Member Functions

 ParticleUserInformation ()
 empty constructor More...
 
virtual ~ParticleUserInformation ()
 virtual destructor More...
 
int getExtraBC () const
 
int process () const
 
int generation () const
 
const MaterialPathInfomaterialLimit () const
 
void setExtraBC (int extrabc)
 
void setProcess (int proc)
 
void setGeneration (int gen)
 
void setMaterialLimit (int process, float x0lim, float x0coll)
 
bool operator== (const ParticleUserInformation &rhs) const
 Comparison. More...
 

Private Attributes

int m_process
 
int m_generation
 
MaterialPathInfom_matInfo
 

Detailed Description

Each ISFParticle carries a pointer to this class. For MC production, the pointer will normally be 0. For validation jobs a ParticleUserInformation instance may be attached to the ISFParticles. 2015-05-12 (S.Todorova) extended to carry presampled interaction/traversed material info for Fatras

Author
Elmar.nosp@m..Rit.nosp@m.sch@c.nosp@m.ern..nosp@m.ch

Definition at line 52 of file ParticleUserInformation.h.

Constructor & Destructor Documentation

◆ ParticleUserInformation()

ISF::ParticleUserInformation::ParticleUserInformation ( )

empty constructor

constructor

Definition at line 13 of file ParticleUserInformation.cxx.

14  : m_process(0)
15  , m_generation(0)
16  , m_matInfo(nullptr)
17 {
18 }

◆ ~ParticleUserInformation()

virtual ISF::ParticleUserInformation::~ParticleUserInformation ( )
inlinevirtual

virtual destructor

Definition at line 59 of file ParticleUserInformation.h.

59 { delete m_matInfo; };

Member Function Documentation

◆ generation()

int ISF::ParticleUserInformation::generation ( ) const
inline

Definition at line 86 of file ParticleUserInformation.h.

86 { return m_generation; }

◆ getExtraBC()

int ISF::ParticleUserInformation::getExtraBC ( ) const

◆ materialLimit()

const ISF::MaterialPathInfo * ISF::ParticleUserInformation::materialLimit ( ) const
inline

Definition at line 88 of file ParticleUserInformation.h.

88 { return m_matInfo; }

◆ operator==()

bool ISF::ParticleUserInformation::operator== ( const ParticleUserInformation rhs) const

Comparison.

Definition at line 20 of file ParticleUserInformation.cxx.

21 {
22  bool pass = true;
23  pass &= m_process == rhs.process();
24  pass &= m_generation == rhs.generation();
25 
26  {
27  const auto rhsMatPtr = rhs.materialLimit();
28  if (m_matInfo && rhsMatPtr) {
29  pass &= *m_matInfo == *rhsMatPtr;
30  } else {
31  pass &= m_matInfo == rhsMatPtr; // must be both nullptr to pass
32  }
33  }
34  return pass;
35 }

◆ process()

int ISF::ParticleUserInformation::process ( ) const
inline

Definition at line 84 of file ParticleUserInformation.h.

84 { return m_process; }

◆ setExtraBC()

void ISF::ParticleUserInformation::setExtraBC ( int  extrabc)

◆ setGeneration()

void ISF::ParticleUserInformation::setGeneration ( int  gen)
inline

Definition at line 92 of file ParticleUserInformation.h.

92 { m_generation = gen; }

◆ setMaterialLimit()

void ISF::ParticleUserInformation::setMaterialLimit ( int  process,
float  x0lim,
float  x0coll 
)
inline

Definition at line 94 of file ParticleUserInformation.h.

95 { delete m_matInfo; m_matInfo = new ISF::MaterialPathInfo(proc,dMax,d); }

◆ setProcess()

void ISF::ParticleUserInformation::setProcess ( int  proc)
inline

Definition at line 90 of file ParticleUserInformation.h.

90 { m_process = proc; }

Member Data Documentation

◆ m_generation

int ISF::ParticleUserInformation::m_generation
private

Definition at line 77 of file ParticleUserInformation.h.

◆ m_matInfo

MaterialPathInfo* ISF::ParticleUserInformation::m_matInfo
private

Definition at line 79 of file ParticleUserInformation.h.

◆ m_process

int ISF::ParticleUserInformation::m_process
private

Definition at line 76 of file ParticleUserInformation.h.


The documentation for this class was generated from the following files:
ISF::ParticleUserInformation::m_process
int m_process
Definition: ParticleUserInformation.h:76
ISF::ParticleUserInformation::m_generation
int m_generation
Definition: ParticleUserInformation.h:77
ISF::ParticleUserInformation::m_matInfo
MaterialPathInfo * m_matInfo
Definition: ParticleUserInformation.h:79
hist_file_dump.d
d
Definition: hist_file_dump.py:137
master.gen
gen
Definition: master.py:32
mc.proc
proc
Definition: mc.PhPy8EG_A14NNPDF23_gg4l_example.py:22
ISF::MaterialPathInfo
Definition: ParticleUserInformation.h:28