19#include "parameters.h"
35 setMap[
"userTypeName"] =
false;
36 setMap[
"userParameters"] =
false;
40 setMap[
"scalingFieldOuter"] =
false;
62 setMap[
"gradient"] =
false;
64 setMap[
"gradient"] =
false;
65 setMap[
"frequency"] =
false;
68 setMap[
"fieldModulator"] =
false;
92 setMap[
"beampipeThickness"] =
false;
97 setMap[
"apertureType"] =
false;
98 setMap[
"beampipeMaterial"] =
false;
99 setMap[
"vacuumMaterial"] =
false;
101 setMap[
"magnetGeometryType"] =
false;
102 setMap[
"horizontalWidth"] =
false;
103 setMap[
"yokeOnInside"] =
false;
105 setMap[
"vhRatio"] =
false;
106 setMap[
"coilWidthFraction"] =
false;
107 setMap[
"coilHeightFraction"] =
false;
111 setMap[
"xsizeOut"] =
false;
112 setMap[
"ysizeOut"] =
false;
113 setMap[
"xsizeLeft"] =
false;
114 setMap[
"xsizeRight"] =
false;
115 setMap[
"offsetX"] =
false;
116 setMap[
"offsetY"] =
false;
119 setMap[
"offsetX2"] =
false;
120 setMap[
"offsetY2"] =
false;
122 setMap[
"outerShape"] =
false;
125 setMap[
"twindow"] =
false;
127 setMap[
"windowScreenGap"] =
false;
128 setMap[
"screenXSize"] =
false;
129 setMap[
"screenYSize"] =
false;
130 setMap[
"layerThicknesses"] =
false;
131 setMap[
"layerMaterials"] =
false;
132 setMap[
"layerIsSampler"] =
false;
134 setMap[
"screenPSize"] =
false;
135 setMap[
"screenEndZ"] =
false;
136 setMap[
"poleStartZ"] =
false;
137 setMap[
"screenWidth"] =
false;
138 setMap[
"awakeMagnetOffsetX"] =
false;
139 setMap[
"scintmaterial"] =
false;
140 setMap[
"windowmaterial"] =
false;
141 setMap[
"mountmaterial"] =
false;
146 setMap[
"waveLength"] =
false;
147 setMap[
"gradient"] =
false;
154 setMap[
"axisAngle"] =
false;
156 setMap[
"numberWedges"] =
false;
157 setMap[
"wedgeLength"] =
false;
158 setMap[
"degraderHeight"] =
false;
159 setMap[
"materialThickness"] =
false;
160 setMap[
"degraderOffset"] =
false;
162 setMap[
"laserBeam"] =
false;
163 setMap[
"laserOffsetTheta"] =
false;
164 setMap[
"laserOffsetPhi"] =
false;
165 setMap[
"laserOffsetX"] =
false;
166 setMap[
"laserOffsetY"] =
false;
167 setMap[
"laserOffsetZ"] =
false;
169 setMap[
"wireDiameter"] =
false;
170 setMap[
"wireLength"] =
false;
171 setMap[
"wireOffsetX"] =
false;
172 setMap[
"wireOffsetY"] =
false;
173 setMap[
"wireOffsetZ"] =
false;
174 setMap[
"wireAngle"] =
false;
176 setMap[
"undulatorPeriod"] =
false;
177 setMap[
"undulatorGap"] =
false;
178 setMap[
"undulatorMagnetHeight"] =
false;
180 setMap[
"anodeLength"] =
false;
181 setMap[
"anodeRadius"] =
false;
182 setMap[
"anodeThickness"] =
false;
183 setMap[
"electrodeLength"] =
false;
184 setMap[
"electrodeRadius"] =
false;
185 setMap[
"electrodeThickness"] =
false;
188 setMap[
"biasMaterial"] =
false;
189 setMap[
"biasVacuum"] =
false;
190 setMap[
"biasMaterialLV"] =
false;
192 setMap[
"minimumKineticEnergy"] =
false;
194 setMap[
"samplerName"] =
false;
195 setMap[
"samplerType"] =
false;
196 setMap[
"samplerRadius"] =
false;
198 setMap[
"fieldOuter"] =
false;
199 setMap[
"fieldVacuum"] =
false;
200 setMap[
"fieldAll"] =
false;
202 setMap[
"geometryFile"] =
false;
203 setMap[
"stripOuterVolume"] =
false;
204 setMap[
"autoColour"] =
false;
205 setMap[
"elementLengthIsArcLength"] =
false;
206 setMap[
"material"] =
false;
207 setMap[
"namedVacuumVolumes"] =
false;
208 setMap[
"markAsCollimator"] =
false;
210 setMap[
"cavityModel"] =
false;
211 setMap[
"cavityFieldType"] =
false;
213 setMap[
"dicomDataPath"] =
false;
214 setMap[
"dicomDataFile"] =
false;
218 setMap[
"jawTiltLeft"] =
false;
219 setMap[
"jawTiltRight"] =
false;
221 setMap[
"tipMaterial"] =
false;
222 setMap[
"tipThickness"] =
false;
224 setMap[
"crystalLeft"] =
false;
225 setMap[
"crystalRight"] =
false;
226 setMap[
"crystalBoth"] =
false;
227 setMap[
"crystalAngleYAxisLeft"] =
false;
228 setMap[
"crystalAngleYAxisRight"] =
false;
230 setMap[
"coolingDefinition"] =
false;
249 if(i.second ==
false)
251 std::string
property = i.first;
255 catch(
const std::runtime_error&)
257 std::cerr <<
"Error: element> unknown property \"" <<
property
258 <<
"\" from element " << e.name << std::endl;
void set(C *instance, const std::string &name, double value)
Parser namespace for GMAD language. Combination of Geant4 and MAD.
std::map< std::string, bool > setMap
Map that holds booleans for every member of element.
void inherit_properties(const Element &e)
void flush()
Reset the parameters to defaults and setMap.