32 class SamplerPlacement;
90 void set_value(std::string property, T value,
bool exceptionSafe =
false);
101 std::cout <<
"scorermesh> Setting value " << std::setw(25) << std::left
102 <<
property << value << std::endl;
106 {
set(
this,property,value);}
107 catch (
const std::runtime_error&)
109 std::stringstream ss;
110 ss <<
"Error: scorermesh> unknown property \"" <<
property
111 <<
"\" with value \"" << value <<
"\" in definition \"" << this->
name <<
"\"";
113 {
throw std::invalid_argument(ss.str());}
115 {std::cout << ss.str() << std::endl;}
Class that provides introspection to its members.
void set(ScorerMesh *instance, const std::string &name, double value)
ScorerMesh class for parser.
double phi
Euler angle for rotation.
std::string referenceElement
Name of reference element w.r.t. to place to.
int ny
Number of bins in y.
int ne
Number of bins in E.
int nx
Number of bins in x.
int nphi
Number of bins in Phi.
int nz
Number of bins in z.
void print() const
print some properties
double s
Curvilinear s position to place w.r.t..
std::string scoreQuantity
Name of scorer object to use.
double psi
Euler angle for rotation.
int referenceElementNumber
Index of repetition of element if there are multiple uses.
std::string eScale
E scaling type.
std::string name
Name of this placement.
double xsize
X total width.
void PublishMembers()
publish members
double eHigh
E High limit.
int nr
Number of bins in R.
double ysize
Y total width.
void set_value(std::string property, T value, bool exceptionSafe=false)
set methods by property name and value
std::string geometryType
Name of scorermesh geometry to use.
double rsize
R total length.
std::string sequence
Name of sequence to place.
std::string eBinsEdgesFilenamePath
E bins edges filename path.
double theta
Euler angle for rotation.
double zsize
Z total width.
bool axisAngle
Flag to use the axis angle construction of rotation.
Parser namespace for GMAD language. Combination of Geant4 and MAD.