BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Public Member Functions | Data Fields | Static Public Attributes
BDSOutputROOTEventCollimator Class Reference

Data stored for each collimator per event. More...

#include <BDSOutputROOTEventCollimator.hh>

Inheritance diagram for BDSOutputROOTEventCollimator:
Inheritance graph
Collaboration diagram for BDSOutputROOTEventCollimator:
Collaboration graph

Public Member Functions

 BDSOutputROOTEventCollimator ()
 Default constructor for ROOT.
 
void Fill (const BDSHitCollimator *hit, const BDSOutputROOTEventCollimatorInfo &info, const std::pair< G4double, G4double > &differences, G4bool storeHits)
 
void FillExtras (G4bool fillIonInfo, G4bool fillLinks)
 
void SetPrimaryStopped (G4bool primaryStoppedIn)
 Setter for one off flag per event. More...
 
void Fill (const BDSOutputROOTEventCollimator *other)
 Copy data from another instance into this one. More...
 
virtual void Flush ()
 Flush this instance. More...
 
 ClassDef (BDSOutputROOTEventCollimator, 1)
 

Data Fields

bool primaryInteracted
 
bool primaryStopped
 
int n
 
std::vector< float > energy
 Total energy of particle for each hit. More...
 
std::vector< float > energyDeposited
 
std::vector< float > xIn
 
std::vector< float > yIn
 
std::vector< float > zIn
 
std::vector< float > xpIn
 
std::vector< float > ypIn
 
std::vector< float > zpIn
 
std::vector< float > T
 
std::vector< float > weight
 
std::vector< int > partID
 
std::vector< int > parentID
 
std::vector< int > turn
 
std::vector< bool > firstPrimaryHitThisTurn
 
std::vector< float > impactParameterX
 
std::vector< float > impactParameterY
 
std::vector< bool > isIon
 
std::vector< int > ionA
 
std::vector< int > ionZ
 
std::set< int > turnSet
 Different length set of turn number. More...
 
double totalEnergyDeposited
 Sum of energy deposits including weights. More...
 
std::vector< int > charge
 These are not filled by default. More...
 
std::vector< float > kineticEnergy
 These are not filled by default. More...
 
std::vector< float > mass
 These are not filled by default. More...
 
std::vector< float > rigidity
 These are not filled by default. More...
 

Static Public Attributes

static BDSOutputROOTParticleDataparticleTable
 

Detailed Description

Data stored for each collimator per event.

Author
Laurie Nevay

Definition at line 42 of file BDSOutputROOTEventCollimator.hh.

Constructor & Destructor Documentation

◆ ~BDSOutputROOTEventCollimator()

BDSOutputROOTEventCollimator::~BDSOutputROOTEventCollimator ( )
virtual

Definition at line 51 of file BDSOutputROOTEventCollimator.cc.

Member Function Documentation

◆ Fill() [1/2]

void BDSOutputROOTEventCollimator::Fill ( const BDSHitCollimator hit,
const BDSOutputROOTEventCollimatorInfo info,
const std::pair< G4double, G4double > &  differences,
G4bool  storeHits 
)

Definition at line 87 of file BDSOutputROOTEventCollimator.cc.

◆ Fill() [2/2]

void BDSOutputROOTEventCollimator::Fill ( const BDSOutputROOTEventCollimator other)

Copy data from another instance into this one.

Definition at line 218 of file BDSOutputROOTEventCollimator.cc.

References charge, energy, firstPrimaryHitThisTurn, kineticEnergy, mass, rigidity, and turnSet.

◆ FillExtras()

void BDSOutputROOTEventCollimator::FillExtras ( G4bool  fillIonInfo,
G4bool  fillLinks 
)

Definition at line 167 of file BDSOutputROOTEventCollimator.cc.

◆ Flush()

void BDSOutputROOTEventCollimator::Flush ( )
virtual

Flush this instance.

Definition at line 54 of file BDSOutputROOTEventCollimator.cc.

References charge, energy, firstPrimaryHitThisTurn, kineticEnergy, mass, rigidity, totalEnergyDeposited, and turnSet.

◆ SetPrimaryStopped()

void BDSOutputROOTEventCollimator::SetPrimaryStopped ( G4bool  primaryStoppedIn)
inline

Setter for one off flag per event.

Definition at line 99 of file BDSOutputROOTEventCollimator.hh.

Field Documentation

◆ charge

std::vector<int> BDSOutputROOTEventCollimator::charge

These are not filled by default.

Definition at line 81 of file BDSOutputROOTEventCollimator.hh.

Referenced by Fill(), and Flush().

◆ energy

std::vector<float> BDSOutputROOTEventCollimator::energy

Total energy of particle for each hit.

Definition at line 51 of file BDSOutputROOTEventCollimator.hh.

Referenced by Fill(), and Flush().

◆ energyDeposited

std::vector<float> BDSOutputROOTEventCollimator::energyDeposited

Definition at line 52 of file BDSOutputROOTEventCollimator.hh.

◆ firstPrimaryHitThisTurn

std::vector<bool> BDSOutputROOTEventCollimator::firstPrimaryHitThisTurn

A primary can generate multiple hits on a single passage through a collimator, but we're most interested in the first one where it impacted, so this is a flag for that hit. The same primary may hit on subsequent turns (however unlikely) in a ring so we must do this each turn.

Definition at line 68 of file BDSOutputROOTEventCollimator.hh.

Referenced by Fill(), and Flush().

◆ impactParameterX

std::vector<float> BDSOutputROOTEventCollimator::impactParameterX

Definition at line 70 of file BDSOutputROOTEventCollimator.hh.

◆ impactParameterY

std::vector<float> BDSOutputROOTEventCollimator::impactParameterY

Definition at line 71 of file BDSOutputROOTEventCollimator.hh.

◆ ionA

std::vector<int> BDSOutputROOTEventCollimator::ionA

Definition at line 74 of file BDSOutputROOTEventCollimator.hh.

◆ ionZ

std::vector<int> BDSOutputROOTEventCollimator::ionZ

Definition at line 75 of file BDSOutputROOTEventCollimator.hh.

◆ isIon

std::vector<bool> BDSOutputROOTEventCollimator::isIon

Definition at line 73 of file BDSOutputROOTEventCollimator.hh.

◆ kineticEnergy

std::vector<float> BDSOutputROOTEventCollimator::kineticEnergy

These are not filled by default.

Definition at line 82 of file BDSOutputROOTEventCollimator.hh.

Referenced by Fill(), and Flush().

◆ mass

std::vector<float> BDSOutputROOTEventCollimator::mass

These are not filled by default.

Definition at line 83 of file BDSOutputROOTEventCollimator.hh.

Referenced by Fill(), and Flush().

◆ n

int BDSOutputROOTEventCollimator::n

Definition at line 50 of file BDSOutputROOTEventCollimator.hh.

◆ parentID

std::vector<int> BDSOutputROOTEventCollimator::parentID

Definition at line 62 of file BDSOutputROOTEventCollimator.hh.

◆ particleTable

BDSOutputROOTParticleData* BDSOutputROOTEventCollimator::particleTable
static

Definition at line 108 of file BDSOutputROOTEventCollimator.hh.

◆ partID

std::vector<int> BDSOutputROOTEventCollimator::partID

Definition at line 61 of file BDSOutputROOTEventCollimator.hh.

◆ primaryInteracted

bool BDSOutputROOTEventCollimator::primaryInteracted

Definition at line 48 of file BDSOutputROOTEventCollimator.hh.

◆ primaryStopped

bool BDSOutputROOTEventCollimator::primaryStopped

Definition at line 49 of file BDSOutputROOTEventCollimator.hh.

◆ rigidity

std::vector<float> BDSOutputROOTEventCollimator::rigidity

These are not filled by default.

Definition at line 84 of file BDSOutputROOTEventCollimator.hh.

Referenced by Fill(), and Flush().

◆ T

std::vector<float> BDSOutputROOTEventCollimator::T

Definition at line 59 of file BDSOutputROOTEventCollimator.hh.

◆ totalEnergyDeposited

double BDSOutputROOTEventCollimator::totalEnergyDeposited

Sum of energy deposits including weights.

Definition at line 87 of file BDSOutputROOTEventCollimator.hh.

Referenced by Flush().

◆ turn

std::vector<int> BDSOutputROOTEventCollimator::turn

Definition at line 63 of file BDSOutputROOTEventCollimator.hh.

◆ turnSet

std::set<int> BDSOutputROOTEventCollimator::turnSet

Different length set of turn number.

Definition at line 78 of file BDSOutputROOTEventCollimator.hh.

Referenced by Fill(), and Flush().

◆ weight

std::vector<float> BDSOutputROOTEventCollimator::weight

Definition at line 60 of file BDSOutputROOTEventCollimator.hh.

◆ xIn

std::vector<float> BDSOutputROOTEventCollimator::xIn

Definition at line 53 of file BDSOutputROOTEventCollimator.hh.

◆ xpIn

std::vector<float> BDSOutputROOTEventCollimator::xpIn

Definition at line 56 of file BDSOutputROOTEventCollimator.hh.

◆ yIn

std::vector<float> BDSOutputROOTEventCollimator::yIn

Definition at line 54 of file BDSOutputROOTEventCollimator.hh.

◆ ypIn

std::vector<float> BDSOutputROOTEventCollimator::ypIn

Definition at line 57 of file BDSOutputROOTEventCollimator.hh.

◆ zIn

std::vector<float> BDSOutputROOTEventCollimator::zIn

Definition at line 55 of file BDSOutputROOTEventCollimator.hh.

◆ zpIn

std::vector<float> BDSOutputROOTEventCollimator::zpIn

Definition at line 58 of file BDSOutputROOTEventCollimator.hh.


The documentation for this class was generated from the following files: