BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Public Member Functions | Private Attributes
BDSArrayOperatorValueFlip Class Reference

Flip field component in individual dimensions if out of original array bounds. More...

#include <BDSArrayOperatorValueFlip.hh>

Inheritance diagram for BDSArrayOperatorValueFlip:
Inheritance graph
Collaboration diagram for BDSArrayOperatorValueFlip:
Collaboration graph

Public Member Functions

 BDSArrayOperatorValueFlip (const std::array< G4bool, 4 > &xyztIn)
 
virtual BDSFieldValue Apply (BDSFieldValue v, G4int, G4int=0, G4int=0, G4int=0) const
 
- Public Member Functions inherited from BDSArrayOperatorValue
 BDSArrayOperatorValue (const G4String &nameIn="None")
 
virtual G4String Name () const
 Return a name of the operator for feedback to the user in print out. More...
 
virtual BDSFieldValue Apply (BDSFieldValue v, G4int, G4int=0, G4int=0, G4int=0) const
 

Private Attributes

std::array< FIELDTYPET, 4 > multiplier
 

Additional Inherited Members

- Protected Attributes inherited from BDSArrayOperatorValue
G4String name
 

Detailed Description

Flip field component in individual dimensions if out of original array bounds.

Author
Laurie Nevay

Definition at line 36 of file BDSArrayOperatorValueFlip.hh.

Constructor & Destructor Documentation

◆ BDSArrayOperatorValueFlip() [1/2]

BDSArrayOperatorValueFlip::BDSArrayOperatorValueFlip ( )
inline

Definition at line 39 of file BDSArrayOperatorValueFlip.hh.

◆ BDSArrayOperatorValueFlip() [2/2]

BDSArrayOperatorValueFlip::BDSArrayOperatorValueFlip ( const std::array< G4bool, 4 > &  xyztIn)
inlineexplicit

Definition at line 43 of file BDSArrayOperatorValueFlip.hh.

◆ ~BDSArrayOperatorValueFlip()

virtual BDSArrayOperatorValueFlip::~BDSArrayOperatorValueFlip ( )
inlinevirtual

Definition at line 55 of file BDSArrayOperatorValueFlip.hh.

Member Function Documentation

◆ Apply()

virtual BDSFieldValue BDSArrayOperatorValueFlip::Apply ( BDSFieldValue  v,
G4int  ,
G4int  = 0,
G4int  = 0,
G4int  = 0 
) const
inlinevirtual

Index arguments are original coordinate space indices, i.e. allowed to be negative. No action by default.

Reimplemented from BDSArrayOperatorValue.

Definition at line 57 of file BDSArrayOperatorValueFlip.hh.

References multiplier, BDSThreeVector< T >::x(), BDSThreeVector< T >::y(), and BDSThreeVector< T >::z().

Here is the call graph for this function:

Field Documentation

◆ multiplier

std::array<FIELDTYPET,4> BDSArrayOperatorValueFlip::multiplier
private

This has to match the type of the field value components (e.g. double or float) to avoid a possible narrowing conversion.

Definition at line 69 of file BDSArrayOperatorValueFlip.hh.

Referenced by Apply().


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