MeVisLab Toolbox Reference
mlDcmDRTIonControlPointDeliverySequenceInterface.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 __mlDcmDRTIonControlPointDeliverySequenceInterface_H
24 #define __mlDcmDRTIonControlPointDeliverySequenceInterface_H
25 
26 // Local includes
27 #include "mlDcmtkAccessories.h"
28 
29 // Dcmtk includes
30 //#include "mlDcmDRTIonControlPointDeliverySequenceInterface.h" //DRTIonControlPointDeliverySequence
31 #include "mlDcmDRTBeamLimitingDevicePositionSequenceInterface.h" //DRTBeamLimitingDevicePositionSequence
32 #include "mlDcmDRTCorrectedParameterSequenceInterface.h" //DRTCorrectedParameterSequence
33 #include "mlDcmDRTIonWedgePositionSequenceInterface.h" //DRTIonWedgePositionSequence
34 #include "mlDcmDRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsSessionRecordModuleInterface.h" //DRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsSessionRecordModule
35 #include "mlDcmDRTOverrideSequenceInterface.h" //DRTOverrideSequence
36 #include "mlDcmDRTRangeModulatorSettingsSequenceInRTIonBeamsSessionRecordModuleInterface.h" //DRTRangeModulatorSettingsSequenceInRTIonBeamsSessionRecordModule
37 #include "mlDcmDRTRangeShifterSettingsSequenceInRTIonBeamsSessionRecordModuleInterface.h" //DRTRangeShifterSettingsSequenceInRTIonBeamsSessionRecordModule
38 
39 
40 // ML includes
41 #ifndef __mlModuleIncludes_H
42 #include "mlModuleIncludes.h"
43 #endif
44 
45 ML_START_NAMESPACE
46 
47 // ------------------------------------------------------------------
49 // ------------------------------------------------------------------
51 {
52  public:
53 
55  {
56  public:
57 
58  Item() { _dcmItem = DcmtkAccessories::createNewDicomTree(); }
59 
60  Item(DCMTree::TreePtr dcmItem) : _dcmItem(dcmItem) {}
61 
62  Item(const Item &copyDcmItem) : _dcmItem(copyDcmItem.getTreePtr()) {}
63 
64  Item &operator=(const Item &copyDcmItem){ _dcmItem = copyDcmItem.getTreePtr(); return *this; }
65 
66  virtual ~Item() {}
67 
68  DCMTree::TreePtr getTreePtr() const { return _dcmItem; }
69 
70  bool isValid() const { return _dcmItem.get() != nullptr; }
71 
72 
73  // BeamLimitingDeviceAngle (300a,0120) vr=DS, vm=1, type=1C
74  bool getBeamLimitingDeviceAngle(std::string& parameter) const;
75  std::string getBeamLimitingDeviceAngleTag() const { return "(300a,0120)"; }
76  bool setBeamLimitingDeviceAngle(std::string parameter);
77 
78  // BeamLimitingDeviceRotationDirection (300a,0121) vr=CS, vm=1, type=1C
79  bool getBeamLimitingDeviceRotationDirection(std::string& parameter) const;
80  std::string getBeamLimitingDeviceRotationDirectionTag() const { return "(300a,0121)"; }
81  bool setBeamLimitingDeviceRotationDirection(std::string parameter);
82 
83  // DeliveredMeterset (3008,0044) vr=DS, vm=1, type=1
84  bool getDeliveredMeterset(std::string& parameter) const;
85  std::string getDeliveredMetersetTag() const { return "(3008,0044)"; }
86  bool setDeliveredMeterset(std::string parameter);
87 
88  // GantryAngle (300a,011e) vr=DS, vm=1, type=1C
89  bool getGantryAngle(std::string& parameter) const;
90  std::string getGantryAngleTag() const { return "(300a,011e)"; }
91  bool setGantryAngle(std::string parameter);
92 
93  // GantryPitchAngle (300a,014a) vr=FL, vm=1, type=2C
94  bool getGantryPitchAngle(float& parameter) const;
95  std::string getGantryPitchAngleTag() const { return "(300a,014a)"; }
96  bool setGantryPitchAngle(float parameter);
97 
98  // GantryPitchRotationDirection (300a,014c) vr=CS, vm=1, type=2C
99  bool getGantryPitchRotationDirection(std::string& parameter) const;
100  std::string getGantryPitchRotationDirectionTag() const { return "(300a,014c)"; }
101  bool setGantryPitchRotationDirection(std::string parameter);
102 
103  // GantryRotationDirection (300a,011f) vr=CS, vm=1, type=1C
104  bool getGantryRotationDirection(std::string& parameter) const;
105  std::string getGantryRotationDirectionTag() const { return "(300a,011f)"; }
106  bool setGantryRotationDirection(std::string parameter);
107 
108  // HeadFixationAngle (300a,0148) vr=FL, vm=1, type=3
109  bool getHeadFixationAngle(float& parameter) const;
110  std::string getHeadFixationAngleTag() const { return "(300a,0148)"; }
111  bool setHeadFixationAngle(float parameter);
112 
113  // KVP (0018,0060) vr=DS, vm=1, type=1C
114  bool getKVP(std::string& parameter) const;
115  std::string getKVPTag() const { return "(0018,0060)"; }
116  bool setKVP(std::string parameter);
117 
118  // MetersetRateDelivered (3008,0046) vr=FL, vm=1, type=3
119  bool getMetersetRateDelivered(float& parameter) const;
120  std::string getMetersetRateDeliveredTag() const { return "(3008,0046)"; }
121  bool setMetersetRateDelivered(float parameter);
122 
123  // MetersetRateSet (3008,0045) vr=FL, vm=1, type=3
124  bool getMetersetRateSet(float& parameter) const;
125  std::string getMetersetRateSetTag() const { return "(3008,0045)"; }
126  bool setMetersetRateSet(float parameter);
127 
128  // NominalBeamEnergy (300a,0114) vr=DS, vm=1, type=1C
129  bool getNominalBeamEnergy(std::string& parameter) const;
130  std::string getNominalBeamEnergyTag() const { return "(300a,0114)"; }
131  bool setNominalBeamEnergy(std::string parameter);
132 
133  // NumberOfPaintings (300a,039a) vr=IS, vm=1, type=1C
134  bool getNumberOfPaintings(std::string& parameter) const;
135  std::string getNumberOfPaintingsTag() const { return "(300a,039a)"; }
136  bool setNumberOfPaintings(std::string parameter);
137 
138  // NumberOfScanSpotPositions (300a,0392) vr=IS, vm=1, type=1C
139  bool getNumberOfScanSpotPositions(std::string& parameter) const;
140  std::string getNumberOfScanSpotPositionsTag() const { return "(300a,0392)"; }
141  bool setNumberOfScanSpotPositions(std::string parameter);
142 
143  // PatientSupportAngle (300a,0122) vr=DS, vm=1, type=1C
144  bool getPatientSupportAngle(std::string& parameter) const;
145  std::string getPatientSupportAngleTag() const { return "(300a,0122)"; }
146  bool setPatientSupportAngle(std::string parameter);
147 
148  // PatientSupportRotationDirection (300a,0123) vr=CS, vm=1, type=1C
149  bool getPatientSupportRotationDirection(std::string& parameter) const;
150  std::string getPatientSupportRotationDirectionTag() const { return "(300a,0123)"; }
151  bool setPatientSupportRotationDirection(std::string parameter);
152 
153  // ReferencedControlPointIndex (300c,00f0) vr=IS, vm=1, type=1
154  bool getReferencedControlPointIndex(std::string& parameter) const;
155  std::string getReferencedControlPointIndexTag() const { return "(300c,00f0)"; }
156  bool setReferencedControlPointIndex(std::string parameter);
157 
158  // ScanSpotMetersetsDelivered (3008,0047) vr=FL, vm=1-n, type=1C
159  bool getScanSpotMetersetsDelivered(float& parameter) const;
160  std::string getScanSpotMetersetsDeliveredTag() const { return "(3008,0047)"; }
161  bool setScanSpotMetersetsDelivered(float parameter);
162 
163  // ScanSpotPositionMap (300a,0394) vr=FL, vm=1-n, type=1C
164  bool getScanSpotPositionMap(float& parameter) const;
165  std::string getScanSpotPositionMapTag() const { return "(300a,0394)"; }
166  bool setScanSpotPositionMap(float parameter);
167 
168  // ScanSpotTuneID (300a,0390) vr=SH, vm=1, type=1C
169  bool getScanSpotTuneID(std::string& parameter) const;
170  std::string getScanSpotTuneIDTag() const { return "(300a,0390)"; }
171  bool setScanSpotTuneID(std::string parameter);
172 
173  // ScanningSpotSize (300a,0398) vr=FL, vm=2, type=3
174  bool getScanningSpotSize(float& parameter) const;
175  std::string getScanningSpotSizeTag() const { return "(300a,0398)"; }
176  bool setScanningSpotSize(float parameter);
177 
178  // SnoutPosition (300a,030d) vr=FL, vm=1, type=2C
179  bool getSnoutPosition(float& parameter) const;
180  std::string getSnoutPositionTag() const { return "(300a,030d)"; }
181  bool setSnoutPosition(float parameter);
182 
183  // SpecifiedMeterset (3008,0042) vr=DS, vm=1, type=2
184  bool getSpecifiedMeterset(std::string& parameter) const;
185  std::string getSpecifiedMetersetTag() const { return "(3008,0042)"; }
186  bool setSpecifiedMeterset(std::string parameter);
187 
188  // TableTopLateralPosition (300a,012a) vr=DS, vm=1, type=2C
189  bool getTableTopLateralPosition(std::string& parameter) const;
190  std::string getTableTopLateralPositionTag() const { return "(300a,012a)"; }
191  bool setTableTopLateralPosition(std::string parameter);
192 
193  // TableTopLongitudinalPosition (300a,0129) vr=DS, vm=1, type=2C
194  bool getTableTopLongitudinalPosition(std::string& parameter) const;
195  std::string getTableTopLongitudinalPositionTag() const { return "(300a,0129)"; }
196  bool setTableTopLongitudinalPosition(std::string parameter);
197 
198  // TableTopPitchAngle (300a,0140) vr=FL, vm=1, type=2C
199  bool getTableTopPitchAngle(float& parameter) const;
200  std::string getTableTopPitchAngleTag() const { return "(300a,0140)"; }
201  bool setTableTopPitchAngle(float parameter);
202 
203  // TableTopPitchRotationDirection (300a,0142) vr=CS, vm=1, type=2C
204  bool getTableTopPitchRotationDirection(std::string& parameter) const;
205  std::string getTableTopPitchRotationDirectionTag() const { return "(300a,0142)"; }
206  bool setTableTopPitchRotationDirection(std::string parameter);
207 
208  // TableTopRollAngle (300a,0144) vr=FL, vm=1, type=2C
209  bool getTableTopRollAngle(float& parameter) const;
210  std::string getTableTopRollAngleTag() const { return "(300a,0144)"; }
211  bool setTableTopRollAngle(float parameter);
212 
213  // TableTopRollRotationDirection (300a,0146) vr=CS, vm=1, type=2C
214  bool getTableTopRollRotationDirection(std::string& parameter) const;
215  std::string getTableTopRollRotationDirectionTag() const { return "(300a,0146)"; }
216  bool setTableTopRollRotationDirection(std::string parameter);
217 
218  // TableTopVerticalPosition (300a,0128) vr=DS, vm=1, type=2C
219  bool getTableTopVerticalPosition(std::string& parameter) const;
220  std::string getTableTopVerticalPositionTag() const { return "(300a,0128)"; }
221  bool setTableTopVerticalPosition(std::string parameter);
222 
223  // TreatmentControlPointDate (3008,0024) vr=DA, vm=1, type=1
224  bool getTreatmentControlPointDate(std::string& parameter) const;
225  std::string getTreatmentControlPointDateTag() const { return "(3008,0024)"; }
226  bool setTreatmentControlPointDate(std::string parameter);
227 
228  // TreatmentControlPointTime (3008,0025) vr=TM, vm=1, type=1
229  bool getTreatmentControlPointTime(std::string& parameter) const;
230  std::string getTreatmentControlPointTimeTag() const { return "(3008,0025)"; }
231  bool setTreatmentControlPointTime(std::string parameter);
232 
233  // BeamLimitingDevicePositionSequence (300a,011a) vr=SQ, vm=1, type=1C
235  std::string getBeamLimitingDevicePositionSequenceTag() const { return std::string("(300a,011a)"); }
237 
238  // CorrectedParameterSequence (3008,0068) vr=SQ, vm=1, type=3
240  std::string getCorrectedParameterSequenceTag() const { return std::string("(3008,0068)"); }
242 
243  // IonWedgePositionSequence (300a,03ac) vr=SQ, vm=1, type=1C
245  std::string getIonWedgePositionSequenceTag() const { return std::string("(300a,03ac)"); }
247 
248  // LateralSpreadingDeviceSettingsSequence (300a,0370) vr=SQ, vm=1, type=1C
250  std::string getLateralSpreadingDeviceSettingsSequenceTag() const { return std::string("(300a,0370)"); }
252 
253  // OverrideSequence (3008,0060) vr=SQ, vm=1, type=3
255  std::string getOverrideSequenceTag() const { return std::string("(3008,0060)"); }
257 
258  // RangeModulatorSettingsSequence (300a,0380) vr=SQ, vm=1, type=1C
260  std::string getRangeModulatorSettingsSequenceTag() const { return std::string("(300a,0380)"); }
262 
263  // RangeShifterSettingsSequence (300a,0360) vr=SQ, vm=1, type=1C
265  std::string getRangeShifterSettingsSequenceTag() const { return std::string("(300a,0360)"); }
267 
268 
269  private:
270 
271  DCMTree::TreePtr _dcmItem;
272 
273  };
274 
276 
278  DcmDRTIonControlPointDeliverySequenceInterface(std::vector<DcmDRTIonControlPointDeliverySequenceInterface::Item> dcmSequence) : _itemVec(dcmSequence) {}
279 
281  for(size_t i=0; i < treePtrSeq.size(); i++)
282  {
283  _itemVec.push_back(DcmDRTIonControlPointDeliverySequenceInterface::Item(treePtrSeq[i]));
284  }
285  }
286 
289  // BeamLimitingDeviceAngle (300a,0120) vr=DS, vm=1, type=1C
290  bool getBeamLimitingDeviceAngle(unsigned long idx, std::string& parameter) const;
291  bool getBeamLimitingDeviceAngle(DCMTree::TreePtr item, std::string& parameter) const;
292  std::string getBeamLimitingDeviceAngleTag() const { return "(300a,0120)"; }
293  bool setBeamLimitingDeviceAngle(unsigned long idx, std::string parameter);
294 
295  // BeamLimitingDeviceRotationDirection (300a,0121) vr=CS, vm=1, type=1C
296  bool getBeamLimitingDeviceRotationDirection(unsigned long idx, std::string& parameter) const;
297  bool getBeamLimitingDeviceRotationDirection(DCMTree::TreePtr item, std::string& parameter) const;
298  std::string getBeamLimitingDeviceRotationDirectionTag() const { return "(300a,0121)"; }
299  bool setBeamLimitingDeviceRotationDirection(unsigned long idx, std::string parameter);
300 
301  // DeliveredMeterset (3008,0044) vr=DS, vm=1, type=1
302  bool getDeliveredMeterset(unsigned long idx, std::string& parameter) const;
303  bool getDeliveredMeterset(DCMTree::TreePtr item, std::string& parameter) const;
304  std::string getDeliveredMetersetTag() const { return "(3008,0044)"; }
305  bool setDeliveredMeterset(unsigned long idx, std::string parameter);
306 
307  // GantryAngle (300a,011e) vr=DS, vm=1, type=1C
308  bool getGantryAngle(unsigned long idx, std::string& parameter) const;
309  bool getGantryAngle(DCMTree::TreePtr item, std::string& parameter) const;
310  std::string getGantryAngleTag() const { return "(300a,011e)"; }
311  bool setGantryAngle(unsigned long idx, std::string parameter);
312 
313  // GantryPitchAngle (300a,014a) vr=FL, vm=1, type=2C
314  bool getGantryPitchAngle(unsigned long idx, float& parameter) const;
315  bool getGantryPitchAngle(DCMTree::TreePtr item, float& parameter) const;
316  std::string getGantryPitchAngleTag() const { return "(300a,014a)"; }
317  bool setGantryPitchAngle(unsigned long idx, float parameter);
318 
319  // GantryPitchRotationDirection (300a,014c) vr=CS, vm=1, type=2C
320  bool getGantryPitchRotationDirection(unsigned long idx, std::string& parameter) const;
321  bool getGantryPitchRotationDirection(DCMTree::TreePtr item, std::string& parameter) const;
322  std::string getGantryPitchRotationDirectionTag() const { return "(300a,014c)"; }
323  bool setGantryPitchRotationDirection(unsigned long idx, std::string parameter);
324 
325  // GantryRotationDirection (300a,011f) vr=CS, vm=1, type=1C
326  bool getGantryRotationDirection(unsigned long idx, std::string& parameter) const;
327  bool getGantryRotationDirection(DCMTree::TreePtr item, std::string& parameter) const;
328  std::string getGantryRotationDirectionTag() const { return "(300a,011f)"; }
329  bool setGantryRotationDirection(unsigned long idx, std::string parameter);
330 
331  // HeadFixationAngle (300a,0148) vr=FL, vm=1, type=3
332  bool getHeadFixationAngle(unsigned long idx, float& parameter) const;
333  bool getHeadFixationAngle(DCMTree::TreePtr item, float& parameter) const;
334  std::string getHeadFixationAngleTag() const { return "(300a,0148)"; }
335  bool setHeadFixationAngle(unsigned long idx, float parameter);
336 
337  // KVP (0018,0060) vr=DS, vm=1, type=1C
338  bool getKVP(unsigned long idx, std::string& parameter) const;
339  bool getKVP(DCMTree::TreePtr item, std::string& parameter) const;
340  std::string getKVPTag() const { return "(0018,0060)"; }
341  bool setKVP(unsigned long idx, std::string parameter);
342 
343  // MetersetRateDelivered (3008,0046) vr=FL, vm=1, type=3
344  bool getMetersetRateDelivered(unsigned long idx, float& parameter) const;
345  bool getMetersetRateDelivered(DCMTree::TreePtr item, float& parameter) const;
346  std::string getMetersetRateDeliveredTag() const { return "(3008,0046)"; }
347  bool setMetersetRateDelivered(unsigned long idx, float parameter);
348 
349  // MetersetRateSet (3008,0045) vr=FL, vm=1, type=3
350  bool getMetersetRateSet(unsigned long idx, float& parameter) const;
351  bool getMetersetRateSet(DCMTree::TreePtr item, float& parameter) const;
352  std::string getMetersetRateSetTag() const { return "(3008,0045)"; }
353  bool setMetersetRateSet(unsigned long idx, float parameter);
354 
355  // NominalBeamEnergy (300a,0114) vr=DS, vm=1, type=1C
356  bool getNominalBeamEnergy(unsigned long idx, std::string& parameter) const;
357  bool getNominalBeamEnergy(DCMTree::TreePtr item, std::string& parameter) const;
358  std::string getNominalBeamEnergyTag() const { return "(300a,0114)"; }
359  bool setNominalBeamEnergy(unsigned long idx, std::string parameter);
360 
361  // NumberOfPaintings (300a,039a) vr=IS, vm=1, type=1C
362  bool getNumberOfPaintings(unsigned long idx, std::string& parameter) const;
363  bool getNumberOfPaintings(DCMTree::TreePtr item, std::string& parameter) const;
364  std::string getNumberOfPaintingsTag() const { return "(300a,039a)"; }
365  bool setNumberOfPaintings(unsigned long idx, std::string parameter);
366 
367  // NumberOfScanSpotPositions (300a,0392) vr=IS, vm=1, type=1C
368  bool getNumberOfScanSpotPositions(unsigned long idx, std::string& parameter) const;
369  bool getNumberOfScanSpotPositions(DCMTree::TreePtr item, std::string& parameter) const;
370  std::string getNumberOfScanSpotPositionsTag() const { return "(300a,0392)"; }
371  bool setNumberOfScanSpotPositions(unsigned long idx, std::string parameter);
372 
373  // PatientSupportAngle (300a,0122) vr=DS, vm=1, type=1C
374  bool getPatientSupportAngle(unsigned long idx, std::string& parameter) const;
375  bool getPatientSupportAngle(DCMTree::TreePtr item, std::string& parameter) const;
376  std::string getPatientSupportAngleTag() const { return "(300a,0122)"; }
377  bool setPatientSupportAngle(unsigned long idx, std::string parameter);
378 
379  // PatientSupportRotationDirection (300a,0123) vr=CS, vm=1, type=1C
380  bool getPatientSupportRotationDirection(unsigned long idx, std::string& parameter) const;
381  bool getPatientSupportRotationDirection(DCMTree::TreePtr item, std::string& parameter) const;
382  std::string getPatientSupportRotationDirectionTag() const { return "(300a,0123)"; }
383  bool setPatientSupportRotationDirection(unsigned long idx, std::string parameter);
384 
385  // ReferencedControlPointIndex (300c,00f0) vr=IS, vm=1, type=1
386  bool getReferencedControlPointIndex(unsigned long idx, std::string& parameter) const;
387  bool getReferencedControlPointIndex(DCMTree::TreePtr item, std::string& parameter) const;
388  std::string getReferencedControlPointIndexTag() const { return "(300c,00f0)"; }
389  bool setReferencedControlPointIndex(unsigned long idx, std::string parameter);
390 
391  // ScanSpotMetersetsDelivered (3008,0047) vr=FL, vm=1-n, type=1C
392  bool getScanSpotMetersetsDelivered(unsigned long idx, float& parameter) const;
393  bool getScanSpotMetersetsDelivered(DCMTree::TreePtr item, float& parameter) const;
394  std::string getScanSpotMetersetsDeliveredTag() const { return "(3008,0047)"; }
395  bool setScanSpotMetersetsDelivered(unsigned long idx, float parameter);
396 
397  // ScanSpotPositionMap (300a,0394) vr=FL, vm=1-n, type=1C
398  bool getScanSpotPositionMap(unsigned long idx, float& parameter) const;
399  bool getScanSpotPositionMap(DCMTree::TreePtr item, float& parameter) const;
400  std::string getScanSpotPositionMapTag() const { return "(300a,0394)"; }
401  bool setScanSpotPositionMap(unsigned long idx, float parameter);
402 
403  // ScanSpotTuneID (300a,0390) vr=SH, vm=1, type=1C
404  bool getScanSpotTuneID(unsigned long idx, std::string& parameter) const;
405  bool getScanSpotTuneID(DCMTree::TreePtr item, std::string& parameter) const;
406  std::string getScanSpotTuneIDTag() const { return "(300a,0390)"; }
407  bool setScanSpotTuneID(unsigned long idx, std::string parameter);
408 
409  // ScanningSpotSize (300a,0398) vr=FL, vm=2, type=3
410  bool getScanningSpotSize(unsigned long idx, float& parameter) const;
411  bool getScanningSpotSize(DCMTree::TreePtr item, float& parameter) const;
412  std::string getScanningSpotSizeTag() const { return "(300a,0398)"; }
413  bool setScanningSpotSize(unsigned long idx, float parameter);
414 
415  // SnoutPosition (300a,030d) vr=FL, vm=1, type=2C
416  bool getSnoutPosition(unsigned long idx, float& parameter) const;
417  bool getSnoutPosition(DCMTree::TreePtr item, float& parameter) const;
418  std::string getSnoutPositionTag() const { return "(300a,030d)"; }
419  bool setSnoutPosition(unsigned long idx, float parameter);
420 
421  // SpecifiedMeterset (3008,0042) vr=DS, vm=1, type=2
422  bool getSpecifiedMeterset(unsigned long idx, std::string& parameter) const;
423  bool getSpecifiedMeterset(DCMTree::TreePtr item, std::string& parameter) const;
424  std::string getSpecifiedMetersetTag() const { return "(3008,0042)"; }
425  bool setSpecifiedMeterset(unsigned long idx, std::string parameter);
426 
427  // TableTopLateralPosition (300a,012a) vr=DS, vm=1, type=2C
428  bool getTableTopLateralPosition(unsigned long idx, std::string& parameter) const;
429  bool getTableTopLateralPosition(DCMTree::TreePtr item, std::string& parameter) const;
430  std::string getTableTopLateralPositionTag() const { return "(300a,012a)"; }
431  bool setTableTopLateralPosition(unsigned long idx, std::string parameter);
432 
433  // TableTopLongitudinalPosition (300a,0129) vr=DS, vm=1, type=2C
434  bool getTableTopLongitudinalPosition(unsigned long idx, std::string& parameter) const;
435  bool getTableTopLongitudinalPosition(DCMTree::TreePtr item, std::string& parameter) const;
436  std::string getTableTopLongitudinalPositionTag() const { return "(300a,0129)"; }
437  bool setTableTopLongitudinalPosition(unsigned long idx, std::string parameter);
438 
439  // TableTopPitchAngle (300a,0140) vr=FL, vm=1, type=2C
440  bool getTableTopPitchAngle(unsigned long idx, float& parameter) const;
441  bool getTableTopPitchAngle(DCMTree::TreePtr item, float& parameter) const;
442  std::string getTableTopPitchAngleTag() const { return "(300a,0140)"; }
443  bool setTableTopPitchAngle(unsigned long idx, float parameter);
444 
445  // TableTopPitchRotationDirection (300a,0142) vr=CS, vm=1, type=2C
446  bool getTableTopPitchRotationDirection(unsigned long idx, std::string& parameter) const;
447  bool getTableTopPitchRotationDirection(DCMTree::TreePtr item, std::string& parameter) const;
448  std::string getTableTopPitchRotationDirectionTag() const { return "(300a,0142)"; }
449  bool setTableTopPitchRotationDirection(unsigned long idx, std::string parameter);
450 
451  // TableTopRollAngle (300a,0144) vr=FL, vm=1, type=2C
452  bool getTableTopRollAngle(unsigned long idx, float& parameter) const;
453  bool getTableTopRollAngle(DCMTree::TreePtr item, float& parameter) const;
454  std::string getTableTopRollAngleTag() const { return "(300a,0144)"; }
455  bool setTableTopRollAngle(unsigned long idx, float parameter);
456 
457  // TableTopRollRotationDirection (300a,0146) vr=CS, vm=1, type=2C
458  bool getTableTopRollRotationDirection(unsigned long idx, std::string& parameter) const;
459  bool getTableTopRollRotationDirection(DCMTree::TreePtr item, std::string& parameter) const;
460  std::string getTableTopRollRotationDirectionTag() const { return "(300a,0146)"; }
461  bool setTableTopRollRotationDirection(unsigned long idx, std::string parameter);
462 
463  // TableTopVerticalPosition (300a,0128) vr=DS, vm=1, type=2C
464  bool getTableTopVerticalPosition(unsigned long idx, std::string& parameter) const;
465  bool getTableTopVerticalPosition(DCMTree::TreePtr item, std::string& parameter) const;
466  std::string getTableTopVerticalPositionTag() const { return "(300a,0128)"; }
467  bool setTableTopVerticalPosition(unsigned long idx, std::string parameter);
468 
469  // TreatmentControlPointDate (3008,0024) vr=DA, vm=1, type=1
470  bool getTreatmentControlPointDate(unsigned long idx, std::string& parameter) const;
471  bool getTreatmentControlPointDate(DCMTree::TreePtr item, std::string& parameter) const;
472  std::string getTreatmentControlPointDateTag() const { return "(3008,0024)"; }
473  bool setTreatmentControlPointDate(unsigned long idx, std::string parameter);
474 
475  // TreatmentControlPointTime (3008,0025) vr=TM, vm=1, type=1
476  bool getTreatmentControlPointTime(unsigned long idx, std::string& parameter) const;
477  bool getTreatmentControlPointTime(DCMTree::TreePtr item, std::string& parameter) const;
478  std::string getTreatmentControlPointTimeTag() const { return "(3008,0025)"; }
479  bool setTreatmentControlPointTime(unsigned long idx, std::string parameter);
480 
481  // BeamLimitingDevicePositionSequence (300a,011a) vr=SQ, vm=1, type=1C
483  std::string getBeamLimitingDevicePositionSequenceTag() const { return std::string("(300a,011a)"); }
485 
486  // CorrectedParameterSequence (3008,0068) vr=SQ, vm=1, type=3
488  std::string getCorrectedParameterSequenceTag() const { return std::string("(3008,0068)"); }
490 
491  // IonWedgePositionSequence (300a,03ac) vr=SQ, vm=1, type=1C
493  std::string getIonWedgePositionSequenceTag() const { return std::string("(300a,03ac)"); }
495 
496  // LateralSpreadingDeviceSettingsSequence (300a,0370) vr=SQ, vm=1, type=1C
498  std::string getLateralSpreadingDeviceSettingsSequenceTag() const { return std::string("(300a,0370)"); }
500 
501  // OverrideSequence (3008,0060) vr=SQ, vm=1, type=3
503  std::string getOverrideSequenceTag() const { return std::string("(3008,0060)"); }
505 
506  // RangeModulatorSettingsSequence (300a,0380) vr=SQ, vm=1, type=1C
508  std::string getRangeModulatorSettingsSequenceTag() const { return std::string("(300a,0380)"); }
510 
511  // RangeShifterSettingsSequence (300a,0360) vr=SQ, vm=1, type=1C
513  std::string getRangeShifterSettingsSequenceTag() const { return std::string("(300a,0360)"); }
515 
516 
519  void setSequence(std::vector<DcmDRTIonControlPointDeliverySequenceInterface::Item> dcmSequence) {
520  _itemVec = dcmSequence;
521  }
522 
525  std::vector<DcmDRTIonControlPointDeliverySequenceInterface::Item> getSequence() const {
526  return _itemVec;
527  }
528 
531  bool hasSequence() const {
532  return (_itemVec.size() != 0);
533  }
534 
538  return static_cast<MLint>(_itemVec.size());
539  }
540 
544  if (_itemVec.size() > idx) {
545  return _itemVec[idx];
546  }
548  }
549 
554  return _itemVec[_itemVec.size()-1];
555  }
556 
558  _itemVec.push_back(newItem);
559  }
560 
563  bool insertItem(const size_t idx) {
564  if (_itemVec.size() > idx) {
565  std::vector<DcmDRTIonControlPointDeliverySequenceInterface::Item>::iterator it = _itemVec.begin();
566  std::advance(it, idx);
568  return true;
569  }
570  return false;
571  }
572 
575  bool removeItem(const size_t idx) {
576  if ( _itemVec.size() > idx ) {
577  std::vector<DcmDRTIonControlPointDeliverySequenceInterface::Item>::iterator it = _itemVec.begin();
578  std::advance(it, idx);
579  _itemVec.erase(it);
580  return true;
581  }
582  return false;
583  }
584 
585  protected:
587  std::vector<DcmDRTIonControlPointDeliverySequenceInterface::Item> _itemVec;
588 };
589 
590 ML_END_NAMESPACE
591 
592 #endif // __mlDcmDRTIonControlPointDeliverySequenceInterface_H
593 
594 /* MeVis-Hidden-Components-Start */
595 /* MeVis-Hidden-Components-End */
#define MLDCMTKACCESSORIES_EXPORT
Class to provide access to DRTBeamLimitingDevicePositionSequence.
Class to provide access to DRTCorrectedParameterSequence.
bool getDeliveredMeterset(std::string &parameter) const
bool setBeamLimitingDeviceRotationDirection(std::string parameter)
void setRangeModulatorSettingsSequence(DcmDRTRangeModulatorSettingsSequenceInRTIonBeamsSessionRecordModuleInterface seq)
void setIonWedgePositionSequence(DcmDRTIonWedgePositionSequenceInterface seq)
bool getTableTopRollRotationDirection(std::string &parameter) const
DcmDRTRangeModulatorSettingsSequenceInRTIonBeamsSessionRecordModuleInterface getRangeModulatorSettingsSequence() const
bool getNumberOfScanSpotPositions(std::string &parameter) const
bool getTreatmentControlPointDate(std::string &parameter) const
void setOverrideSequence(DcmDRTOverrideSequenceInterface seq)
DcmDRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsSessionRecordModuleInterface getLateralSpreadingDeviceSettingsSequence() const
bool setPatientSupportRotationDirection(std::string parameter)
bool getPatientSupportRotationDirection(std::string &parameter) const
bool getBeamLimitingDeviceRotationDirection(std::string &parameter) const
DcmDRTOverrideSequenceInterface getOverrideSequence() const
DcmDRTIonWedgePositionSequenceInterface getIonWedgePositionSequence() const
bool getTableTopPitchRotationDirection(std::string &parameter) const
void setLateralSpreadingDeviceSettingsSequence(DcmDRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsSessionRecordModuleInterface seq)
DcmDRTCorrectedParameterSequenceInterface getCorrectedParameterSequence() const
bool getNominalBeamEnergy(std::string &parameter) const
void setRangeShifterSettingsSequence(DcmDRTRangeShifterSettingsSequenceInRTIonBeamsSessionRecordModuleInterface seq)
bool setTableTopRollRotationDirection(std::string parameter)
bool getReferencedControlPointIndex(std::string &parameter) const
bool getScanSpotMetersetsDelivered(float &parameter) const
bool getGantryRotationDirection(std::string &parameter) const
bool getTreatmentControlPointTime(std::string &parameter) const
void setBeamLimitingDevicePositionSequence(DcmDRTBeamLimitingDevicePositionSequenceInterface seq)
bool getTableTopLongitudinalPosition(std::string &parameter) const
bool getTableTopVerticalPosition(std::string &parameter) const
void setCorrectedParameterSequence(DcmDRTCorrectedParameterSequenceInterface seq)
DcmDRTBeamLimitingDevicePositionSequenceInterface getBeamLimitingDevicePositionSequence() const
bool getGantryPitchRotationDirection(std::string &parameter) const
bool getGantryAngle(std::string &parameter) const
bool setTableTopPitchRotationDirection(std::string parameter)
bool getNumberOfPaintings(std::string &parameter) const
bool getTableTopLateralPosition(std::string &parameter) const
bool getScanSpotTuneID(std::string &parameter) const
DcmDRTRangeShifterSettingsSequenceInRTIonBeamsSessionRecordModuleInterface getRangeShifterSettingsSequence() const
bool getSpecifiedMeterset(std::string &parameter) const
bool getBeamLimitingDeviceAngle(std::string &parameter) const
bool getPatientSupportAngle(std::string &parameter) const
Class to provide access to DRTIonControlPointDeliverySequence.
bool insertItem(const size_t idx)
Insert an item at the indicated position.
bool getTreatmentControlPointTime(DCMTree::TreePtr item, std::string &parameter) const
bool getMetersetRateSet(unsigned long idx, float &parameter) const
void setOverrideSequence(DcmDRTOverrideSequenceInterface seq, unsigned long idx)
bool getGantryRotationDirection(DCMTree::TreePtr item, std::string &parameter) const
bool getNumberOfPaintings(DCMTree::TreePtr item, std::string &parameter) const
bool getScanSpotPositionMap(unsigned long idx, float &parameter) const
bool setScanningSpotSize(unsigned long idx, float parameter)
void setLateralSpreadingDeviceSettingsSequence(DcmDRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsSessionRecordModuleInterface seq, unsigned long idx)
bool getMetersetRateDelivered(DCMTree::TreePtr item, float &parameter) const
bool setTableTopLateralPosition(unsigned long idx, std::string parameter)
bool getScanSpotMetersetsDelivered(DCMTree::TreePtr item, float &parameter) const
bool setTableTopRollRotationDirection(unsigned long idx, std::string parameter)
bool getTableTopRollRotationDirection(DCMTree::TreePtr item, std::string &parameter) const
std::vector< DcmDRTIonControlPointDeliverySequenceInterface::Item > getSequence() const
Return the DRTIonControlPointDeliverySequence this interface class provides access to.
bool getGantryPitchRotationDirection(DCMTree::TreePtr item, std::string &parameter) const
DcmDRTRangeModulatorSettingsSequenceInRTIonBeamsSessionRecordModuleInterface getRangeModulatorSettingsSequence(unsigned long idx) const
bool setPatientSupportAngle(unsigned long idx, std::string parameter)
bool getNominalBeamEnergy(unsigned long idx, std::string &parameter) const
bool getSpecifiedMeterset(DCMTree::TreePtr item, std::string &parameter) const
void addItem(DcmDRTIonControlPointDeliverySequenceInterface::Item newItem)
bool setTableTopLongitudinalPosition(unsigned long idx, std::string parameter)
bool getGantryRotationDirection(unsigned long idx, std::string &parameter) const
bool getTableTopLongitudinalPosition(unsigned long idx, std::string &parameter) const
bool getTableTopRollRotationDirection(unsigned long idx, std::string &parameter) const
bool setMetersetRateSet(unsigned long idx, float parameter)
bool getScanSpotMetersetsDelivered(unsigned long idx, float &parameter) const
DcmDRTCorrectedParameterSequenceInterface getCorrectedParameterSequence(unsigned long idx) const
bool setGantryAngle(unsigned long idx, std::string parameter)
bool getGantryPitchRotationDirection(unsigned long idx, std::string &parameter) const
bool getBeamLimitingDeviceRotationDirection(unsigned long idx, std::string &parameter) const
bool setBeamLimitingDeviceRotationDirection(unsigned long idx, std::string parameter)
bool getTableTopPitchRotationDirection(DCMTree::TreePtr item, std::string &parameter) const
bool getSnoutPosition(DCMTree::TreePtr item, float &parameter) const
bool getTableTopPitchAngle(unsigned long idx, float &parameter) const
bool getKVP(DCMTree::TreePtr item, std::string &parameter) const
bool getHeadFixationAngle(unsigned long idx, float &parameter) const
bool getPatientSupportRotationDirection(DCMTree::TreePtr item, std::string &parameter) const
bool setNumberOfPaintings(unsigned long idx, std::string parameter)
bool setTableTopRollAngle(unsigned long idx, float parameter)
DcmDRTIonControlPointDeliverySequenceInterface::Item & addItem()
Adds a new item to the sequence.
bool getDeliveredMeterset(unsigned long idx, std::string &parameter) const
bool setTreatmentControlPointTime(unsigned long idx, std::string parameter)
DcmDRTIonControlPointDeliverySequenceInterface(std::vector< DcmDRTIonControlPointDeliverySequenceInterface::Item > dcmSequence)
Default Constructor.
bool setGantryRotationDirection(unsigned long idx, std::string parameter)
void setRangeModulatorSettingsSequence(DcmDRTRangeModulatorSettingsSequenceInRTIonBeamsSessionRecordModuleInterface seq, unsigned long idx)
bool setKVP(unsigned long idx, std::string parameter)
bool getBeamLimitingDeviceRotationDirection(DCMTree::TreePtr item, std::string &parameter) const
bool getNumberOfScanSpotPositions(DCMTree::TreePtr item, std::string &parameter) const
bool setHeadFixationAngle(unsigned long idx, float parameter)
bool setGantryPitchAngle(unsigned long idx, float parameter)
bool getSnoutPosition(unsigned long idx, float &parameter) const
bool getTableTopPitchAngle(DCMTree::TreePtr item, float &parameter) const
bool getPatientSupportRotationDirection(unsigned long idx, std::string &parameter) const
bool getNominalBeamEnergy(DCMTree::TreePtr item, std::string &parameter) const
DcmDRTIonControlPointDeliverySequenceInterface::Item getItem(const size_t idx) const
Gets the item at the indicated position.
bool setBeamLimitingDeviceAngle(unsigned long idx, std::string parameter)
bool getBeamLimitingDeviceAngle(unsigned long idx, std::string &parameter) const
bool getTableTopRollAngle(DCMTree::TreePtr item, float &parameter) const
bool getScanSpotPositionMap(DCMTree::TreePtr item, float &parameter) const
DcmDRTOverrideSequenceInterface getOverrideSequence(unsigned long idx) const
bool getTreatmentControlPointDate(DCMTree::TreePtr item, std::string &parameter) const
bool getTableTopVerticalPosition(DCMTree::TreePtr item, std::string &parameter) const
bool getReferencedControlPointIndex(DCMTree::TreePtr item, std::string &parameter) const
bool getPatientSupportAngle(unsigned long idx, std::string &parameter) const
bool setTreatmentControlPointDate(unsigned long idx, std::string parameter)
bool getTableTopRollAngle(unsigned long idx, float &parameter) const
bool getTableTopPitchRotationDirection(unsigned long idx, std::string &parameter) const
bool getGantryAngle(DCMTree::TreePtr item, std::string &parameter) const
DcmDRTIonWedgePositionSequenceInterface getIonWedgePositionSequence(unsigned long idx) const
void setIonWedgePositionSequence(DcmDRTIonWedgePositionSequenceInterface seq, unsigned long idx)
bool setPatientSupportRotationDirection(unsigned long idx, std::string parameter)
bool getNumberOfScanSpotPositions(unsigned long idx, std::string &parameter) const
bool setScanSpotTuneID(unsigned long idx, std::string parameter)
bool getScanSpotTuneID(unsigned long idx, std::string &parameter) const
bool getMetersetRateSet(DCMTree::TreePtr item, float &parameter) const
bool setTableTopVerticalPosition(unsigned long idx, std::string parameter)
bool getScanningSpotSize(unsigned long idx, float &parameter) const
bool hasSequence() const
Check if the DRTIonControlPointDeliverySequence is set.
bool getKVP(unsigned long idx, std::string &parameter) const
bool setNominalBeamEnergy(unsigned long idx, std::string parameter)
bool getTreatmentControlPointDate(unsigned long idx, std::string &parameter) const
bool setTableTopPitchAngle(unsigned long idx, float parameter)
bool setScanSpotPositionMap(unsigned long idx, float parameter)
void setCorrectedParameterSequence(DcmDRTCorrectedParameterSequenceInterface seq, unsigned long idx)
bool setDeliveredMeterset(unsigned long idx, std::string parameter)
bool getNumberOfPaintings(unsigned long idx, std::string &parameter) const
bool getScanSpotTuneID(DCMTree::TreePtr item, std::string &parameter) const
DcmDRTRangeShifterSettingsSequenceInRTIonBeamsSessionRecordModuleInterface getRangeShifterSettingsSequence(unsigned long idx) const
bool getGantryPitchAngle(unsigned long idx, float &parameter) const
DcmDRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsSessionRecordModuleInterface getLateralSpreadingDeviceSettingsSequence(unsigned long idx) const
void setSequence(std::vector< DcmDRTIonControlPointDeliverySequenceInterface::Item > dcmSequence)
Set the DRTIonControlPointDeliverySequence this interface class provides access to.
bool setMetersetRateDelivered(unsigned long idx, float parameter)
bool getBeamLimitingDeviceAngle(DCMTree::TreePtr item, std::string &parameter) const
bool setSpecifiedMeterset(unsigned long idx, std::string parameter)
std::vector< DcmDRTIonControlPointDeliverySequenceInterface::Item > _itemVec
Reference to the wrapped DICOM tree pointer vector.
bool getTableTopLateralPosition(unsigned long idx, std::string &parameter) const
DcmDRTBeamLimitingDevicePositionSequenceInterface getBeamLimitingDevicePositionSequence(unsigned long idx) const
bool getGantryAngle(unsigned long idx, std::string &parameter) const
bool getTreatmentControlPointTime(unsigned long idx, std::string &parameter) const
bool getPatientSupportAngle(DCMTree::TreePtr item, std::string &parameter) const
void setRangeShifterSettingsSequence(DcmDRTRangeShifterSettingsSequenceInRTIonBeamsSessionRecordModuleInterface seq, unsigned long idx)
bool setTableTopPitchRotationDirection(unsigned long idx, std::string parameter)
bool getSpecifiedMeterset(unsigned long idx, std::string &parameter) const
bool setReferencedControlPointIndex(unsigned long idx, std::string parameter)
bool getTableTopLongitudinalPosition(DCMTree::TreePtr item, std::string &parameter) const
bool getHeadFixationAngle(DCMTree::TreePtr item, float &parameter) const
MLint getNumberOfItems() const
Return number of items the internal sequence consists of.
bool setScanSpotMetersetsDelivered(unsigned long idx, float parameter)
bool getScanningSpotSize(DCMTree::TreePtr item, float &parameter) const
bool getMetersetRateDelivered(unsigned long idx, float &parameter) const
bool getTableTopLateralPosition(DCMTree::TreePtr item, std::string &parameter) const
bool getGantryPitchAngle(DCMTree::TreePtr item, float &parameter) const
bool setGantryPitchRotationDirection(unsigned long idx, std::string parameter)
bool removeItem(const size_t idx)
Removes the indicated item from the sequence.
bool setSnoutPosition(unsigned long idx, float parameter)
bool getReferencedControlPointIndex(unsigned long idx, std::string &parameter) const
void setBeamLimitingDevicePositionSequence(DcmDRTBeamLimitingDevicePositionSequenceInterface seq, unsigned long idx)
bool getDeliveredMeterset(DCMTree::TreePtr item, std::string &parameter) const
bool getTableTopVerticalPosition(unsigned long idx, std::string &parameter) const
bool setNumberOfScanSpotPositions(unsigned long idx, std::string parameter)
Class to provide access to DRTIonWedgePositionSequence.
Class to provide access to DRTOverrideSequence.
Class to provide access to DRTBeamLimitingDevicePositionSequence.
Class to provide access to DRTCorrectedParameterSequence.
Class to provide access to DRTIonWedgePositionSequence.
Class to provide access to DRTLateralSpreadingDeviceSettingsSequenceInRTIonBeamsSessionRecordModule.
Class to provide access to DRTOverrideSequence.
Class to provide access to DRTRangeModulatorSettingsSequenceInRTIonBeamsSessionRecordModule.
Class to provide access to DRTRangeShifterSettingsSequenceInRTIonBeamsSessionRecordModule.
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