]> Creatis software - gdcm.git/commitdiff
* src/gdcm.h, src/gdcmHeader.cxx: added GetPubTagNames() resp.
authorfrog <frog>
Mon, 16 Dec 2002 14:37:07 +0000 (14:37 +0000)
committerfrog <frog>
Mon, 16 Dec 2002 14:37:07 +0000 (14:37 +0000)
        GetPubTagNamesByCategory() to gdcmHeader that return a list of the
        entries within the associated public Dicom dictionary resp. the same
        information but sorted by the fourth field (PAT, IMG, DIR) of the
        dictionary.
        - Dicts/dicomV3.dic Entries which had and unspecified fourth field
          are now in the "???" group.
        - python/gdcm.i changed accordingly,
        - python/demo/printGroupedPublicDict.py added, that gives an example
          of the above new functionalities in Python.  --- Frog

ChangeLog
Dicts/dicomV3.dic
src/gdcm.h
src/gdcmHeader.cxx

index c81c2ee0506f60c7f88c3038721c80748eadf9a5..6fc41f7e40e8a7b6cccfd9e1c3a88e4d0b5839bd 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2002-12-16 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+      * src/gdcm.h, src/gdcmHeader.cxx: added GetPubTagNames() resp.
+        GetPubTagNamesByCategory() to gdcmHeader that return a list of the
+        entries within the associated public Dicom dictionary resp. the same
+        information but sorted by the fourth field (PAT, IMG, DIR) of the
+        dictionary.
+        - Dicts/dicomV3.dic Entries which had and unspecified fourth field
+          are now in the "???" group.
+        - python/gdcm.i changed accordingly,
+        - python/demo/printGroupedPublicDict.py added, that gives an example
+          of the above new functionalities in Python.
+
 2002-12-11 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
       * src/gdcm.h, gdcmHeader.cxx:
         - historic references to glib's g_malloc and g_free (#defined)
 2002-12-11 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
       * src/gdcm.h, gdcmHeader.cxx:
         - historic references to glib's g_malloc and g_free (#defined)
index c0ddd946c5644abd107615b76b2c92ae5c7f61cb..0615c7ec5d04d732331d554f077521c60cad527a 100644 (file)
 3006 00c4 CS SSET Frame of Reference Transformation Type
 3006 00c6 DS SSET Frame of Reference Transformation Matrix
 3006 00c8 LO SSET Frame of Reference Transformation Comment
 3006 00c4 CS SSET Frame of Reference Transformation Type
 3006 00c6 DS SSET Frame of Reference Transformation Matrix
 3006 00c8 LO SSET Frame of Reference Transformation Comment
-300a 0000 UL  Group Length
-300a 0002 SH  RT Plan Label
-300a 0003 LO  RT Plan Name
-300a 0004 ST  RT Plan Description
-300a 0006 DA  RT Plan Date
-300a 0007 TM  RT Plan Time
-300a 0009 LO  RT Treatment Protocols
-300a 000a CS  Treatment Intent
-300a 000b LO  Treatment Sites
-300a 000c CS  RT Plan Geometry
-300a 000e ST  Prescription Description
-300a 0010 SQ  Dose Reference Sequence
-300a 0012 IS  Dose Reference Number
-300a 0014 CS  Dose Reference Structure Type
-300a 0016 LO  Dose Reference Description
-300a 0018 DS  Dose Reference Point Coordinates
-300a 001a DS  Nominal Prior Dose
-300a 0020 CS  Dose Reference Type
-300a 0021 DS  Constraint Weight
-300a 0022 DS  Delivery Warning Dose
-300a 0023 DS  Delivery Maximum Dose
-300a 0025 DS  Target Minimum Dose
-300a 0026 DS  Target Prescription Dose
-300a 0027 DS  Target Maximum Dose
-300a 0028 DS  Target Underdose Volume Fraction
-300a 002a DS  Organ at Risk Full-volume Dose
-300a 002b DS  Organ at Risk Limit Dose
-300a 002c DS  Organ at Risk Maximum Dose
-300a 002d DS  Organ at Risk Overdose Volume Fraction
-300a 0040 SQ  Tolerance Table Sequence
-300a 0042 IS  Tolerance Table Number
-300a 0043 SH  Tolerance Table Label
-300a 0044 DS  Gantry Angle Tolerance
-300a 0046 DS  Beam Limiting Device Angle Tolerance
-300a 0048 SQ  Beam Limiting Device Tolerance Sequence
-300a 004a DS  Beam Limiting Device Position Tolerance
-300a 004c DS  Patient Support Angle Tolerance
-300a 004e DS  Table Top Eccentric Angle Tolerance
-300a 0051 DS  Table Top Vertical Position Tolerance
-300a 0052 DS  Table Top Longitudinal Position Tolerance
-300a 0053 DS  Table Top Lateral Position Tolerance
-300a 0055 CS  RT Plan Relationship
-300a 0070 SQ  Fraction Group Sequence
-300a 0071 IS  Fraction Group Number
-300a 0078 IS  Number of Fractions Planned
-300a 0079 IS  Number of Fractions Per Day
-300a 007a IS  Repeat Fraction Cycle Length
-300a 007b LT  Fraction Pattern
-300a 0080 IS  Number of Beams
-300a 0082 DS  Beam Dose Specification Point
-300a 0084 DS  Beam Dose
-300a 0086 DS  Beam Meterset
-300a 00a0 IS  Number of Brachy Application Setups
-300a 00a2 DS  Brachy App Setup Dose Specification Point
-300a 00a4 DS  Brachy Application Setup Dose
-300a 00b0 SQ  Beam Sequence
-300a 00b2 SH  Treatment Machine Name
-300a 00b3 CS  Primary Dosimeter Unit
-300a 00b4 DS  Source-Axis Distance
-300a 00b6 SQ  Beam Limiting Device Sequence
-300a 00b8 CS  RT Beam Limiting Device Type
-300a 00ba DS  Source to Beam Limiting Device Distance
-300a 00bc IS  Number of Leaf/Jaw Pairs
-300a 00be DS  Leaf Position Boundaries
-300a 00c0 IS  Beam Number
-300a 00c2 LO  Beam Name
-300a 00c3 ST  Beam Description
-300a 00c4 CS  Beam Type
-300a 00c6 CS  Radiation Type
-300a 00c8 IS  Reference Image Number
-300a 00ca SQ  Planned Verification Image Sequence
-300a 00cc LO  Imaging Device-Specific Acq Parameters
-300a 00ce CS  Treatment Delivery Type
-300a 00d0 IS  Number of Wedges
-300a 00d1 SQ  Wedge Sequence
-300a 00d2 IS  Wedge Number
-300a 00d3 CS  Wedge Type
-300a 00d4 SH  Wedge ID
-300a 00d5 IS  Wedge Angle
-300a 00d6 DS  Wedge Factor
-300a 00d8 DS  Wedge Orientation
-300a 00da DS  Source to Wedge Tray Distance
-300a 00e0 IS  Number of Compensators
-300a 00e1 SH  Material ID
-300a 00e2 DS  Total Compensator Tray Factor
-300a 00e3 SQ  Compensator Sequence
-300a 00e4 IS  Compensator Number
-300a 00e5 SH  Compensator ID
-300a 00e6 DS  Source to Compensator Tray Distance
-300a 00e7 IS  Compensator Rows
-300a 00e8 IS  Compensator Columns
-300a 00e9 DS  Compensator Pixel Spacing
-300a 00ea DS  Compensator Position
-300a 00eb DS  Compensator Transmission Data
-300a 00ec DS  Compensator Thickness Data
-300a 00ed IS  Number of Boli
-300a 00f0 IS  Number of Blocks
-300a 00f2 DS  Total Block Tray Factor
-300a 00f4 SQ  Block Sequence
-300a 00f5 SH  Block Tray ID
-300a 00f6 DS  Source to Block Tray Distance
-300a 00f8 CS  Block Type
-300a 00fa CS  Block Divergence
-300a 00fc IS  Block Number
-300a 00fe LO  Block Name
-300a 0100 DS  Block Thickness
-300a 0102 DS  Block Transmission
-300a 0104 IS  Block Number of Points
-300a 0106 DS  Block Data
-300a 0107 SQ  Applicator Sequence
-300a 0108 SH  Applicator ID
-300a 0109 CS  Applicator Type
-300a 010a LO  Applicator Description
-300a 010c DS  Cumulative Dose Reference COefficient
-300a 010e DS  Final Cumulative Meterset Weight
-300a 0110 IS  Number of Control Points
-300a 0111 SQ  Control Point Sequence
-300a 0112 IS  Control Point Index
-300a 0114 DS  Nominal Beam Energy
-300a 0115 DS  Dose Rate Set
-300a 0116 SQ  Wedge Position Sequence
-300a 0118 CS  Wedge Position
-300a 011a SQ  Beam Limiting Device Position Sequence
-300a 011c DS  Leaf/Jaw Positions
-300a 011e DS  Gantry Angle
-300a 011f CS  Gantry Rotation Direction
-300a 0120 DS  Beam Limiting Device Angle
-300a 0121 CS  Beam Limiting Device Rotation Direction
-300a 0122 DS  Patient Support Angle
-300a 0123 CS  Patient Support Rotation Direction
-300a 0124 DS  Table Top Eccentric Axis Distance
-300a 0125 DS  Table Top Eccentric Angle
-300a 0126 CS  Table Top Eccentric Rotation Direction
-300a 0128 DS  Table Top Vertical Position
-300a 0129 DS  Table Top Longitudinal Position
-300a 012a DS  Table Top Lateral Position
-300a 012c DS  Isocenter Position
-300a 012e DS  Surface Entry Point
-300a 0130 DS  Source to Surface Distance
-300a 0134 DS  Cumulative Meterset Weight
-300a 0180 SQ  Patient Setup Sequence
-300a 0182 IS  Patient Setup Number
-300a 0184 LO  Patient Additional Position
-300a 0190 SQ  Fixation Device Sequence
-300a 0192 CS  Fixation Device Type
-300a 0194 SH  Fixation Device Label
-300a 0196 ST  Fixation Device Description
-300a 0198 SH  Fixation Device Position
-300a 01a0 SQ  Shielding Device Sequence
-300a 01a2 CS  Shielding Device Type
-300a 01a4 SH  Shielding Device Label
-300a 01a6 ST  Shielding Device Description
-300a 01a8 SH  Shielding Device Position
-300a 01b0 CS  Setup Technique
-300a 01b2 ST  Setup Technique Description
-300a 01b4 SQ  Setup Device Sequence
-300a 01b6 CS  Setup Device Type
-300a 01b8 SH  Setup Device Label
-300a 01ba ST  Setup Device Description
-300a 01bc DS  Setup Device Parameter
-300a 01d0 ST  Setup Reference Description
-300a 01d2 DS  Table Top Vertical Setup Displacement
-300a 01d4 DS  Table Top Longitudinal Setup Displacement
-300a 01d6 DS  Table Top Lateral Setup Displacement
-300a 0200 CS  Brachy Treatment Technique
-300a 0202 CS  Brachy Treatment Type
-300a 0206 SQ  Treatment Machine Sequence
-300a 0210 SQ  Source Sequence
-300a 0212 IS  Source Number
-300a 0214 CS  Source Type
-300a 0216 LO  Source Manufacturer
-300a 0218 DS  Active Source Diameter
-300a 021a DS  Active Source Length
-300a 0222 DS  Source Encapsulation Nominal Thickness
-300a 0224 DS  Source Encapsulation Nominal Transmission
-300a 0226 LO  Source Isotope Name
-300a 0228 DS  Source Isotope Half Life
-300a 022a DS  Reference Air Kerma Rate
-300a 022c DA  Air Kerma Rate Reference Date
-300a 022e TM  Air Kerma Rate Reference Time
-300a 0230 SQ  Application Setup Sequence
-300a 0232 CS  Application Setup Type
-300a 0234 IS  Application Setup Number
-300a 0236 LO  Application Setup Name
-300a 0238 LO  Application Setup Manufacturer
-300a 0240 IS  Template Number
-300a 0242 SH  Template Type
-300a 0244 LO  Template Name
-300a 0250 DS  Total Reference Air Kerma
-300a 0260 SQ  Brachy Acessory Device Sequence
-300a 0262 IS  Brachy Accessory Device Number
-300a 0263 SH  Brachy Accessory Device ID
-300a 0264 CS  Brachy Accessory Device Type
-300a 0266 LO  Brachy Accessory Device Name
-300a 026a DS  Brachy Accessory Device Nominal Thickness
-300a 026c DS  Brachy Acc'ry Device Nominal Transmission
-300a 0280 SQ  Channel Sequence
-300a 0282 IS  Channel Number
-300a 0284 DS  Channel Length
-300a 0286 DS  Channel Total Time
-300a 0288 CS  Source Movement Type
-300a 028a IS  Number of Pulses
-300a 028c DS  Pulse Repetition Interval
-300a 0290 IS  Source Applicator Number
-300a 0291 SH  Source Applicator ID
-300a 0292 CS  Source Applicator Type
-300a 0294 LO  Source Applicator Name
-300a 0296 DS  Source Applicator Length
-300a 0298 LO  Source Applicator Manufacturer
-300a 029c DS  Source Applicator Wall Nominal Thickness
-300a 029e DS  Src Applicator Wall Nominal Transmission
-300a 02a0 DS  Source Applicator Step Size
-300a 02a2 IS  Transfer Tube Number
-300a 02a4 DS  Transfer Tube Length
-300a 02b0 SQ  Channel Shield Sequence
-300a 02b2 IS  Channel Shield Number
-300a 02b3 SH  Channel Shield ID
-300a 02b4 LO  Channel Shield Name
-300a 02b8 DS  Channel Shield Nominal Thickness
-300a 02ba DS  Channel Shield Nominal Transmission
-300a 02c8 DS  Final Cumulative Time Weight
-300a 02d0 SQ  Brachy Control Point Sequence
-300a 02d2 DS  Control Point Relative Position
-300a 02d4 DS  Control Point 3D Position
-300a 02d6 DS  Cumulative Time Weight
-300c 0000 UL  Group Length
-300c 0002 SQ  Referenced RT Plan Sequence
-300c 0004 SQ  Referenced Beam Sequence
-300c 0006 IS  Referenced Beam Number
-300c 0007 IS  Referenced Reference Image Number
-300c 0008 DS  Start Cumulative Meterset Weight
-300c 0009 DS  End Cumulative Meterset Weight
-300c 000a SQ  Referenced Brachy Application Setup Seq
-300c 000c IS  Referenced Brachy Application Setup Number
-300c 000e IS  Referenced Source Number
-300c 0020 SQ  Referenced Fraction Group Sequence
-300c 0022 IS  Referenced Fraction Group Number
-300c 0040 SQ  Referenced Verification Image Sequence
-300c 0042 SQ  Referenced Reference Image Sequence
-300c 0050 SQ  Referenced Dose Reference Sequence
-300c 0051 IS  Referenced Dose Reference Numer
-300c 0055 SQ  Brachy Referenced Dose Reference Sequence
-300c 0060 SQ  Referenced Structure Set Sequence
-300c 006a IS  Referenced Patient Setup Number
-300c 0080 SQ  Referenced Dose Sequence
-300c 00a0 IS  Referenced Tolerance Table Number
-300c 00b0 SQ  Referenced Bolus Sequence
-300c 00c0 IS  Referenced Wedge Number
-300c 00d0 IS  Referenced Compensator Number
-300c 00e0 IS  Referenced Block Number
-300c 00f0 IS  Referenced Control Point Index
-300e 0000 UL  Group Length
-300e 0002 CS  Approval Status
-300e 0004 DA  Review Date
-300e 0005 TM  Review Time
-300e 0008 PN  Reviewer Name
+300a 0000 UL ???  Group Length
+300a 0002 SH ???  RT Plan Label
+300a 0003 LO ???  RT Plan Name
+300a 0004 ST ???  RT Plan Description
+300a 0006 DA ???  RT Plan Date
+300a 0007 TM ???  RT Plan Time
+300a 0009 LO ???  RT Treatment Protocols
+300a 000a CS ???  Treatment Intent
+300a 000b LO ???  Treatment Sites
+300a 000c CS ???  RT Plan Geometry
+300a 000e ST ???  Prescription Description
+300a 0010 SQ ???  Dose Reference Sequence
+300a 0012 IS ???  Dose Reference Number
+300a 0014 CS ???  Dose Reference Structure Type
+300a 0016 LO ???  Dose Reference Description
+300a 0018 DS ???  Dose Reference Point Coordinates
+300a 001a DS ???  Nominal Prior Dose
+300a 0020 CS ???  Dose Reference Type
+300a 0021 DS ???  Constraint Weight
+300a 0022 DS ???  Delivery Warning Dose
+300a 0023 DS ???  Delivery Maximum Dose
+300a 0025 DS ???  Target Minimum Dose
+300a 0026 DS ???  Target Prescription Dose
+300a 0027 DS ???  Target Maximum Dose
+300a 0028 DS ???  Target Underdose Volume Fraction
+300a 002a DS ???  Organ at Risk Full-volume Dose
+300a 002b DS ???  Organ at Risk Limit Dose
+300a 002c DS ???  Organ at Risk Maximum Dose
+300a 002d DS ???  Organ at Risk Overdose Volume Fraction
+300a 0040 SQ ???  Tolerance Table Sequence
+300a 0042 IS ???  Tolerance Table Number
+300a 0043 SH ???  Tolerance Table Label
+300a 0044 DS ???  Gantry Angle Tolerance
+300a 0046 DS ???  Beam Limiting Device Angle Tolerance
+300a 0048 SQ ???  Beam Limiting Device Tolerance Sequence
+300a 004a DS ???  Beam Limiting Device Position Tolerance
+300a 004c DS ???  Patient Support Angle Tolerance
+300a 004e DS ???  Table Top Eccentric Angle Tolerance
+300a 0051 DS ???  Table Top Vertical Position Tolerance
+300a 0052 DS ???  Table Top Longitudinal Position Tolerance
+300a 0053 DS ???  Table Top Lateral Position Tolerance
+300a 0055 CS ???  RT Plan Relationship
+300a 0070 SQ ???  Fraction Group Sequence
+300a 0071 IS ???  Fraction Group Number
+300a 0078 IS ???  Number of Fractions Planned
+300a 0079 IS ???  Number of Fractions Per Day
+300a 007a IS ???  Repeat Fraction Cycle Length
+300a 007b LT ???  Fraction Pattern
+300a 0080 IS ???  Number of Beams
+300a 0082 DS ???  Beam Dose Specification Point
+300a 0084 DS ???  Beam Dose
+300a 0086 DS ???  Beam Meterset
+300a 00a0 IS ???  Number of Brachy Application Setups
+300a 00a2 DS ???  Brachy App Setup Dose Specification Point
+300a 00a4 DS ???  Brachy Application Setup Dose
+300a 00b0 SQ ???  Beam Sequence
+300a 00b2 SH ???  Treatment Machine Name
+300a 00b3 CS ???  Primary Dosimeter Unit
+300a 00b4 DS ???  Source-Axis Distance
+300a 00b6 SQ ???  Beam Limiting Device Sequence
+300a 00b8 CS ???  RT Beam Limiting Device Type
+300a 00ba DS ???  Source to Beam Limiting Device Distance
+300a 00bc IS ???  Number of Leaf/Jaw Pairs
+300a 00be DS ???  Leaf Position Boundaries
+300a 00c0 IS ???  Beam Number
+300a 00c2 LO ???  Beam Name
+300a 00c3 ST ???  Beam Description
+300a 00c4 CS ???  Beam Type
+300a 00c6 CS ???  Radiation Type
+300a 00c8 IS ???  Reference Image Number
+300a 00ca SQ ???  Planned Verification Image Sequence
+300a 00cc LO ???  Imaging Device-Specific Acq Parameters
+300a 00ce CS ???  Treatment Delivery Type
+300a 00d0 IS ???  Number of Wedges
+300a 00d1 SQ ???  Wedge Sequence
+300a 00d2 IS ???  Wedge Number
+300a 00d3 CS ???  Wedge Type
+300a 00d4 SH ???  Wedge ID
+300a 00d5 IS ???  Wedge Angle
+300a 00d6 DS ???  Wedge Factor
+300a 00d8 DS ???  Wedge Orientation
+300a 00da DS ???  Source to Wedge Tray Distance
+300a 00e0 IS ???  Number of Compensators
+300a 00e1 SH ???  Material ID
+300a 00e2 DS ???  Total Compensator Tray Factor
+300a 00e3 SQ ???  Compensator Sequence
+300a 00e4 IS ???  Compensator Number
+300a 00e5 SH ???  Compensator ID
+300a 00e6 DS ???  Source to Compensator Tray Distance
+300a 00e7 IS ???  Compensator Rows
+300a 00e8 IS ???  Compensator Columns
+300a 00e9 DS ???  Compensator Pixel Spacing
+300a 00ea DS ???  Compensator Position
+300a 00eb DS ???  Compensator Transmission Data
+300a 00ec DS ???  Compensator Thickness Data
+300a 00ed IS ???  Number of Boli
+300a 00f0 IS ???  Number of Blocks
+300a 00f2 DS ???  Total Block Tray Factor
+300a 00f4 SQ ???  Block Sequence
+300a 00f5 SH ???  Block Tray ID
+300a 00f6 DS ???  Source to Block Tray Distance
+300a 00f8 CS ???  Block Type
+300a 00fa CS ???  Block Divergence
+300a 00fc IS ???  Block Number
+300a 00fe LO ???  Block Name
+300a 0100 DS ???  Block Thickness
+300a 0102 DS ???  Block Transmission
+300a 0104 IS ???  Block Number of Points
+300a 0106 DS ???  Block Data
+300a 0107 SQ ???  Applicator Sequence
+300a 0108 SH ???  Applicator ID
+300a 0109 CS ???  Applicator Type
+300a 010a LO ???  Applicator Description
+300a 010c DS ???  Cumulative Dose Reference COefficient
+300a 010e DS ???  Final Cumulative Meterset Weight
+300a 0110 IS ???  Number of Control Points
+300a 0111 SQ ???  Control Point Sequence
+300a 0112 IS ???  Control Point Index
+300a 0114 DS ???  Nominal Beam Energy
+300a 0115 DS ???  Dose Rate Set
+300a 0116 SQ ???  Wedge Position Sequence
+300a 0118 CS ???  Wedge Position
+300a 011a SQ ???  Beam Limiting Device Position Sequence
+300a 011c DS ???  Leaf/Jaw Positions
+300a 011e DS ???  Gantry Angle
+300a 011f CS ???  Gantry Rotation Direction
+300a 0120 DS ???  Beam Limiting Device Angle
+300a 0121 CS ???  Beam Limiting Device Rotation Direction
+300a 0122 DS ???  Patient Support Angle
+300a 0123 CS ???  Patient Support Rotation Direction
+300a 0124 DS ???  Table Top Eccentric Axis Distance
+300a 0125 DS ???  Table Top Eccentric Angle
+300a 0126 CS ???  Table Top Eccentric Rotation Direction
+300a 0128 DS ???  Table Top Vertical Position
+300a 0129 DS ???  Table Top Longitudinal Position
+300a 012a DS ???  Table Top Lateral Position
+300a 012c DS ???  Isocenter Position
+300a 012e DS ???  Surface Entry Point
+300a 0130 DS ???  Source to Surface Distance
+300a 0134 DS ???  Cumulative Meterset Weight
+300a 0180 SQ ???  Patient Setup Sequence
+300a 0182 IS ???  Patient Setup Number
+300a 0184 LO ???  Patient Additional Position
+300a 0190 SQ ???  Fixation Device Sequence
+300a 0192 CS ???  Fixation Device Type
+300a 0194 SH ???  Fixation Device Label
+300a 0196 ST ???  Fixation Device Description
+300a 0198 SH ???  Fixation Device Position
+300a 01a0 SQ ???  Shielding Device Sequence
+300a 01a2 CS ???  Shielding Device Type
+300a 01a4 SH ???  Shielding Device Label
+300a 01a6 ST ???  Shielding Device Description
+300a 01a8 SH ???  Shielding Device Position
+300a 01b0 CS ???  Setup Technique
+300a 01b2 ST ???  Setup Technique Description
+300a 01b4 SQ ???  Setup Device Sequence
+300a 01b6 CS ???  Setup Device Type
+300a 01b8 SH ???  Setup Device Label
+300a 01ba ST ???  Setup Device Description
+300a 01bc DS ???  Setup Device Parameter
+300a 01d0 ST ???  Setup Reference Description
+300a 01d2 DS ???  Table Top Vertical Setup Displacement
+300a 01d4 DS ???  Table Top Longitudinal Setup Displacement
+300a 01d6 DS ???  Table Top Lateral Setup Displacement
+300a 0200 CS ???  Brachy Treatment Technique
+300a 0202 CS ???  Brachy Treatment Type
+300a 0206 SQ ???  Treatment Machine Sequence
+300a 0210 SQ ???  Source Sequence
+300a 0212 IS ???  Source Number
+300a 0214 CS ???  Source Type
+300a 0216 LO ???  Source Manufacturer
+300a 0218 DS ???  Active Source Diameter
+300a 021a DS ???  Active Source Length
+300a 0222 DS ???  Source Encapsulation Nominal Thickness
+300a 0224 DS ???  Source Encapsulation Nominal Transmission
+300a 0226 LO ???  Source Isotope Name
+300a 0228 DS ???  Source Isotope Half Life
+300a 022a DS ???  Reference Air Kerma Rate
+300a 022c DA ???  Air Kerma Rate Reference Date
+300a 022e TM ???  Air Kerma Rate Reference Time
+300a 0230 SQ ???  Application Setup Sequence
+300a 0232 CS ???  Application Setup Type
+300a 0234 IS ???  Application Setup Number
+300a 0236 LO ???  Application Setup Name
+300a 0238 LO ???  Application Setup Manufacturer
+300a 0240 IS ???  Template Number
+300a 0242 SH ???  Template Type
+300a 0244 LO ???  Template Name
+300a 0250 DS ???  Total Reference Air Kerma
+300a 0260 SQ ???  Brachy Acessory Device Sequence
+300a 0262 IS ???  Brachy Accessory Device Number
+300a 0263 SH ???  Brachy Accessory Device ID
+300a 0264 CS ???  Brachy Accessory Device Type
+300a 0266 LO ???  Brachy Accessory Device Name
+300a 026a DS ???  Brachy Accessory Device Nominal Thickness
+300a 026c DS ???  Brachy Acc'ry Device Nominal Transmission
+300a 0280 SQ ???  Channel Sequence
+300a 0282 IS ???  Channel Number
+300a 0284 DS ???  Channel Length
+300a 0286 DS ???  Channel Total Time
+300a 0288 CS ???  Source Movement Type
+300a 028a IS ???  Number of Pulses
+300a 028c DS ???  Pulse Repetition Interval
+300a 0290 IS ???  Source Applicator Number
+300a 0291 SH ???  Source Applicator ID
+300a 0292 CS ???  Source Applicator Type
+300a 0294 LO ???  Source Applicator Name
+300a 0296 DS ???  Source Applicator Length
+300a 0298 LO ???  Source Applicator Manufacturer
+300a 029c DS ???  Source Applicator Wall Nominal Thickness
+300a 029e DS ???  Src Applicator Wall Nominal Transmission
+300a 02a0 DS ???  Source Applicator Step Size
+300a 02a2 IS ???  Transfer Tube Number
+300a 02a4 DS ???  Transfer Tube Length
+300a 02b0 SQ ???  Channel Shield Sequence
+300a 02b2 IS ???  Channel Shield Number
+300a 02b3 SH ???  Channel Shield ID
+300a 02b4 LO ???  Channel Shield Name
+300a 02b8 DS ???  Channel Shield Nominal Thickness
+300a 02ba DS ???  Channel Shield Nominal Transmission
+300a 02c8 DS ???  Final Cumulative Time Weight
+300a 02d0 SQ ???  Brachy Control Point Sequence
+300a 02d2 DS ???  Control Point Relative Position
+300a 02d4 DS ???  Control Point 3D Position
+300a 02d6 DS ???  Cumulative Time Weight
+300c 0000 UL ???  Group Length
+300c 0002 SQ ???  Referenced RT Plan Sequence
+300c 0004 SQ ???  Referenced Beam Sequence
+300c 0006 IS ???  Referenced Beam Number
+300c 0007 IS ???  Referenced Reference Image Number
+300c 0008 DS ???  Start Cumulative Meterset Weight
+300c 0009 DS ???  End Cumulative Meterset Weight
+300c 000a SQ ???  Referenced Brachy Application Setup Seq
+300c 000c IS ???  Referenced Brachy Application Setup Number
+300c 000e IS ???  Referenced Source Number
+300c 0020 SQ ???  Referenced Fraction Group Sequence
+300c 0022 IS ???  Referenced Fraction Group Number
+300c 0040 SQ ???  Referenced Verification Image Sequence
+300c 0042 SQ ???  Referenced Reference Image Sequence
+300c 0050 SQ ???  Referenced Dose Reference Sequence
+300c 0051 IS ???  Referenced Dose Reference Numer
+300c 0055 SQ ???  Brachy Referenced Dose Reference Sequence
+300c 0060 SQ ???  Referenced Structure Set Sequence
+300c 006a IS ???  Referenced Patient Setup Number
+300c 0080 SQ ???  Referenced Dose Sequence
+300c 00a0 IS ???  Referenced Tolerance Table Number
+300c 00b0 SQ ???  Referenced Bolus Sequence
+300c 00c0 IS ???  Referenced Wedge Number
+300c 00d0 IS ???  Referenced Compensator Number
+300c 00e0 IS ???  Referenced Block Number
+300c 00f0 IS ???  Referenced Control Point Index
+300e 0000 UL ???  Group Length
+300e 0002 CS ???  Approval Status
+300e 0004 DA ???  Review Date
+300e 0005 TM ???  Review Time
+300e 0008 PN ???  Reviewer Name
 4008 0000 UL RES Group Length
 4008 0040 SH RES Results ID
 4008 0042 LO RES Results ID Issuer
 4008 0000 UL RES Group Length
 4008 0040 SH RES Results ID
 4008 0042 LO RES Results ID Issuer
index 2d81ecf6b19a0f62a3aaf3f0e136c58a3d021469..0c370c6603805560215bdffac716a8491519e851 100644 (file)
@@ -23,6 +23,7 @@ using namespace std;  // string type lives in the std namespace on VC++
 #include <iostream>
 #include <stddef.h>   // For size_t
 #include <stdio.h>    // FIXME For FILE on GCC only
 #include <iostream>
 #include <stddef.h>   // For size_t
 #include <stdio.h>    // FIXME For FILE on GCC only
+#include <list>
 #include <map>
 
 #ifdef __GNUC__
 #include <map>
 
 #ifdef __GNUC__
@@ -110,6 +111,7 @@ public:
        // TODO Swig int AppendEntry(gdcmDictEntry* NewEntry);
        gdcmDictEntry * GetTag(guint32 group, guint32 element);
        void Print(ostream&);
        // TODO Swig int AppendEntry(gdcmDictEntry* NewEntry);
        gdcmDictEntry * GetTag(guint32 group, guint32 element);
        void Print(ostream&);
+       TagHT & GetEntries(void) { return entries; }
 };
 
 ////////////////////////////////////////////////////////////////////////////
 };
 
 ////////////////////////////////////////////////////////////////////////////
@@ -181,7 +183,7 @@ public:
 ////////////////////////////////////////////////////////////////////////////
 // Container for a set of succefully parsed ElValues.
 typedef map<TagKey, ElValue*> TagElValueHT;
 ////////////////////////////////////////////////////////////////////////////
 // Container for a set of succefully parsed ElValues.
 typedef map<TagKey, ElValue*> TagElValueHT;
-       typedef map<string, ElValue*> TagElValueNameHT;
+typedef map<string, ElValue*> TagElValueNameHT;
 
 class GDCM_EXPORT ElValSet {
                // We need both accesses with a TagKey and the Dictentry.Name
 
 class GDCM_EXPORT ElValSet {
                // We need both accesses with a TagKey and the Dictentry.Name
@@ -293,7 +295,8 @@ public:
        // from the standard (or public) dictionary. Typical usage: enable the
        // user of a GUI based interface to select his favorite fields for sorting
        // or selection.
        // from the standard (or public) dictionary. Typical usage: enable the
        // user of a GUI based interface to select his favorite fields for sorting
        // or selection.
-       // TODO Swig string* GetPubTagNames();
+       list<string> * GetPubTagNames(void);
+       map<string, list<string> > * GetPubTagNamesByCategory(void);
        // Get the element values themselves:
        string GetPubElValByName(string TagName);
        string GetPubElValByNumber(guint16 group, guint16 element);
        // Get the element values themselves:
        string GetPubElValByName(string TagName);
        string GetPubElValByNumber(guint16 group, guint16 element);
index 4d08f021484a20ab231100c7a6c7b95d47721f26..6722b122dbcc787438b4893811e6721aa9200289 100644 (file)
@@ -794,6 +794,26 @@ gdcmDictEntry * gdcmHeader::IsInDicts(guint32 group, guint32 element) {
        return found;
 }
 
        return found;
 }
 
+list<string> * gdcmHeader::GetPubTagNames(void) {
+       list<string> * Result = new list<string>;
+       TagHT entries = RefPubDict->GetEntries();
+
+       for (TagHT::iterator tag = entries.begin(); tag != entries.end(); ++tag){
+      Result->push_back( tag->second->GetName() );
+       }
+       return Result;
+}
+
+map<string, list<string> > * gdcmHeader::GetPubTagNamesByCategory(void) {
+       map<string, list<string> > * Result = new map<string, list<string> >;
+       TagHT entries = RefPubDict->GetEntries();
+
+       for (TagHT::iterator tag = entries.begin(); tag != entries.end(); ++tag){
+               (*Result)[tag->second->GetFourth()].push_back(tag->second->GetName());
+       }
+       return Result;
+}
+
 string gdcmHeader::GetPubElValByNumber(guint16 group, guint16 element) {
        return PubElVals.GetElValueByNumber(group, element);
 }
 string gdcmHeader::GetPubElValByNumber(guint16 group, guint16 element) {
        return PubElVals.GetElValueByNumber(group, element);
 }