19#ifndef SAMPLERPLACEMENT_H
20#define SAMPLERPLACEMENT_H
60 std::string apertureModel;
69 double startAngleTheta;
70 double sweepAngleTheta;
85 void set_value(std::string property, T value);
96 std::cout <<
"samplerplacement> Setting value " << std::setw(25) << std::left
97 <<
property << value << std::endl;
101 {
set(
this,property,value);}
102 catch (
const std::runtime_error&)
104 std::cerr <<
"Error: samplerplacement> unknown option \"" <<
property
105 <<
"\" with value " << value << std::endl;
Class that provides introspection to its members.
void set(SamplerPlacement *instance, const std::string &name, double value)
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.
void set_value(std::string property, T value)
set methods by property name and value
void PublishMembers()
publish members
std::string samplerType
Plane, Cylinder, Sphere.
SamplerPlacement()
constructor
std::list< double > partID
List of PDG IDs of which particles to record for - default is empty, so all particles.
void print() const
print some properties
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.
int partIDSetID
The unique ID of the particle set given by the parser.
Parser namespace for GMAD language. Combination of Geant4 and MAD.