19#include "blmplacement.h"
22#include "samplerplacement.h"
23#include "scorermesh.h"
93 std::cout <<
"Placement: \n"
94 <<
"name \"" <<
name <<
"\"\n"
97 <<
"sequence \"" <<
sequence <<
"\"\n"
104 <<
"phi " <<
phi <<
"\n"
105 <<
"theta " <<
theta <<
"\n"
106 <<
"psi " <<
psi <<
"\n"
107 <<
"axisX " <<
axisX <<
"\n"
108 <<
"axisY " <<
axisY <<
"\n"
109 <<
"axisZ " <<
axisZ <<
"\n"
110 <<
"angle " <<
angle <<
"\n"
113 <<
"side \"" <<
side <<
"\"\n"
118 <<
"fieldAll \"" <<
fieldAll <<
"\"" <<
"\n"
200 stripOuterVolume(false)
double sideOffset
Offset between the geometry and the BLM.
bool axisAngle
Flag to use the axis angle construction of rotation.
double theta
Euler angle for rotation.
std::string side
which side to attach to: top, bottom, left, right.
std::string referenceElement
Name of reference element w.r.t. to place to.
std::string name
Name of this samplerplacement.
double psi
Euler angle for rotation.
double phi
Euler angle for rotation.
double s
Curvilinear s position to place w.r.t..
int referenceElementNumber
Index of repetition of element if there are multiple uses.
bool axisAngle
Flag to use the axis angle construction of rotation.
std::string fieldAll
Name of field object to apply to all of placement.
bool sensitive
Whether to record hits or not.
std::string name
Name of this placement.
void print() const
print some properties
std::string side
which side to attach to: top, bottom, left, right.
double theta
Euler angle for rotation.
double sideOffset
Gap between side and component.
double psi
Euler angle for rotation.
double s
Curvilinear s position to place w.r.t..
bool dontReloadGeometry
Purposively don't reload for unique placements (must know what we're doing)
std::string bdsimElement
Name of bdsim-built component to place instead of piece of geometry.
void PublishMembers()
publish members
bool autoColour
Whether to auto colour the geometry.
bool stripOuterVolume
Whether to place the world LV as a G4AssemblyVolume.
std::string sequence
Name of sequence to place.
std::string geometryFile
Geometry to load in format:path.
int referenceElementNumber
Index of repetition of element if there are multiple uses.
double phi
Euler angle for rotation.
std::string referenceElement
Name of reference element w.r.t. to place to.
void publish(const std::string &name, T C::*mp)
Make pointer to member from class C and type T with accessible with a name.
Query structure class for parser.
bool axisAngle
Flag to use the axis angle construction of rotation.
std::string referenceElement
Name of reference element w.r.t. to place to.
double s
Curvilinear s position to place w.r.t..
double theta
Euler angle for rotation.
double psi
Euler angle for rotation.
std::string name
Name of object.
double phi
Euler angle for rotation.
int referenceElementNumber
Index of repetition of element if there are multiple uses.
Sampler placement class for parser.
int referenceElementNumber
Index of repetition of element if there are multiple uses.
double phi
Euler angle for rotation.
std::string name
Name of this samplerplacement.
std::string referenceElement
Name of reference element w.r.t. to place to.
double theta
Euler angle for rotation.
double s
Curvilinear s position to place w.r.t..
double psi
Euler angle for rotation.
bool axisAngle
Flag to use the axis angle construction of rotation.
ScorerMesh class for parser.
double phi
Euler angle for rotation.
std::string referenceElement
Name of reference element w.r.t. to place to.
double s
Curvilinear s position to place w.r.t..
double psi
Euler angle for rotation.
int referenceElementNumber
Index of repetition of element if there are multiple uses.
std::string name
Name of this placement.
std::string sequence
Name of sequence to place.
double theta
Euler angle for rotation.
bool axisAngle
Flag to use the axis angle construction of rotation.
Parser namespace for GMAD language. Combination of Geant4 and MAD.