BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Public Member Functions | Protected Attributes
BDSArrayOperatorIndex Class Referenceabstract

Interface for modifying by reference array indices. More...

#include <BDSArrayOperatorIndex.hh>

Inheritance diagram for BDSArrayOperatorIndex:
Inheritance graph
Collaboration diagram for BDSArrayOperatorIndex:
Collaboration graph

Public Member Functions

 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
 

Protected Attributes

G4String name
 
std::array< G4bool, 4 > operatesOn
 

Detailed Description

Interface for modifying by reference array indices.

This transforms coordinates in array index space via some mapping.

Apply() method is pure virtual.

Author
Laurie Nevay

Definition at line 36 of file BDSArrayOperatorIndex.hh.

Constructor & Destructor Documentation

◆ BDSArrayOperatorIndex()

BDSArrayOperatorIndex::BDSArrayOperatorIndex ( const G4String &  nameIn = "None")
inlineexplicit

Definition at line 40 of file BDSArrayOperatorIndex.hh.

◆ ~BDSArrayOperatorIndex()

virtual BDSArrayOperatorIndex::~BDSArrayOperatorIndex ( )
inlinevirtual

Definition at line 44 of file BDSArrayOperatorIndex.hh.

Member Function Documentation

◆ Apply() [1/4]

virtual void BDSArrayOperatorIndex::Apply ( G4int &  ,
G4int &  ,
G4int &  ,
G4int &   
) const
inlinevirtual

◆ Apply() [2/4]

void BDSArrayOperatorIndex::Apply ( G4int &  x) const
inline

Definition at line 63 of file BDSArrayOperatorIndex.hh.

◆ Apply() [3/4]

void BDSArrayOperatorIndex::Apply ( G4int &  x,
G4int &  y 
) const
inline

Definition at line 69 of file BDSArrayOperatorIndex.hh.

◆ Apply() [4/4]

void BDSArrayOperatorIndex::Apply ( G4int &  x,
G4int &  y,
G4int &  z 
) const
inline

Definition at line 75 of file BDSArrayOperatorIndex.hh.

◆ ApplyT()

virtual void BDSArrayOperatorIndex::ApplyT ( G4int &  ) const
inlinevirtual

Definition at line 58 of file BDSArrayOperatorIndex.hh.

◆ ApplyX()

virtual void BDSArrayOperatorIndex::ApplyX ( G4int &  ) const
inlinevirtual

Definition at line 55 of file BDSArrayOperatorIndex.hh.

◆ ApplyY()

virtual void BDSArrayOperatorIndex::ApplyY ( G4int &  ) const
inlinevirtual

Definition at line 56 of file BDSArrayOperatorIndex.hh.

◆ ApplyZ()

virtual void BDSArrayOperatorIndex::ApplyZ ( G4int &  ) const
inlinevirtual

Definition at line 57 of file BDSArrayOperatorIndex.hh.

◆ Name()

virtual G4String BDSArrayOperatorIndex::Name ( ) const
inlinevirtual

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

Reimplemented in BDSArrayOperatorIndexV.

Definition at line 47 of file BDSArrayOperatorIndex.hh.

Referenced by BDSFieldLoader::CreateOperators(), BDSArray1DCoordsTransformed::Print(), BDSArray2DCoordsTransformed::Print(), BDSArray3DCoordsTransformed::Print(), and BDSArray4DCoordsTransformed::Print().

Here is the caller graph for this function:

◆ OperatesOnXYZT()

virtual std::array< G4bool, 4 > BDSArrayOperatorIndex::OperatesOnXYZT ( ) const
inlinevirtual

Return which axes this object operates on overall.

Definition at line 61 of file BDSArrayOperatorIndex.hh.

Referenced by BDSFieldLoader::CreateOperators(), and BDSArrayOperatorIndexV::push_back().

Here is the caller graph for this function:

◆ TransformLimits() [1/3]

void BDSArrayOperatorIndex::TransformLimits ( G4double &  xMin,
G4double &  xMax,
G4double &  yMin,
G4double &  yMax 
) const
inline

Definition at line 91 of file BDSArrayOperatorIndex.hh.

◆ TransformLimits() [2/3]

void BDSArrayOperatorIndex::TransformLimits ( G4double &  xMin,
G4double &  xMax,
G4double &  yMin,
G4double &  yMax,
G4double &  zMin,
G4double &  zMax 
) const
inline

Definition at line 97 of file BDSArrayOperatorIndex.hh.

◆ TransformLimits() [3/3]

void BDSArrayOperatorIndex::TransformLimits ( G4double &  xMin,
G4double  xMax 
) const
inline

Definition at line 86 of file BDSArrayOperatorIndex.hh.

Field Documentation

◆ name

G4String BDSArrayOperatorIndex::name
protected

Definition at line 106 of file BDSArrayOperatorIndex.hh.

◆ operatesOn

std::array<G4bool, 4> BDSArrayOperatorIndex::operatesOn
protected

Definition at line 107 of file BDSArrayOperatorIndex.hh.


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