MeVisLab Toolbox Reference
mlDcmDRTIonControlPointSequenceInterface.h
Go to the documentation of this file.
1 // Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2 // **InsertLicense** code
3 //----------------------------------------------------------------------------------
4 //
5 // NOTE:
6 // This file has been generated automatically by
7 // FMEwork/ReleaseMeVis/Configuration/CodeGenerators/dcmtkToMLConverter/convertDcmtkToML.py
8 // using the template file
9 // FMEwork/ReleaseMeVis/Configuration/CodeGenerators/dcmtkToMLConverter/MLDcmtkAccessoriesNew/templates/DcmSequenceInterface.h
10 //
11 // Destination project:
12 // FMEwork/ReleaseMeVis/Sources/Shared/MLDcmtkAccessoriesNew/DcmSequenceInterfaces
13 //
14 //----------------------------------------------------------------------------------
16 
21 //----------------------------------------------------------------------------------
22 
23 #ifndef __mlDcmDRTIonControlPointSequenceInterface_H
24 #define __mlDcmDRTIonControlPointSequenceInterface_H
25 
26 // Local includes
27 #include "mlDcmtkAccessories.h"
28 
29 // Dcmtk includes
30 //#include "mlDcmDRTIonControlPointSequenceInterface.h" //DRTIonControlPointSequence
31 #include "mlDcmDRTBeamLimitingDevicePositionSequenceInterface.h" //DRTBeamLimitingDevicePositionSequence
32 #include "mlDcmDRTIonWedgePositionSequenceInterface.h" //DRTIonWedgePositionSequence
33 #include "mlDcmDRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsModuleInterface.h" //DRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsModule
34 #include "mlDcmDRTRangeModulatorSettingsSequenceInRTIonBeamsModuleInterface.h" //DRTRangeModulatorSettingsSequenceInRTIonBeamsModule
35 #include "mlDcmDRTRangeShifterSettingsSequenceInRTIonBeamsModuleInterface.h" //DRTRangeShifterSettingsSequenceInRTIonBeamsModule
36 #include "mlDcmDRTReferencedDoseReferenceSequenceInRTIonBeamsModuleInterface.h" //DRTReferencedDoseReferenceSequenceInRTIonBeamsModule
37 
38 
39 // ML includes
40 #ifndef __mlModuleIncludes_H
41 #include "mlModuleIncludes.h"
42 #endif
43 
44 ML_START_NAMESPACE
45 
46 // ------------------------------------------------------------------
48 // ------------------------------------------------------------------
50 {
51  public:
52 
54  {
55  public:
56 
57  Item() { _dcmItem = DcmtkAccessories::createNewDicomTree(); }
58 
59  Item(DCMTree::TreePtr dcmItem) : _dcmItem(dcmItem) {}
60 
61  Item(const Item &copyDcmItem) : _dcmItem(copyDcmItem.getTreePtr()) {}
62 
63  Item &operator=(const Item &copyDcmItem){ _dcmItem = copyDcmItem.getTreePtr(); return *this; }
64 
65  virtual ~Item() {}
66 
67  DCMTree::TreePtr getTreePtr() const { return _dcmItem; }
68 
69  bool isValid() const { return _dcmItem.get() != nullptr; }
70 
71 
72  // BeamLimitingDeviceAngle (300a,0120) vr=DS, vm=1, type=1C
73  bool getBeamLimitingDeviceAngle(std::string& parameter) const;
74  std::string getBeamLimitingDeviceAngleTag() const { return "(300a,0120)"; }
75  bool setBeamLimitingDeviceAngle(std::string parameter);
76 
77  // BeamLimitingDeviceRotationDirection (300a,0121) vr=CS, vm=1, type=1C
78  bool getBeamLimitingDeviceRotationDirection(std::string& parameter) const;
79  std::string getBeamLimitingDeviceRotationDirectionTag() const { return "(300a,0121)"; }
80  bool setBeamLimitingDeviceRotationDirection(std::string parameter);
81 
82  // ControlPointIndex (300a,0112) vr=IS, vm=1, type=1
83  bool getControlPointIndex(std::string& parameter) const;
84  std::string getControlPointIndexTag() const { return "(300a,0112)"; }
85  bool setControlPointIndex(std::string parameter);
86 
87  // CumulativeMetersetWeight (300a,0134) vr=DS, vm=1, type=2
88  bool getCumulativeMetersetWeight(std::string& parameter) const;
89  std::string getCumulativeMetersetWeightTag() const { return "(300a,0134)"; }
90  bool setCumulativeMetersetWeight(std::string parameter);
91 
92  // GantryAngle (300a,011e) vr=DS, vm=1, type=1C
93  bool getGantryAngle(std::string& parameter) const;
94  std::string getGantryAngleTag() const { return "(300a,011e)"; }
95  bool setGantryAngle(std::string parameter);
96 
97  // GantryPitchAngle (300a,014a) vr=FL, vm=1, type=2C
98  bool getGantryPitchAngle(float& parameter) const;
99  std::string getGantryPitchAngleTag() const { return "(300a,014a)"; }
100  bool setGantryPitchAngle(float parameter);
101 
102  // GantryPitchRotationDirection (300a,014c) vr=CS, vm=1, type=2C
103  bool getGantryPitchRotationDirection(std::string& parameter) const;
104  std::string getGantryPitchRotationDirectionTag() const { return "(300a,014c)"; }
105  bool setGantryPitchRotationDirection(std::string parameter);
106 
107  // GantryRotationDirection (300a,011f) vr=CS, vm=1, type=1C
108  bool getGantryRotationDirection(std::string& parameter) const;
109  std::string getGantryRotationDirectionTag() const { return "(300a,011f)"; }
110  bool setGantryRotationDirection(std::string parameter);
111 
112  // HeadFixationAngle (300a,0148) vr=FL, vm=1, type=3
113  bool getHeadFixationAngle(float& parameter) const;
114  std::string getHeadFixationAngleTag() const { return "(300a,0148)"; }
115  bool setHeadFixationAngle(float parameter);
116 
117  // IsocenterPosition (300a,012c) vr=DS, vm=3, type=2C
118  bool getIsocenterPosition(std::string& parameter) const;
119  std::string getIsocenterPositionTag() const { return "(300a,012c)"; }
120  bool setIsocenterPosition(std::string parameter);
121 
122  // KVP (0018,0060) vr=DS, vm=1, type=1C
123  bool getKVP(std::string& parameter) const;
124  std::string getKVPTag() const { return "(0018,0060)"; }
125  bool setKVP(std::string parameter);
126 
127  // MetersetRate (300a,035a) vr=FL, vm=1, type=3
128  bool getMetersetRate(float& parameter) const;
129  std::string getMetersetRateTag() const { return "(300a,035a)"; }
130  bool setMetersetRate(float parameter);
131 
132  // NominalBeamEnergy (300a,0114) vr=DS, vm=1, type=1C
133  bool getNominalBeamEnergy(std::string& parameter) const;
134  std::string getNominalBeamEnergyTag() const { return "(300a,0114)"; }
135  bool setNominalBeamEnergy(std::string parameter);
136 
137  // NumberOfPaintings (300a,039a) vr=IS, vm=1, type=1C
138  bool getNumberOfPaintings(std::string& parameter) const;
139  std::string getNumberOfPaintingsTag() const { return "(300a,039a)"; }
140  bool setNumberOfPaintings(std::string parameter);
141 
142  // NumberOfScanSpotPositions (300a,0392) vr=IS, vm=1, type=1C
143  bool getNumberOfScanSpotPositions(std::string& parameter) const;
144  std::string getNumberOfScanSpotPositionsTag() const { return "(300a,0392)"; }
145  bool setNumberOfScanSpotPositions(std::string parameter);
146 
147  // PatientSupportAngle (300a,0122) vr=DS, vm=1, type=1C
148  bool getPatientSupportAngle(std::string& parameter) const;
149  std::string getPatientSupportAngleTag() const { return "(300a,0122)"; }
150  bool setPatientSupportAngle(std::string parameter);
151 
152  // PatientSupportRotationDirection (300a,0123) vr=CS, vm=1, type=1C
153  bool getPatientSupportRotationDirection(std::string& parameter) const;
154  std::string getPatientSupportRotationDirectionTag() const { return "(300a,0123)"; }
155  bool setPatientSupportRotationDirection(std::string parameter);
156 
157  // ScanSpotMetersetWeights (300a,0396) vr=FL, vm=1-n, type=1C
158  bool getScanSpotMetersetWeights(float& parameter) const;
159  std::string getScanSpotMetersetWeightsTag() const { return "(300a,0396)"; }
160  bool setScanSpotMetersetWeights(float parameter);
161 
162  // ScanSpotPositionMap (300a,0394) vr=FL, vm=1-n, type=1C
163  bool getScanSpotPositionMap(float& parameter) const;
164  std::string getScanSpotPositionMapTag() const { return "(300a,0394)"; }
165  bool setScanSpotPositionMap(float parameter);
166 
167  // ScanSpotTuneID (300a,0390) vr=SH, vm=1, type=1C
168  bool getScanSpotTuneID(std::string& parameter) const;
169  std::string getScanSpotTuneIDTag() const { return "(300a,0390)"; }
170  bool setScanSpotTuneID(std::string parameter);
171 
172  // ScanningSpotSize (300a,0398) vr=FL, vm=2, type=3
173  bool getScanningSpotSize(float& parameter) const;
174  std::string getScanningSpotSizeTag() const { return "(300a,0398)"; }
175  bool setScanningSpotSize(float parameter);
176 
177  // SnoutPosition (300a,030d) vr=FL, vm=1, type=2C
178  bool getSnoutPosition(float& parameter) const;
179  std::string getSnoutPositionTag() const { return "(300a,030d)"; }
180  bool setSnoutPosition(float parameter);
181 
182  // SurfaceEntryPoint (300a,012e) vr=DS, vm=3, type=3
183  bool getSurfaceEntryPoint(std::string& parameter) const;
184  std::string getSurfaceEntryPointTag() const { return "(300a,012e)"; }
185  bool setSurfaceEntryPoint(std::string parameter);
186 
187  // TableTopLateralPosition (300a,012a) vr=DS, vm=1, type=2C
188  bool getTableTopLateralPosition(std::string& parameter) const;
189  std::string getTableTopLateralPositionTag() const { return "(300a,012a)"; }
190  bool setTableTopLateralPosition(std::string parameter);
191 
192  // TableTopLongitudinalPosition (300a,0129) vr=DS, vm=1, type=2C
193  bool getTableTopLongitudinalPosition(std::string& parameter) const;
194  std::string getTableTopLongitudinalPositionTag() const { return "(300a,0129)"; }
195  bool setTableTopLongitudinalPosition(std::string parameter);
196 
197  // TableTopPitchAngle (300a,0140) vr=FL, vm=1, type=2C
198  bool getTableTopPitchAngle(float& parameter) const;
199  std::string getTableTopPitchAngleTag() const { return "(300a,0140)"; }
200  bool setTableTopPitchAngle(float parameter);
201 
202  // TableTopPitchRotationDirection (300a,0142) vr=CS, vm=1, type=2C
203  bool getTableTopPitchRotationDirection(std::string& parameter) const;
204  std::string getTableTopPitchRotationDirectionTag() const { return "(300a,0142)"; }
205  bool setTableTopPitchRotationDirection(std::string parameter);
206 
207  // TableTopRollAngle (300a,0144) vr=FL, vm=1, type=2C
208  bool getTableTopRollAngle(float& parameter) const;
209  std::string getTableTopRollAngleTag() const { return "(300a,0144)"; }
210  bool setTableTopRollAngle(float parameter);
211 
212  // TableTopRollRotationDirection (300a,0146) vr=CS, vm=1, type=2C
213  bool getTableTopRollRotationDirection(std::string& parameter) const;
214  std::string getTableTopRollRotationDirectionTag() const { return "(300a,0146)"; }
215  bool setTableTopRollRotationDirection(std::string parameter);
216 
217  // TableTopVerticalPosition (300a,0128) vr=DS, vm=1, type=2C
218  bool getTableTopVerticalPosition(std::string& parameter) const;
219  std::string getTableTopVerticalPositionTag() const { return "(300a,0128)"; }
220  bool setTableTopVerticalPosition(std::string parameter);
221 
222  // BeamLimitingDevicePositionSequence (300a,011a) vr=SQ, vm=1, type=1C
224  std::string getBeamLimitingDevicePositionSequenceTag() const { return std::string("(300a,011a)"); }
226 
227  // IonWedgePositionSequence (300a,03ac) vr=SQ, vm=1, type=1C
229  std::string getIonWedgePositionSequenceTag() const { return std::string("(300a,03ac)"); }
231 
232  // LateralSpreadingDeviceSettingsSequence (300a,0370) vr=SQ, vm=1, type=1C
234  std::string getLateralSpreadingDeviceSettingsSequenceTag() const { return std::string("(300a,0370)"); }
236 
237  // RangeModulatorSettingsSequence (300a,0380) vr=SQ, vm=1, type=1C
239  std::string getRangeModulatorSettingsSequenceTag() const { return std::string("(300a,0380)"); }
241 
242  // RangeShifterSettingsSequence (300a,0360) vr=SQ, vm=1, type=1C
244  std::string getRangeShifterSettingsSequenceTag() const { return std::string("(300a,0360)"); }
246 
247  // ReferencedDoseReferenceSequence (300c,0050) vr=SQ, vm=1, type=3
249  std::string getReferencedDoseReferenceSequenceTag() const { return std::string("(300c,0050)"); }
251 
252 
253  private:
254 
255  DCMTree::TreePtr _dcmItem;
256 
257  };
258 
260 
262  DcmDRTIonControlPointSequenceInterface(std::vector<DcmDRTIonControlPointSequenceInterface::Item> dcmSequence) : _itemVec(dcmSequence) {}
263 
265  for(size_t i=0; i < treePtrSeq.size(); i++)
266  {
267  _itemVec.push_back(DcmDRTIonControlPointSequenceInterface::Item(treePtrSeq[i]));
268  }
269  }
270 
273  // BeamLimitingDeviceAngle (300a,0120) vr=DS, vm=1, type=1C
274  bool getBeamLimitingDeviceAngle(unsigned long idx, std::string& parameter) const;
275  bool getBeamLimitingDeviceAngle(DCMTree::TreePtr item, std::string& parameter) const;
276  std::string getBeamLimitingDeviceAngleTag() const { return "(300a,0120)"; }
277  bool setBeamLimitingDeviceAngle(unsigned long idx, std::string parameter);
278 
279  // BeamLimitingDeviceRotationDirection (300a,0121) vr=CS, vm=1, type=1C
280  bool getBeamLimitingDeviceRotationDirection(unsigned long idx, std::string& parameter) const;
281  bool getBeamLimitingDeviceRotationDirection(DCMTree::TreePtr item, std::string& parameter) const;
282  std::string getBeamLimitingDeviceRotationDirectionTag() const { return "(300a,0121)"; }
283  bool setBeamLimitingDeviceRotationDirection(unsigned long idx, std::string parameter);
284 
285  // ControlPointIndex (300a,0112) vr=IS, vm=1, type=1
286  bool getControlPointIndex(unsigned long idx, std::string& parameter) const;
287  bool getControlPointIndex(DCMTree::TreePtr item, std::string& parameter) const;
288  std::string getControlPointIndexTag() const { return "(300a,0112)"; }
289  bool setControlPointIndex(unsigned long idx, std::string parameter);
290 
291  // CumulativeMetersetWeight (300a,0134) vr=DS, vm=1, type=2
292  bool getCumulativeMetersetWeight(unsigned long idx, std::string& parameter) const;
293  bool getCumulativeMetersetWeight(DCMTree::TreePtr item, std::string& parameter) const;
294  std::string getCumulativeMetersetWeightTag() const { return "(300a,0134)"; }
295  bool setCumulativeMetersetWeight(unsigned long idx, std::string parameter);
296 
297  // GantryAngle (300a,011e) vr=DS, vm=1, type=1C
298  bool getGantryAngle(unsigned long idx, std::string& parameter) const;
299  bool getGantryAngle(DCMTree::TreePtr item, std::string& parameter) const;
300  std::string getGantryAngleTag() const { return "(300a,011e)"; }
301  bool setGantryAngle(unsigned long idx, std::string parameter);
302 
303  // GantryPitchAngle (300a,014a) vr=FL, vm=1, type=2C
304  bool getGantryPitchAngle(unsigned long idx, float& parameter) const;
305  bool getGantryPitchAngle(DCMTree::TreePtr item, float& parameter) const;
306  std::string getGantryPitchAngleTag() const { return "(300a,014a)"; }
307  bool setGantryPitchAngle(unsigned long idx, float parameter);
308 
309  // GantryPitchRotationDirection (300a,014c) vr=CS, vm=1, type=2C
310  bool getGantryPitchRotationDirection(unsigned long idx, std::string& parameter) const;
311  bool getGantryPitchRotationDirection(DCMTree::TreePtr item, std::string& parameter) const;
312  std::string getGantryPitchRotationDirectionTag() const { return "(300a,014c)"; }
313  bool setGantryPitchRotationDirection(unsigned long idx, std::string parameter);
314 
315  // GantryRotationDirection (300a,011f) vr=CS, vm=1, type=1C
316  bool getGantryRotationDirection(unsigned long idx, std::string& parameter) const;
317  bool getGantryRotationDirection(DCMTree::TreePtr item, std::string& parameter) const;
318  std::string getGantryRotationDirectionTag() const { return "(300a,011f)"; }
319  bool setGantryRotationDirection(unsigned long idx, std::string parameter);
320 
321  // HeadFixationAngle (300a,0148) vr=FL, vm=1, type=3
322  bool getHeadFixationAngle(unsigned long idx, float& parameter) const;
323  bool getHeadFixationAngle(DCMTree::TreePtr item, float& parameter) const;
324  std::string getHeadFixationAngleTag() const { return "(300a,0148)"; }
325  bool setHeadFixationAngle(unsigned long idx, float parameter);
326 
327  // IsocenterPosition (300a,012c) vr=DS, vm=3, type=2C
328  bool getIsocenterPosition(unsigned long idx, std::string& parameter) const;
329  bool getIsocenterPosition(DCMTree::TreePtr item, std::string& parameter) const;
330  std::string getIsocenterPositionTag() const { return "(300a,012c)"; }
331  bool setIsocenterPosition(unsigned long idx, std::string parameter);
332 
333  // KVP (0018,0060) vr=DS, vm=1, type=1C
334  bool getKVP(unsigned long idx, std::string& parameter) const;
335  bool getKVP(DCMTree::TreePtr item, std::string& parameter) const;
336  std::string getKVPTag() const { return "(0018,0060)"; }
337  bool setKVP(unsigned long idx, std::string parameter);
338 
339  // MetersetRate (300a,035a) vr=FL, vm=1, type=3
340  bool getMetersetRate(unsigned long idx, float& parameter) const;
341  bool getMetersetRate(DCMTree::TreePtr item, float& parameter) const;
342  std::string getMetersetRateTag() const { return "(300a,035a)"; }
343  bool setMetersetRate(unsigned long idx, float parameter);
344 
345  // NominalBeamEnergy (300a,0114) vr=DS, vm=1, type=1C
346  bool getNominalBeamEnergy(unsigned long idx, std::string& parameter) const;
347  bool getNominalBeamEnergy(DCMTree::TreePtr item, std::string& parameter) const;
348  std::string getNominalBeamEnergyTag() const { return "(300a,0114)"; }
349  bool setNominalBeamEnergy(unsigned long idx, std::string parameter);
350 
351  // NumberOfPaintings (300a,039a) vr=IS, vm=1, type=1C
352  bool getNumberOfPaintings(unsigned long idx, std::string& parameter) const;
353  bool getNumberOfPaintings(DCMTree::TreePtr item, std::string& parameter) const;
354  std::string getNumberOfPaintingsTag() const { return "(300a,039a)"; }
355  bool setNumberOfPaintings(unsigned long idx, std::string parameter);
356 
357  // NumberOfScanSpotPositions (300a,0392) vr=IS, vm=1, type=1C
358  bool getNumberOfScanSpotPositions(unsigned long idx, std::string& parameter) const;
359  bool getNumberOfScanSpotPositions(DCMTree::TreePtr item, std::string& parameter) const;
360  std::string getNumberOfScanSpotPositionsTag() const { return "(300a,0392)"; }
361  bool setNumberOfScanSpotPositions(unsigned long idx, std::string parameter);
362 
363  // PatientSupportAngle (300a,0122) vr=DS, vm=1, type=1C
364  bool getPatientSupportAngle(unsigned long idx, std::string& parameter) const;
365  bool getPatientSupportAngle(DCMTree::TreePtr item, std::string& parameter) const;
366  std::string getPatientSupportAngleTag() const { return "(300a,0122)"; }
367  bool setPatientSupportAngle(unsigned long idx, std::string parameter);
368 
369  // PatientSupportRotationDirection (300a,0123) vr=CS, vm=1, type=1C
370  bool getPatientSupportRotationDirection(unsigned long idx, std::string& parameter) const;
371  bool getPatientSupportRotationDirection(DCMTree::TreePtr item, std::string& parameter) const;
372  std::string getPatientSupportRotationDirectionTag() const { return "(300a,0123)"; }
373  bool setPatientSupportRotationDirection(unsigned long idx, std::string parameter);
374 
375  // ScanSpotMetersetWeights (300a,0396) vr=FL, vm=1-n, type=1C
376  bool getScanSpotMetersetWeights(unsigned long idx, float& parameter) const;
377  bool getScanSpotMetersetWeights(DCMTree::TreePtr item, float& parameter) const;
378  std::string getScanSpotMetersetWeightsTag() const { return "(300a,0396)"; }
379  bool setScanSpotMetersetWeights(unsigned long idx, float parameter);
380 
381  // ScanSpotPositionMap (300a,0394) vr=FL, vm=1-n, type=1C
382  bool getScanSpotPositionMap(unsigned long idx, float& parameter) const;
383  bool getScanSpotPositionMap(DCMTree::TreePtr item, float& parameter) const;
384  std::string getScanSpotPositionMapTag() const { return "(300a,0394)"; }
385  bool setScanSpotPositionMap(unsigned long idx, float parameter);
386 
387  // ScanSpotTuneID (300a,0390) vr=SH, vm=1, type=1C
388  bool getScanSpotTuneID(unsigned long idx, std::string& parameter) const;
389  bool getScanSpotTuneID(DCMTree::TreePtr item, std::string& parameter) const;
390  std::string getScanSpotTuneIDTag() const { return "(300a,0390)"; }
391  bool setScanSpotTuneID(unsigned long idx, std::string parameter);
392 
393  // ScanningSpotSize (300a,0398) vr=FL, vm=2, type=3
394  bool getScanningSpotSize(unsigned long idx, float& parameter) const;
395  bool getScanningSpotSize(DCMTree::TreePtr item, float& parameter) const;
396  std::string getScanningSpotSizeTag() const { return "(300a,0398)"; }
397  bool setScanningSpotSize(unsigned long idx, float parameter);
398 
399  // SnoutPosition (300a,030d) vr=FL, vm=1, type=2C
400  bool getSnoutPosition(unsigned long idx, float& parameter) const;
401  bool getSnoutPosition(DCMTree::TreePtr item, float& parameter) const;
402  std::string getSnoutPositionTag() const { return "(300a,030d)"; }
403  bool setSnoutPosition(unsigned long idx, float parameter);
404 
405  // SurfaceEntryPoint (300a,012e) vr=DS, vm=3, type=3
406  bool getSurfaceEntryPoint(unsigned long idx, std::string& parameter) const;
407  bool getSurfaceEntryPoint(DCMTree::TreePtr item, std::string& parameter) const;
408  std::string getSurfaceEntryPointTag() const { return "(300a,012e)"; }
409  bool setSurfaceEntryPoint(unsigned long idx, std::string parameter);
410 
411  // TableTopLateralPosition (300a,012a) vr=DS, vm=1, type=2C
412  bool getTableTopLateralPosition(unsigned long idx, std::string& parameter) const;
413  bool getTableTopLateralPosition(DCMTree::TreePtr item, std::string& parameter) const;
414  std::string getTableTopLateralPositionTag() const { return "(300a,012a)"; }
415  bool setTableTopLateralPosition(unsigned long idx, std::string parameter);
416 
417  // TableTopLongitudinalPosition (300a,0129) vr=DS, vm=1, type=2C
418  bool getTableTopLongitudinalPosition(unsigned long idx, std::string& parameter) const;
419  bool getTableTopLongitudinalPosition(DCMTree::TreePtr item, std::string& parameter) const;
420  std::string getTableTopLongitudinalPositionTag() const { return "(300a,0129)"; }
421  bool setTableTopLongitudinalPosition(unsigned long idx, std::string parameter);
422 
423  // TableTopPitchAngle (300a,0140) vr=FL, vm=1, type=2C
424  bool getTableTopPitchAngle(unsigned long idx, float& parameter) const;
425  bool getTableTopPitchAngle(DCMTree::TreePtr item, float& parameter) const;
426  std::string getTableTopPitchAngleTag() const { return "(300a,0140)"; }
427  bool setTableTopPitchAngle(unsigned long idx, float parameter);
428 
429  // TableTopPitchRotationDirection (300a,0142) vr=CS, vm=1, type=2C
430  bool getTableTopPitchRotationDirection(unsigned long idx, std::string& parameter) const;
431  bool getTableTopPitchRotationDirection(DCMTree::TreePtr item, std::string& parameter) const;
432  std::string getTableTopPitchRotationDirectionTag() const { return "(300a,0142)"; }
433  bool setTableTopPitchRotationDirection(unsigned long idx, std::string parameter);
434 
435  // TableTopRollAngle (300a,0144) vr=FL, vm=1, type=2C
436  bool getTableTopRollAngle(unsigned long idx, float& parameter) const;
437  bool getTableTopRollAngle(DCMTree::TreePtr item, float& parameter) const;
438  std::string getTableTopRollAngleTag() const { return "(300a,0144)"; }
439  bool setTableTopRollAngle(unsigned long idx, float parameter);
440 
441  // TableTopRollRotationDirection (300a,0146) vr=CS, vm=1, type=2C
442  bool getTableTopRollRotationDirection(unsigned long idx, std::string& parameter) const;
443  bool getTableTopRollRotationDirection(DCMTree::TreePtr item, std::string& parameter) const;
444  std::string getTableTopRollRotationDirectionTag() const { return "(300a,0146)"; }
445  bool setTableTopRollRotationDirection(unsigned long idx, std::string parameter);
446 
447  // TableTopVerticalPosition (300a,0128) vr=DS, vm=1, type=2C
448  bool getTableTopVerticalPosition(unsigned long idx, std::string& parameter) const;
449  bool getTableTopVerticalPosition(DCMTree::TreePtr item, std::string& parameter) const;
450  std::string getTableTopVerticalPositionTag() const { return "(300a,0128)"; }
451  bool setTableTopVerticalPosition(unsigned long idx, std::string parameter);
452 
453  // BeamLimitingDevicePositionSequence (300a,011a) vr=SQ, vm=1, type=1C
455  std::string getBeamLimitingDevicePositionSequenceTag() const { return std::string("(300a,011a)"); }
457 
458  // IonWedgePositionSequence (300a,03ac) vr=SQ, vm=1, type=1C
460  std::string getIonWedgePositionSequenceTag() const { return std::string("(300a,03ac)"); }
462 
463  // LateralSpreadingDeviceSettingsSequence (300a,0370) vr=SQ, vm=1, type=1C
465  std::string getLateralSpreadingDeviceSettingsSequenceTag() const { return std::string("(300a,0370)"); }
467 
468  // RangeModulatorSettingsSequence (300a,0380) vr=SQ, vm=1, type=1C
470  std::string getRangeModulatorSettingsSequenceTag() const { return std::string("(300a,0380)"); }
472 
473  // RangeShifterSettingsSequence (300a,0360) vr=SQ, vm=1, type=1C
475  std::string getRangeShifterSettingsSequenceTag() const { return std::string("(300a,0360)"); }
477 
478  // ReferencedDoseReferenceSequence (300c,0050) vr=SQ, vm=1, type=3
480  std::string getReferencedDoseReferenceSequenceTag() const { return std::string("(300c,0050)"); }
482 
483 
486  void setSequence(std::vector<DcmDRTIonControlPointSequenceInterface::Item> dcmSequence) {
487  _itemVec = dcmSequence;
488  }
489 
492  std::vector<DcmDRTIonControlPointSequenceInterface::Item> getSequence() const {
493  return _itemVec;
494  }
495 
498  bool hasSequence() const {
499  return (_itemVec.size() != 0);
500  }
501 
505  return static_cast<MLint>(_itemVec.size());
506  }
507 
511  if (_itemVec.size() > idx) {
512  return _itemVec[idx];
513  }
515  }
516 
520  _itemVec.push_back(DcmDRTIonControlPointSequenceInterface::Item());
521  return _itemVec[_itemVec.size()-1];
522  }
523 
525  _itemVec.push_back(newItem);
526  }
527 
530  bool insertItem(const size_t idx) {
531  if (_itemVec.size() > idx) {
532  std::vector<DcmDRTIonControlPointSequenceInterface::Item>::iterator it = _itemVec.begin();
533  std::advance(it, idx);
534  _itemVec.insert(it, DcmDRTIonControlPointSequenceInterface::Item());
535  return true;
536  }
537  return false;
538  }
539 
542  bool removeItem(const size_t idx) {
543  if ( _itemVec.size() > idx ) {
544  std::vector<DcmDRTIonControlPointSequenceInterface::Item>::iterator it = _itemVec.begin();
545  std::advance(it, idx);
546  _itemVec.erase(it);
547  return true;
548  }
549  return false;
550  }
551 
552  protected:
554  std::vector<DcmDRTIonControlPointSequenceInterface::Item> _itemVec;
555 };
556 
557 ML_END_NAMESPACE
558 
559 #endif // __mlDcmDRTIonControlPointSequenceInterface_H
560 
561 /* MeVis-Hidden-Components-Start */
562 /* MeVis-Hidden-Components-End */
#define MLDCMTKACCESSORIES_EXPORT
Class to provide access to DRTBeamLimitingDevicePositionSequence.
bool getBeamLimitingDeviceAngle(std::string &parameter) const
bool getMetersetRate(float &parameter) const
bool getHeadFixationAngle(float &parameter) const
bool setIsocenterPosition(std::string parameter)
bool setTableTopRollRotationDirection(std::string parameter)
bool setPatientSupportRotationDirection(std::string parameter)
bool getKVP(std::string &parameter) const
bool getIsocenterPosition(std::string &parameter) const
bool setSurfaceEntryPoint(std::string parameter)
bool getPatientSupportAngle(std::string &parameter) const
bool getTableTopVerticalPosition(std::string &parameter) const
DcmDRTBeamLimitingDevicePositionSequenceInterface getBeamLimitingDevicePositionSequence() const
bool setGantryRotationDirection(std::string parameter)
bool getScanSpotMetersetWeights(float &parameter) const
void setRangeModulatorSettingsSequence(DcmDRTRangeModulatorSettingsSequenceInRTIonBeamsModuleInterface seq)
bool getCumulativeMetersetWeight(std::string &parameter) const
bool getTableTopRollAngle(float &parameter) const
bool setScanSpotTuneID(std::string parameter)
bool getScanningSpotSize(float &parameter) const
bool setControlPointIndex(std::string parameter)
bool getPatientSupportRotationDirection(std::string &parameter) const
bool getNumberOfPaintings(std::string &parameter) const
bool getSurfaceEntryPoint(std::string &parameter) const
DcmDRTRangeShifterSettingsSequenceInRTIonBeamsModuleInterface getRangeShifterSettingsSequence() const
bool setBeamLimitingDeviceAngle(std::string parameter)
bool setTableTopLongitudinalPosition(std::string parameter)
bool getTableTopLongitudinalPosition(std::string &parameter) const
DcmDRTIonWedgePositionSequenceInterface getIonWedgePositionSequence() const
void setLateralSpreadingDeviceSettingsSequence(DcmDRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsModuleInterface seq)
bool getScanSpotPositionMap(float &parameter) const
bool getBeamLimitingDeviceRotationDirection(std::string &parameter) const
bool setBeamLimitingDeviceRotationDirection(std::string parameter)
bool setPatientSupportAngle(std::string parameter)
DcmDRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsModuleInterface getLateralSpreadingDeviceSettingsSequence() const
bool getControlPointIndex(std::string &parameter) const
bool getGantryAngle(std::string &parameter) const
bool setTableTopLateralPosition(std::string parameter)
bool getTableTopLateralPosition(std::string &parameter) const
bool setGantryPitchRotationDirection(std::string parameter)
bool getTableTopPitchRotationDirection(std::string &parameter) const
bool setTableTopPitchRotationDirection(std::string parameter)
bool getSnoutPosition(float &parameter) const
bool getGantryPitchRotationDirection(std::string &parameter) const
void setReferencedDoseReferenceSequence(DcmDRTReferencedDoseReferenceSequenceInRTIonBeamsModuleInterface seq)
bool getScanSpotTuneID(std::string &parameter) const
bool getNumberOfScanSpotPositions(std::string &parameter) const
bool getGantryPitchAngle(float &parameter) const
bool getNominalBeamEnergy(std::string &parameter) const
bool setNominalBeamEnergy(std::string parameter)
void setRangeShifterSettingsSequence(DcmDRTRangeShifterSettingsSequenceInRTIonBeamsModuleInterface seq)
bool setCumulativeMetersetWeight(std::string parameter)
void setBeamLimitingDevicePositionSequence(DcmDRTBeamLimitingDevicePositionSequenceInterface seq)
DcmDRTRangeModulatorSettingsSequenceInRTIonBeamsModuleInterface getRangeModulatorSettingsSequence() const
bool getTableTopRollRotationDirection(std::string &parameter) const
bool setNumberOfScanSpotPositions(std::string parameter)
bool getTableTopPitchAngle(float &parameter) const
bool setNumberOfPaintings(std::string parameter)
void setIonWedgePositionSequence(DcmDRTIonWedgePositionSequenceInterface seq)
bool getGantryRotationDirection(std::string &parameter) const
DcmDRTReferencedDoseReferenceSequenceInRTIonBeamsModuleInterface getReferencedDoseReferenceSequence() const
bool setTableTopVerticalPosition(std::string parameter)
Class to provide access to DRTIonControlPointSequence.
DcmDRTIonControlPointSequenceInterface::Item getItem(const size_t idx) const
Gets the item at the indicated position.
bool getPatientSupportAngle(unsigned long idx, std::string &parameter) const
bool getKVP(unsigned long idx, std::string &parameter) const
bool setScanSpotTuneID(unsigned long idx, std::string parameter)
bool setTableTopRollRotationDirection(unsigned long idx, std::string parameter)
DcmDRTRangeShifterSettingsSequenceInRTIonBeamsModuleInterface getRangeShifterSettingsSequence(unsigned long idx) const
bool getNominalBeamEnergy(DCMTree::TreePtr item, std::string &parameter) const
bool getTableTopLateralPosition(DCMTree::TreePtr item, std::string &parameter) const
bool setGantryPitchRotationDirection(unsigned long idx, std::string parameter)
bool getTableTopPitchAngle(unsigned long idx, float &parameter) const
bool getGantryPitchAngle(DCMTree::TreePtr item, float &parameter) const
bool insertItem(const size_t idx)
Insert an item at the indicated position.
bool getNumberOfScanSpotPositions(DCMTree::TreePtr item, std::string &parameter) const
bool getTableTopVerticalPosition(unsigned long idx, std::string &parameter) const
bool getTableTopPitchRotationDirection(unsigned long idx, std::string &parameter) const
bool getIsocenterPosition(unsigned long idx, std::string &parameter) const
void setSequence(std::vector< DcmDRTIonControlPointSequenceInterface::Item > dcmSequence)
Set the DRTIonControlPointSequence this interface class provides access to.
void setLateralSpreadingDeviceSettingsSequence(DcmDRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsModuleInterface seq, unsigned long idx)
bool getBeamLimitingDeviceRotationDirection(DCMTree::TreePtr item, std::string &parameter) const
void setRangeShifterSettingsSequence(DcmDRTRangeShifterSettingsSequenceInRTIonBeamsModuleInterface seq, unsigned long idx)
bool getSnoutPosition(DCMTree::TreePtr item, float &parameter) const
std::vector< DcmDRTIonControlPointSequenceInterface::Item > _itemVec
Reference to the wrapped DICOM tree pointer vector.
bool removeItem(const size_t idx)
Removes the indicated item from the sequence.
bool getNumberOfPaintings(DCMTree::TreePtr item, std::string &parameter) const
bool getPatientSupportRotationDirection(unsigned long idx, std::string &parameter) const
bool getPatientSupportAngle(DCMTree::TreePtr item, std::string &parameter) const
bool setKVP(unsigned long idx, std::string parameter)
bool getBeamLimitingDeviceAngle(unsigned long idx, std::string &parameter) const
virtual ~DcmDRTIonControlPointSequenceInterface()
Default virtual Destructor.
bool getTableTopLateralPosition(unsigned long idx, std::string &parameter) const
bool getScanSpotTuneID(unsigned long idx, std::string &parameter) const
bool getNumberOfScanSpotPositions(unsigned long idx, std::string &parameter) const
bool getNominalBeamEnergy(unsigned long idx, std::string &parameter) const
DcmDRTIonControlPointSequenceInterface(std::vector< DcmDRTIonControlPointSequenceInterface::Item > dcmSequence)
Default Constructor.
bool setBeamLimitingDeviceRotationDirection(unsigned long idx, std::string parameter)
bool getScanSpotTuneID(DCMTree::TreePtr item, std::string &parameter) const
bool setScanSpotMetersetWeights(unsigned long idx, float parameter)
bool hasSequence() const
Check if the DRTIonControlPointSequence is set.
bool getHeadFixationAngle(DCMTree::TreePtr item, float &parameter) const
bool getSurfaceEntryPoint(unsigned long idx, std::string &parameter) const
bool getMetersetRate(DCMTree::TreePtr item, float &parameter) const
bool getCumulativeMetersetWeight(DCMTree::TreePtr item, std::string &parameter) const
bool setTableTopRollAngle(unsigned long idx, float parameter)
bool getSurfaceEntryPoint(DCMTree::TreePtr item, std::string &parameter) const
bool getBeamLimitingDeviceAngle(DCMTree::TreePtr item, std::string &parameter) const
bool getTableTopVerticalPosition(DCMTree::TreePtr item, std::string &parameter) const
std::vector< DcmDRTIonControlPointSequenceInterface::Item > getSequence() const
Return the DRTIonControlPointSequence this interface class provides access to.
bool getIsocenterPosition(DCMTree::TreePtr item, std::string &parameter) const
bool getScanningSpotSize(unsigned long idx, float &parameter) const
bool getScanSpotMetersetWeights(unsigned long idx, float &parameter) const
bool setHeadFixationAngle(unsigned long idx, float parameter)
bool setTableTopPitchRotationDirection(unsigned long idx, std::string parameter)
bool setPatientSupportAngle(unsigned long idx, std::string parameter)
bool getScanningSpotSize(DCMTree::TreePtr item, float &parameter) const
bool setIsocenterPosition(unsigned long idx, std::string parameter)
bool getGantryRotationDirection(DCMTree::TreePtr item, std::string &parameter) const
bool setScanSpotPositionMap(unsigned long idx, float parameter)
bool getNumberOfPaintings(unsigned long idx, std::string &parameter) const
bool setPatientSupportRotationDirection(unsigned long idx, std::string parameter)
bool getGantryAngle(DCMTree::TreePtr item, std::string &parameter) const
bool getControlPointIndex(DCMTree::TreePtr item, std::string &parameter) const
void setReferencedDoseReferenceSequence(DcmDRTReferencedDoseReferenceSequenceInRTIonBeamsModuleInterface seq, unsigned long idx)
void addItem(DcmDRTIonControlPointSequenceInterface::Item newItem)
bool getControlPointIndex(unsigned long idx, std::string &parameter) const
bool getBeamLimitingDeviceRotationDirection(unsigned long idx, std::string &parameter) const
bool getPatientSupportRotationDirection(DCMTree::TreePtr item, std::string &parameter) const
bool getTableTopPitchRotationDirection(DCMTree::TreePtr item, std::string &parameter) const
bool getTableTopRollAngle(unsigned long idx, float &parameter) const
bool setSnoutPosition(unsigned long idx, float parameter)
bool getSnoutPosition(unsigned long idx, float &parameter) const
MLint getNumberOfItems() const
Return number of items the internal sequence consists of.
bool getGantryAngle(unsigned long idx, std::string &parameter) const
bool getTableTopRollRotationDirection(DCMTree::TreePtr item, std::string &parameter) const
DcmDRTIonWedgePositionSequenceInterface getIonWedgePositionSequence(unsigned long idx) const
bool setGantryPitchAngle(unsigned long idx, float parameter)
bool setMetersetRate(unsigned long idx, float parameter)
bool getCumulativeMetersetWeight(unsigned long idx, std::string &parameter) const
bool getGantryPitchRotationDirection(unsigned long idx, std::string &parameter) const
DcmDRTBeamLimitingDevicePositionSequenceInterface getBeamLimitingDevicePositionSequence(unsigned long idx) const
bool getTableTopLongitudinalPosition(DCMTree::TreePtr item, std::string &parameter) const
bool getTableTopLongitudinalPosition(unsigned long idx, std::string &parameter) const
bool setTableTopLateralPosition(unsigned long idx, std::string parameter)
bool getGantryRotationDirection(unsigned long idx, std::string &parameter) const
bool setTableTopVerticalPosition(unsigned long idx, std::string parameter)
bool setGantryRotationDirection(unsigned long idx, std::string parameter)
bool setControlPointIndex(unsigned long idx, std::string parameter)
bool setScanningSpotSize(unsigned long idx, float parameter)
bool getScanSpotPositionMap(unsigned long idx, float &parameter) const
DcmDRTReferencedDoseReferenceSequenceInRTIonBeamsModuleInterface getReferencedDoseReferenceSequence(unsigned long idx) const
DcmDRTRangeModulatorSettingsSequenceInRTIonBeamsModuleInterface getRangeModulatorSettingsSequence(unsigned long idx) const
DcmDRTIonControlPointSequenceInterface::Item & addItem()
Adds a new item to the sequence.
bool getMetersetRate(unsigned long idx, float &parameter) const
bool getHeadFixationAngle(unsigned long idx, float &parameter) const
bool getTableTopRollRotationDirection(unsigned long idx, std::string &parameter) const
bool setTableTopPitchAngle(unsigned long idx, float parameter)
void setIonWedgePositionSequence(DcmDRTIonWedgePositionSequenceInterface seq, unsigned long idx)
bool setBeamLimitingDeviceAngle(unsigned long idx, std::string parameter)
bool setCumulativeMetersetWeight(unsigned long idx, std::string parameter)
void setBeamLimitingDevicePositionSequence(DcmDRTBeamLimitingDevicePositionSequenceInterface seq, unsigned long idx)
bool getGantryPitchAngle(unsigned long idx, float &parameter) const
bool getScanSpotMetersetWeights(DCMTree::TreePtr item, float &parameter) const
bool setNumberOfPaintings(unsigned long idx, std::string parameter)
bool getGantryPitchRotationDirection(DCMTree::TreePtr item, std::string &parameter) const
void setRangeModulatorSettingsSequence(DcmDRTRangeModulatorSettingsSequenceInRTIonBeamsModuleInterface seq, unsigned long idx)
bool setTableTopLongitudinalPosition(unsigned long idx, std::string parameter)
bool getTableTopRollAngle(DCMTree::TreePtr item, float &parameter) const
bool getKVP(DCMTree::TreePtr item, std::string &parameter) const
bool getTableTopPitchAngle(DCMTree::TreePtr item, float &parameter) const
bool setNumberOfScanSpotPositions(unsigned long idx, std::string parameter)
bool setNominalBeamEnergy(unsigned long idx, std::string parameter)
DcmDRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsModuleInterface getLateralSpreadingDeviceSettingsSequence(unsigned long idx) const
bool getScanSpotPositionMap(DCMTree::TreePtr item, float &parameter) const
bool setSurfaceEntryPoint(unsigned long idx, std::string parameter)
bool setGantryAngle(unsigned long idx, std::string parameter)
Class to provide access to DRTIonWedgePositionSequence.
Class to provide access to DRTRangeShifterSettingsSequenceInRTIonBeamsModule.
Class to provide access to DRTBeamLimitingDevicePositionSequence.
Class to provide access to DRTIonWedgePositionSequence.
Class to provide access to DRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsModule.
Class to provide access to DRTRangeModulatorSettingsSequenceInRTIonBeamsModule.
Class to provide access to DRTRangeShifterSettingsSequenceInRTIonBeamsModule.
Class to provide access to DRTReferencedDoseReferenceSequenceInRTIonBeamsModule.
Class collecting some DICOM helper functionality explicitly for dcmtk.
MLint64 MLint
A signed ML integer type with at least 64 bits used for index calculations on very large images even ...
Definition: mlTypeDefs.h:578
std::vector< TreePtr > TreePtrVector
a vector of TreePtr - used for sequences
Definition: DCMTree_Lib.h:85
boost::shared_ptr< Tree > TreePtr
shared pointer to a DCMTree::Tree
Definition: DCMTree_Lib.h:70