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

Vectorised version of BDSArrayOperatorIndex. More...

#include <BDSArrayOperatorIndexV.hh>

Inheritance diagram for BDSArrayOperatorIndexV:
Inheritance graph
Collaboration diagram for BDSArrayOperatorIndexV:
Collaboration graph

Public Member Functions

void push_back (BDSArrayOperatorIndex *operatorIn)
 Append an operator to the vector. More...
 
virtual G4String Name () const
 Supply a name of this operator for feedback to the user in print out. More...
 
virtual void Apply (G4int &x, G4int &y, G4int &z, G4int &t) const
 
virtual void ApplyX (G4int &x) const
 
virtual void ApplyY (G4int &y) const
 
virtual void ApplyZ (G4int &z) const
 
virtual void ApplyT (G4int &t) const
 
virtual void TransformLimits (G4double &xMin, G4double &xMax, G4double &yMin, G4double &yMax, G4double &zMin, G4double &zMax, G4double &tMin, G4double &tMax) const
 
- Public Member Functions inherited from BDSArrayOperatorIndex
 BDSArrayOperatorIndex (const G4String &nameIn="None")
 
virtual G4String Name () const
 Supply a name of this operator for feedback to the user in print out. More...
 
virtual void Apply (G4int &, G4int &, G4int &, G4int &) const
 
virtual void ApplyX (G4int &) const
 
virtual void ApplyY (G4int &) const
 
virtual void ApplyZ (G4int &) const
 
virtual void ApplyT (G4int &) const
 
virtual std::array< G4bool, 4 > OperatesOnXYZT () const
 Return which axes this object operates on overall. More...
 
void Apply (G4int &x) const
 
void Apply (G4int &x, G4int &y) const
 
void Apply (G4int &x, G4int &y, G4int &z) const
 
virtual void TransformLimits (G4double &xMin, G4double &xMax, G4double &yMin, G4double &yMax, G4double &zMin, G4double &zMax, G4double &tMin, G4double &tMax) const =0
 
void TransformLimits (G4double &xMin, G4double xMax) const
 
void TransformLimits (G4double &xMin, G4double &xMax, G4double &yMin, G4double &yMax) const
 
void TransformLimits (G4double &xMin, G4double &xMax, G4double &yMin, G4double &yMax, G4double &zMin, G4double &zMax) const
 

Data Fields

std::vector< BDSArrayOperatorIndex * > operators
 

Additional Inherited Members

- Protected Attributes inherited from BDSArrayOperatorIndex
G4String name
 
std::array< G4bool, 4 > operatesOn
 

Detailed Description

Vectorised version of BDSArrayOperatorIndex.

Author
Laurie Nevay

Definition at line 34 of file BDSArrayOperatorIndexV.hh.

Constructor & Destructor Documentation

◆ BDSArrayOperatorIndexV()

BDSArrayOperatorIndexV::BDSArrayOperatorIndexV ( )
inline

Definition at line 37 of file BDSArrayOperatorIndexV.hh.

◆ ~BDSArrayOperatorIndexV()

virtual BDSArrayOperatorIndexV::~BDSArrayOperatorIndexV ( )
inlinevirtual

Definition at line 39 of file BDSArrayOperatorIndexV.hh.

Member Function Documentation

◆ Apply()

virtual void BDSArrayOperatorIndexV::Apply ( G4int &  x,
G4int &  y,
G4int &  z,
G4int &  t 
) const
inlinevirtual

Operation to modify the coordinates by reference. As we typically have more than one return value, we therefore use references as a way of doing this.

Reimplemented from BDSArrayOperatorIndex.

Definition at line 67 of file BDSArrayOperatorIndexV.hh.

◆ ApplyT()

virtual void BDSArrayOperatorIndexV::ApplyT ( G4int &  t) const
inlinevirtual

Reimplemented from BDSArrayOperatorIndex.

Definition at line 90 of file BDSArrayOperatorIndexV.hh.

◆ ApplyX()

virtual void BDSArrayOperatorIndexV::ApplyX ( G4int &  x) const
inlinevirtual

Reimplemented from BDSArrayOperatorIndex.

Definition at line 75 of file BDSArrayOperatorIndexV.hh.

◆ ApplyY()

virtual void BDSArrayOperatorIndexV::ApplyY ( G4int &  y) const
inlinevirtual

Reimplemented from BDSArrayOperatorIndex.

Definition at line 80 of file BDSArrayOperatorIndexV.hh.

◆ ApplyZ()

virtual void BDSArrayOperatorIndexV::ApplyZ ( G4int &  z) const
inlinevirtual

Reimplemented from BDSArrayOperatorIndex.

Definition at line 85 of file BDSArrayOperatorIndexV.hh.

◆ Name()

virtual G4String BDSArrayOperatorIndexV::Name ( ) const
inlinevirtual

Supply a name of this operator for feedback to the user in print out.

Reimplemented from BDSArrayOperatorIndex.

Definition at line 56 of file BDSArrayOperatorIndexV.hh.

◆ push_back()

void BDSArrayOperatorIndexV::push_back ( BDSArrayOperatorIndex operatorIn)
inline

Append an operator to the vector.

Definition at line 46 of file BDSArrayOperatorIndexV.hh.

References BDSArrayOperatorIndex::OperatesOnXYZT().

Here is the call graph for this function:

◆ TransformLimits()

virtual void BDSArrayOperatorIndexV::TransformLimits ( G4double &  xMin,
G4double &  xMax,
G4double &  yMin,
G4double &  yMax,
G4double &  zMin,
G4double &  zMax,
G4double &  tMin,
G4double &  tMax 
) const
inlinevirtual

Implements BDSArrayOperatorIndex.

Definition at line 96 of file BDSArrayOperatorIndexV.hh.

Field Documentation

◆ operators

std::vector<BDSArrayOperatorIndex*> BDSArrayOperatorIndexV::operators

Definition at line 105 of file BDSArrayOperatorIndexV.hh.


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