]> Creatis software - gdcm.git/commitdiff
* CLEANUP_ROUND for gdcmPixelConvert:
authorfrog <frog>
Wed, 29 Sep 2004 17:33:12 +0000 (17:33 +0000)
committerfrog <frog>
Wed, 29 Sep 2004 17:33:12 +0000 (17:33 +0000)
    - src/gdcmFile.cxx, gdcmFile.h, gdcmHeader.cxx, gdcmHeader.h clean up
    - src/gdcmPixelStuff[h|cxx] removed
    - src/gdcmPixelConvert[h|cxx] added. Preparatory work included.
    - src/CMakeLists.txt changed accordingly
  * GDCMHOME clean up:
    - MANIFEST.in, WrapSwig.py, WrapVTK.py, distutilsWrapping.py and
      gdcmVersion.py moved to newly created ATTIC related
      gdcmPython/SetupOldies/ directory.
  * Autotools clean up:
    - */*/Makefile.am removed AT EXCEPTION of gdcmPython/Makefile.am
    - autogen.sh configure.in acinclude.m4 python.m4 removed

30 files changed:
ChangeLog
Dicts/Makefile.am [deleted file]
Doc/gdcmUML.xmi
Makefile.am [deleted file]
acinclude.m4 [deleted file]
autogen.sh [deleted file]
configure.in [deleted file]
gdcm.dsw [deleted file]
gdcmPython/SetupOldies/MANIFEST.in [moved from MANIFEST.in with 100% similarity]
gdcmPython/SetupOldies/WrapSwig.py [moved from WrapSwig.py with 100% similarity]
gdcmPython/SetupOldies/WrapVTK.py [moved from WrapVTK.py with 100% similarity]
gdcmPython/SetupOldies/distutilsWrapping.py [moved from distutilsWrapping.py with 100% similarity]
gdcmPython/gdcmVersion.py [moved from gdcmVersion.py with 100% similarity]
python.m4 [deleted file]
src/CMakeLists.txt
src/Makefile.am [deleted file]
src/gdcmFile.cxx
src/gdcmFile.h
src/gdcmHeader.cxx
src/gdcmHeader.h
src/gdcmPixelConvert.cxx [new file with mode: 0644]
src/gdcmPixelConvert.h [new file with mode: 0644]
src/gdcmPixelStuff.cxx [deleted file]
src/gdcmPixelStuff.h [deleted file]
src/jpeg/Makefile.am [deleted file]
src/jpeg/libijg12/Makefile.am [deleted file]
src/jpeg/libijg8/Makefile.am [deleted file]
src/jpeg/ljpg/Makefile.am [deleted file]
uml.xmi [deleted file]
vtk/Makefile.am [deleted file]

index 8a87763448b49cea387bd20afb1cca2b7673de86..a719f2d9a0316f9e4661920d0bdf058521528b16 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2004-09-29 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
+  * CLEANUP_ROUND for gdcmPixelConvert:
+    - src/gdcmFile.cxx, gdcmFile.h, gdcmHeader.cxx, gdcmHeader.h clean up
+    - src/gdcmPixelStuff[h|cxx] removed
+    - src/gdcmPixelConvert[h|cxx] added. Preparatory work included.
+    - src/CMakeLists.txt changed accordingly
+  * GDCMHOME clean up:
+    - MANIFEST.in, WrapSwig.py, WrapVTK.py, distutilsWrapping.py and
+      gdcmVersion.py moved to newly created ATTIC related
+      gdcmPython/SetupOldies/ directory.
+  * Autotools clean up:
+    - */*/Makefile.am removed AT EXCEPTION of gdcmPython/Makefile.am
+    - autogen.sh configure.in acinclude.m4 python.m4 removed 
+
 2004-09-27 Eric Boix <Eric.Boix@creatis.insa-lyon.fr>
   * src/*.cxx *.h Reference to License.htm fixed to License.html.
   * Doc/CMakeLists.txt, doxygen.config.in: fix.
diff --git a/Dicts/Makefile.am b/Dicts/Makefile.am
deleted file mode 100644 (file)
index 54da1d7..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-dictsdir = $(datadir)/gdcm
-dicts_DATA = dicomV3.dic README
-
-EXTRA_DIST = dicomV3.dic
index 2eda2ff182bb9639ac70a9293a58762cfe02f898..a4c5ac39a94cc1bae62a3fe5a360acc5a4eae0f2 100644 (file)
@@ -10,7 +10,7 @@
   <XMI.metamodel xmi.name="UML" href="UML.xml" xmi.version="1.3" />
  </XMI.header>
  <XMI.content>
-  <docsettings viewid="35" documentation="" uniqueid="193" />
+  <docsettings viewid="35" documentation="" uniqueid="239" />
   <UML:Model>
    <UML:DataType stereotype="datatype" visibility="public" xmi.id="36" name="int" />
    <UML:DataType stereotype="datatype" visibility="public" xmi.id="37" name="char" />
    </UML:Association>
   </UML:Model>
   <diagrams>
-   <diagram snapgrid="1" showattsig="1" fillcolor="#ffffff" zoom="116" showgrid="1" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="870" snapy="10" showatts="1" xmi.id="35" documentation="" type="402" showops="1" showpackage="1" name="class diagram" localid="30000" showstereotype="1" showscope="1" snapcsgrid="0" font="Sans,10,-1,5,48,0,0,0,0,0" linecolor="#000000" canvasheight="678" >
+   <diagram snapgrid="1" showattsig="0" fillcolor="#ffc6c6" zoom="100" showgrid="0" showopsig="0" usefillcolor="1" snapx="10" canvaswidth="1007" snapy="10" showatts="0" xmi.id="35" documentation="" type="402" showops="0" showpackage="0" name="class diagram" localid="30000" showstereotype="0" showscope="0" snapcsgrid="0" font="Sans,10,-1,5,48,0,0,0,0,0" linecolor="#000000" canvasheight="808" >
     <widgets>
-     <UML:ClassWidget usesdiagramfillcolour="0" width="96" showattsigs="600" usesdiagramusefillcolour="0" x="130" linecolour="#000000" y="30" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="43" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="68" showattsigs="600" usesdiagramusefillcolour="0" x="20" linecolour="#000000" y="150" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="44" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="90" showattsigs="600" usesdiagramusefillcolour="0" x="280" linecolour="#000000" y="140" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="46" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="76" showattsigs="600" usesdiagramusefillcolour="0" x="170" linecolour="#000000" y="300" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="47" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="76" showattsigs="600" usesdiagramusefillcolour="0" x="90" linecolour="#000000" y="380" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="75" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="72" showattsigs="600" usesdiagramusefillcolour="0" x="240" linecolour="#000000" y="380" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="76" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="76" showattsigs="600" usesdiagramusefillcolour="0" x="400" linecolour="#000000" y="290" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="80" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="56" showattsigs="600" usesdiagramusefillcolour="0" x="410" linecolour="#000000" y="390" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="84" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="63" showattsigs="600" usesdiagramusefillcolour="0" x="410" linecolour="#000000" y="490" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="85" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="82" showattsigs="600" usesdiagramusefillcolour="0" x="630" linecolour="#000000" y="140" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="88" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="76" showattsigs="600" usesdiagramusefillcolour="0" x="790" linecolour="#000000" y="270" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="89" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="61" showattsigs="600" usesdiagramusefillcolour="0" x="630" linecolour="#000000" y="270" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="90" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="62" showattsigs="600" usesdiagramusefillcolour="0" x="790" linecolour="#000000" y="360" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="91" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="56" showattsigs="600" usesdiagramusefillcolour="0" x="790" linecolour="#000000" y="450" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="92" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="56" showattsigs="600" usesdiagramusefillcolour="0" x="790" linecolour="#000000" y="540" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="93" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="56" showattsigs="600" usesdiagramusefillcolour="0" x="790" linecolour="#000000" y="630" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="94" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="101" showattsigs="600" usesdiagramusefillcolour="0" x="650" linecolour="#000000" y="380" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="103" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="56" showattsigs="600" usesdiagramusefillcolour="0" x="550" linecolour="#000000" y="390" showopsigs="600" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="34" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="104" showoperations="0" showpackage="1" showscope="1" showstereotype="1" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="88" showattsigs="603" usesdiagramusefillcolour="0" x="130" linecolour="#000000" y="30" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="43" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="60" showattsigs="603" usesdiagramusefillcolour="0" x="20" linecolour="#000000" y="150" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="44" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="82" showattsigs="603" usesdiagramusefillcolour="0" x="280" linecolour="#000000" y="140" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="46" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="68" showattsigs="603" usesdiagramusefillcolour="0" x="170" linecolour="#000000" y="300" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="47" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="68" showattsigs="603" usesdiagramusefillcolour="0" x="90" linecolour="#000000" y="380" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="75" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="64" showattsigs="603" usesdiagramusefillcolour="0" x="240" linecolour="#000000" y="380" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="76" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="68" showattsigs="603" usesdiagramusefillcolour="0" x="400" linecolour="#000000" y="290" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="80" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="56" showattsigs="603" usesdiagramusefillcolour="0" x="410" linecolour="#000000" y="390" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="84" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="56" showattsigs="603" usesdiagramusefillcolour="0" x="410" linecolour="#000000" y="490" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="85" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="74" showattsigs="603" usesdiagramusefillcolour="0" x="630" linecolour="#000000" y="140" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="88" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="68" showattsigs="603" usesdiagramusefillcolour="0" x="790" linecolour="#000000" y="270" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="89" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="56" showattsigs="603" usesdiagramusefillcolour="0" x="630" linecolour="#000000" y="270" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="90" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="56" showattsigs="603" usesdiagramusefillcolour="0" x="790" linecolour="#000000" y="360" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="91" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="56" showattsigs="603" usesdiagramusefillcolour="0" x="790" linecolour="#000000" y="450" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="92" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="56" showattsigs="603" usesdiagramusefillcolour="0" x="790" linecolour="#000000" y="540" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="93" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="56" showattsigs="603" usesdiagramusefillcolour="0" x="790" linecolour="#000000" y="630" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="94" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="93" showattsigs="603" usesdiagramusefillcolour="0" x="650" linecolour="#000000" y="380" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="103" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
+     <UML:ClassWidget usesdiagramfillcolour="0" width="56" showattsigs="603" usesdiagramusefillcolour="0" x="550" linecolour="#000000" y="390" showopsigs="603" instancename="" usesdiagramlinecolour="0" fillcolour="#ffffff" height="27" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="104" showoperations="0" showpackage="0" showscope="0" showstereotype="0" font="Sans,10,-1,5,75,0,0,0,0,0" />
     </widgets>
     <messages/>
     <associations>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="1" widgetbid="43" widgetaid="44" xmi.id="45" >
       <linepath>
-       <startpoint startx="54" starty="150" />
-       <endpoint endx="162" endy="64" />
+       <startpoint startx="50" starty="150" />
+       <endpoint endx="159" endy="57" />
       </linepath>
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="2" widgetbid="43" widgetaid="46" xmi.id="48" >
       <linepath>
-       <startpoint startx="325" starty="140" />
-       <endpoint endx="194" endy="64" />
+       <startpoint startx="321" starty="140" />
+       <endpoint endx="188" endy="57" />
       </linepath>
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="2" widgetbid="47" widgetaid="46" xmi.id="52" >
       <linepath>
-       <startpoint startx="325" starty="174" />
-       <endpoint endx="220" endy="300" />
+       <startpoint startx="321" starty="167" />
+       <endpoint endx="215" endy="300" />
        <point x="280" y="240" />
       </linepath>
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="33" usesdiagramusefillcolour="1" x="240" linecolour="none" y="230" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="52" text="map" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="33" usesdiagramusefillcolour="1" x="250" linecolour="none" y="210" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="52" text="map" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="330" linecolour="none" y="180" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="52" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="15" usesdiagramusefillcolour="1" x="240" linecolour="none" y="280" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="52" text="n" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="15" usesdiagramusefillcolour="1" x="250" linecolour="none" y="300" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="52" text="n" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="310" linecolour="none" y="180" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="52" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="310" linecolour="none" y="310" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="52" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="1" widgetbid="44" widgetaid="75" xmi.id="79" >
       <linepath>
-       <startpoint startx="90" starty="397" />
-       <endpoint endx="42" endy="184" />
+       <startpoint startx="90" starty="393" />
+       <endpoint endx="40" endy="177" />
        <point x="40" y="400" />
       </linepath>
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="70" linecolour="none" y="400" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="79" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="80" linecolour="none" y="370" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="79" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="15" usesdiagramusefillcolour="1" x="40" linecolour="none" y="190" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="79" text="n" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="15" usesdiagramusefillcolour="1" x="40" linecolour="none" y="180" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="79" text="n" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="70" linecolour="none" y="400" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="79" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="20" linecolour="none" y="190" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="79" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="20" linecolour="none" y="180" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="79" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="3" indexa="2" totalcountb="3" indexb="1" widgetbid="47" widgetaid="44" xmi.id="51" >
       <linepath>
-       <startpoint startx="65" starty="184" />
-       <endpoint endx="195" endy="300" />
+       <startpoint startx="60" starty="177" />
+       <endpoint endx="192" endy="300" />
        <point x="120" y="230" />
       </linepath>
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="25" usesdiagramusefillcolour="1" x="90" linecolour="none" y="230" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="51" text="list" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="70" linecolour="none" y="190" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="51" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="25" usesdiagramusefillcolour="1" x="110" linecolour="none" y="200" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="51" text="list" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="70" linecolour="none" y="180" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="51" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="15" usesdiagramusefillcolour="1" x="170" linecolour="none" y="280" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="51" text="n" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="70" linecolour="none" y="190" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="51" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="70" linecolour="none" y="180" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="51" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="230" linecolour="none" y="300" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="51" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="80" widgetaid="47" xmi.id="81" >
       <linepath>
-       <startpoint startx="246" starty="317" />
-       <endpoint endx="400" endy="307" />
+       <startpoint startx="238" starty="313" />
+       <endpoint endx="400" endy="303" />
       </linepath>
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="1" widgetbid="47" widgetaid="75" xmi.id="82" >
       <linepath>
-       <startpoint startx="128" starty="380" />
-       <endpoint endx="195" endy="334" />
+       <startpoint startx="124" starty="380" />
+       <endpoint endx="192" endy="327" />
       </linepath>
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="2" widgetbid="47" widgetaid="76" xmi.id="83" >
       <linepath>
-       <startpoint startx="276" starty="380" />
-       <endpoint endx="220" endy="334" />
+       <startpoint startx="272" starty="380" />
+       <endpoint endx="215" endy="327" />
       </linepath>
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="84" widgetaid="80" xmi.id="86" >
       <linepath>
-       <startpoint startx="438" starty="324" />
+       <startpoint startx="434" starty="317" />
        <endpoint endx="438" endy="390" />
       </linepath>
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="440" linecolour="none" y="360" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="86" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="440" linecolour="none" y="330" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="86" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="15" usesdiagramusefillcolour="1" x="440" linecolour="none" y="370" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="86" text="n" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="420" linecolour="none" y="330" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="86" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="420" linecolour="none" y="320" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="86" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="15" usesdiagramusefillcolour="1" x="460" linecolour="none" y="370" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="86" text="n" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="440" linecolour="none" y="320" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="86" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="420" linecolour="none" y="370" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="86" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="85" widgetaid="84" xmi.id="87" >
       <linepath>
-       <startpoint startx="438" starty="424" />
-       <endpoint endx="441" endy="490" />
+       <startpoint startx="438" starty="417" />
+       <endpoint endx="438" endy="490" />
       </linepath>
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="440" linecolour="none" y="460" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="87" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="430" linecolour="none" y="430" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="87" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="440" linecolour="none" y="420" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="87" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="15" usesdiagramusefillcolour="1" x="440" linecolour="none" y="470" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="87" text="n" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="440" linecolour="none" y="430" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="87" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="420" linecolour="none" y="420" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="87" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="420" linecolour="none" y="470" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="87" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="46" widgetaid="88" xmi.id="95" >
       <linepath>
-       <startpoint startx="630" starty="157" />
-       <endpoint endx="370" endy="157" />
+       <startpoint startx="630" starty="153" />
+       <endpoint endx="362" endy="153" />
       </linepath>
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="1" widgetbid="88" widgetaid="90" xmi.id="96" >
       <linepath>
-       <startpoint startx="660" starty="270" />
-       <endpoint endx="657" endy="174" />
+       <startpoint startx="658" starty="270" />
+       <endpoint endx="654" endy="167" />
       </linepath>
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="2" widgetbid="88" widgetaid="89" xmi.id="97" >
       <linepath>
-       <startpoint startx="828" starty="270" />
-       <endpoint endx="684" endy="174" />
+       <startpoint startx="824" starty="270" />
+       <endpoint endx="679" endy="167" />
       </linepath>
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="91" widgetaid="89" xmi.id="98" >
       <linepath>
-       <startpoint startx="828" starty="304" />
-       <endpoint endx="821" endy="360" />
+       <startpoint startx="824" starty="297" />
+       <endpoint endx="818" endy="360" />
       </linepath>
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="820" linecolour="none" y="340" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="98" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="830" linecolour="none" y="300" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="98" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="830" linecolour="none" y="290" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="98" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="15" usesdiagramusefillcolour="1" x="820" linecolour="none" y="340" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="98" text="n" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="810" linecolour="none" y="300" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="98" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="810" linecolour="none" y="290" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="98" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="820" linecolour="none" y="340" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="98" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="92" widgetaid="91" xmi.id="99" >
       <linepath>
-       <startpoint startx="821" starty="394" />
+       <startpoint startx="818" starty="387" />
        <endpoint endx="818" endy="450" />
       </linepath>
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="820" linecolour="none" y="430" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="99" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="820" linecolour="none" y="390" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="99" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="15" usesdiagramusefillcolour="1" x="810" linecolour="none" y="430" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="99" text="n" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="800" linecolour="none" y="390" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="99" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="820" linecolour="none" y="430" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="99" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="820" linecolour="none" y="380" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="99" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="15" usesdiagramusefillcolour="1" x="830" linecolour="none" y="430" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="99" text="n" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="800" linecolour="none" y="380" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="99" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="800" linecolour="none" y="430" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="99" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="93" widgetaid="92" xmi.id="100" >
       <linepath>
-       <startpoint startx="818" starty="484" />
+       <startpoint startx="818" starty="477" />
        <endpoint endx="818" endy="540" />
       </linepath>
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="820" linecolour="none" y="520" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="100" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="820" linecolour="none" y="480" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="100" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="820" linecolour="none" y="470" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="100" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="15" usesdiagramusefillcolour="1" x="820" linecolour="none" y="520" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="100" text="n" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="800" linecolour="none" y="480" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="100" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="800" linecolour="none" y="470" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="100" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="800" linecolour="none" y="520" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="100" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="94" widgetaid="93" xmi.id="101" >
       <linepath>
-       <startpoint startx="818" starty="574" />
+       <startpoint startx="818" starty="567" />
        <endpoint endx="818" endy="630" />
       </linepath>
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="820" linecolour="none" y="610" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="101" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="820" linecolour="none" y="570" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="101" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="8" usesdiagramusefillcolour="1" x="820" linecolour="none" y="560" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="101" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="15" usesdiagramusefillcolour="1" x="820" linecolour="none" y="610" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="21" usefillcolor="1" pretext="" isinstance="0" xmi.id="101" text="n" font="Sans,10,-1,5,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="800" linecolour="none" y="570" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="101" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
+      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="800" linecolour="none" y="560" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="101" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
       <UML:FloatingTextWidget usesdiagramfillcolour="1" width="16" usesdiagramusefillcolour="1" x="800" linecolour="none" y="610" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="21" usefillcolor="1" pretext="+" isinstance="0" xmi.id="101" text="" font="Sans,10,-1,5,50,0,0,0,0,0" />
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="3" indexa="1" totalcountb="2" indexb="1" widgetbid="104" widgetaid="90" xmi.id="106" >
       <linepath>
-       <startpoint startx="650" starty="304" />
+       <startpoint startx="648" starty="297" />
        <endpoint endx="578" endy="390" />
       </linepath>
      </UML:AssocWidget>
      <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="3" indexb="2" widgetbid="90" widgetaid="103" xmi.id="105" >
       <linepath>
-       <startpoint startx="700" starty="380" />
-       <endpoint endx="670" endy="304" />
+       <startpoint startx="696" starty="380" />
+       <endpoint endx="667" endy="297" />
       </linepath>
      </UML:AssocWidget>
     </associations>
      <listitem open="1" type="813" id="43" label="DocEntrySet" />
      <listitem open="1" type="813" id="88" label="Document" />
      <listitem open="1" type="813" id="46" label="ElementSet" />
-     <listitem open="1" type="813" id="76" label="ValEntry" />
      <listitem open="1" type="813" id="104" label="File" />
      <listitem open="1" type="813" id="90" label="Header" />
      <listitem open="1" type="813" id="103" label="HeaderHelper" />
      <listitem open="1" type="813" id="75" label="SeqEntry" />
      <listitem open="1" type="813" id="44" label="SeqItem" />
      <listitem open="1" type="813" id="93" label="Serie" />
+     <listitem open="1" type="813" id="76" label="ValEntry" />
      <listitem open="1" type="813" id="92" label="study" />
      <listitem open="0" type="830" id="-1" label="Datatypes" >
       <listitem open="1" type="829" id="38" label="bool" />
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    docentryset.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    docentryset.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:21:39&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields/>
     </classifiercodedocument>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" classfield_id="51" role_id="1" >
+        <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" classfield_id="51" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_1" canDelete="false" classfield_id="51" role_id="1" >
+        <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_1" canDelete="false" classfield_id="51" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_2" canDelete="false" classfield_id="51" role_id="1" >
+        <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_2" canDelete="false" classfield_id="51" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_3" canDelete="false" classfield_id="51" role_id="1" >
+        <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_3" canDelete="false" classfield_id="51" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_4" canDelete="false" classfield_id="51" role_id="1" >
+        <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_4" canDelete="false" classfield_id="51" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_5" canDelete="false" classfield_id="79" role_id="0" >
+        <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_5" canDelete="false" classfield_id="79" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_6" canDelete="false" classfield_id="79" role_id="0" >
+        <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_6" canDelete="false" classfield_id="79" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_7" canDelete="false" classfield_id="79" role_id="0" >
+        <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_7" canDelete="false" classfield_id="79" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_8" canDelete="false" classfield_id="79" role_id="0" >
+        <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_8" canDelete="false" classfield_id="79" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_9" canDelete="false" classfield_id="79" role_id="0" >
+        <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_9" canDelete="false" classfield_id="79" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    seqitem.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    seqitem.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:21:16&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="51" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="51" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="51" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="51" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" classfield_id="51" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" classfield_id="51" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_1" canDelete="false" classfield_id="51" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_1" canDelete="false" classfield_id="51" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_2" canDelete="false" classfield_id="51" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_2" canDelete="false" classfield_id="51" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_3" canDelete="false" classfield_id="51" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_3" canDelete="false" classfield_id="51" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_4" canDelete="false" classfield_id="51" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_4" canDelete="false" classfield_id="51" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
       </codeclassfield>
-      <codeclassfield parent_id="79" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="79" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="79" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="79" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_5" canDelete="false" classfield_id="79" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_5" canDelete="false" classfield_id="79" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_6" canDelete="false" classfield_id="79" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_6" canDelete="false" classfield_id="79" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_7" canDelete="false" classfield_id="79" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_7" canDelete="false" classfield_id="79" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_8" canDelete="false" classfield_id="79" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_8" canDelete="false" classfield_id="79" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_9" canDelete="false" classfield_id="79" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_9" canDelete="false" classfield_id="79" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_0" canDelete="false" classfield_id="52" role_id="1" >
+        <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_0" canDelete="false" classfield_id="52" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_1" canDelete="false" classfield_id="52" role_id="1" >
+        <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_1" canDelete="false" classfield_id="52" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_2" canDelete="false" classfield_id="52" role_id="1" >
+        <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_2" canDelete="false" classfield_id="52" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_3" canDelete="false" classfield_id="52" role_id="1" >
+        <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_3" canDelete="false" classfield_id="52" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_4" canDelete="false" classfield_id="52" role_id="1" >
+        <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_4" canDelete="false" classfield_id="52" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    elementset.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    elementset.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:23:11&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="52" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="52" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="52" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="52" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_0" canDelete="false" classfield_id="52" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_0" canDelete="false" classfield_id="52" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_1" canDelete="false" classfield_id="52" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_1" canDelete="false" classfield_id="52" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_2" canDelete="false" classfield_id="52" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_2" canDelete="false" classfield_id="52" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_3" canDelete="false" classfield_id="52" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_3" canDelete="false" classfield_id="52" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_4" canDelete="false" classfield_id="52" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_4" canDelete="false" classfield_id="52" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" classfield_id="51" role_id="0" >
+        <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" classfield_id="51" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_1" canDelete="false" classfield_id="51" role_id="0" >
+        <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_1" canDelete="false" classfield_id="51" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_2" canDelete="false" classfield_id="51" role_id="0" >
+        <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_2" canDelete="false" classfield_id="51" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_3" canDelete="false" classfield_id="51" role_id="0" >
+        <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_3" canDelete="false" classfield_id="51" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_4" canDelete="false" classfield_id="51" role_id="0" >
+        <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_4" canDelete="false" classfield_id="51" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_5" canDelete="false" classfield_id="52" role_id="0" >
+        <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_5" canDelete="false" classfield_id="52" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_6" canDelete="false" classfield_id="52" role_id="0" >
+        <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_6" canDelete="false" classfield_id="52" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_7" canDelete="false" classfield_id="52" role_id="0" >
+        <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_7" canDelete="false" classfield_id="52" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_8" canDelete="false" classfield_id="52" role_id="0" >
+        <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_8" canDelete="false" classfield_id="52" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_9" canDelete="false" classfield_id="52" role_id="0" >
+        <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_9" canDelete="false" classfield_id="52" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    docentry.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:54&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    docentry.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:15:16&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="51" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="51" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="51" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="51" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" classfield_id="51" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" classfield_id="51" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_1" canDelete="false" classfield_id="51" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_1" canDelete="false" classfield_id="51" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_2" canDelete="false" classfield_id="51" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_2" canDelete="false" classfield_id="51" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_3" canDelete="false" classfield_id="51" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_3" canDelete="false" classfield_id="51" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_4" canDelete="false" classfield_id="51" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_4" canDelete="false" classfield_id="51" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
       </codeclassfield>
-      <codeclassfield parent_id="52" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="52" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="52" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="52" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_5" canDelete="false" classfield_id="52" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_5" canDelete="false" classfield_id="52" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_6" canDelete="false" classfield_id="52" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_6" canDelete="false" classfield_id="52" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_7" canDelete="false" classfield_id="52" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_7" canDelete="false" classfield_id="52" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_8" canDelete="false" classfield_id="52" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_8" canDelete="false" classfield_id="52" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_9" canDelete="false" classfield_id="52" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_9" canDelete="false" classfield_id="52" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_0" canDelete="false" classfield_id="79" role_id="1" >
+        <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_0" canDelete="false" classfield_id="79" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_1" canDelete="false" classfield_id="79" role_id="1" >
+        <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_1" canDelete="false" classfield_id="79" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_2" canDelete="false" classfield_id="79" role_id="1" >
+        <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_2" canDelete="false" classfield_id="79" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_3" canDelete="false" classfield_id="79" role_id="1" >
+        <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_3" canDelete="false" classfield_id="79" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_4" canDelete="false" classfield_id="79" role_id="1" >
+        <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_4" canDelete="false" classfield_id="79" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    seqentry.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    seqentry.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:01:58&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="79" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="79" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="79" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="79" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_0" canDelete="false" classfield_id="79" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_0" canDelete="false" classfield_id="79" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_1" canDelete="false" classfield_id="79" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_1" canDelete="false" classfield_id="79" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_2" canDelete="false" classfield_id="79" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_2" canDelete="false" classfield_id="79" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_3" canDelete="false" classfield_id="79" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_3" canDelete="false" classfield_id="79" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_4" canDelete="false" classfield_id="79" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_4" canDelete="false" classfield_id="79" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    valentry.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:25:13&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    valentry.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:01:58&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields/>
     </classifiercodedocument>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" classfield_id="86" role_id="1" >
+        <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" classfield_id="86" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_1" canDelete="false" classfield_id="86" role_id="1" >
+        <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_1" canDelete="false" classfield_id="86" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_2" canDelete="false" classfield_id="86" role_id="1" >
+        <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_2" canDelete="false" classfield_id="86" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_3" canDelete="false" classfield_id="86" role_id="1" >
+        <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_3" canDelete="false" classfield_id="86" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_4" canDelete="false" classfield_id="86" role_id="1" >
+        <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_4" canDelete="false" classfield_id="86" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    dictentry.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    dictentry.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:08&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="86" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="86" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="86" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="86" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" classfield_id="86" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" classfield_id="86" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_1" canDelete="false" classfield_id="86" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_1" canDelete="false" classfield_id="86" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_2" canDelete="false" classfield_id="86" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_2" canDelete="false" classfield_id="86" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_3" canDelete="false" classfield_id="86" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_3" canDelete="false" classfield_id="86" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_4" canDelete="false" classfield_id="86" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_4" canDelete="false" classfield_id="86" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" classfield_id="86" role_id="0" >
+        <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" classfield_id="86" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_1" canDelete="false" classfield_id="86" role_id="0" >
+        <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_1" canDelete="false" classfield_id="86" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_2" canDelete="false" classfield_id="86" role_id="0" >
+        <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_2" canDelete="false" classfield_id="86" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_3" canDelete="false" classfield_id="86" role_id="0" >
+        <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_3" canDelete="false" classfield_id="86" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_4" canDelete="false" classfield_id="86" role_id="0" >
+        <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_4" canDelete="false" classfield_id="86" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_5" canDelete="false" classfield_id="87" role_id="1" >
+        <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_5" canDelete="false" classfield_id="87" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_6" canDelete="false" classfield_id="87" role_id="1" >
+        <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_6" canDelete="false" classfield_id="87" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_7" canDelete="false" classfield_id="87" role_id="1" >
+        <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_7" canDelete="false" classfield_id="87" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_8" canDelete="false" classfield_id="87" role_id="1" >
+        <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_8" canDelete="false" classfield_id="87" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_9" canDelete="false" classfield_id="87" role_id="1" >
+        <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_9" canDelete="false" classfield_id="87" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    dict.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    dict.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:23:27&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="86" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="86" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="86" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="86" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" classfield_id="86" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" classfield_id="86" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_1" canDelete="false" classfield_id="86" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_1" canDelete="false" classfield_id="86" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_2" canDelete="false" classfield_id="86" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_2" canDelete="false" classfield_id="86" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_3" canDelete="false" classfield_id="86" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_3" canDelete="false" classfield_id="86" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_4" canDelete="false" classfield_id="86" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_4" canDelete="false" classfield_id="86" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
       </codeclassfield>
-      <codeclassfield parent_id="87" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="87" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="87" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="87" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_5" canDelete="false" classfield_id="87" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_5" canDelete="false" classfield_id="87" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_6" canDelete="false" classfield_id="87" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_6" canDelete="false" classfield_id="87" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_7" canDelete="false" classfield_id="87" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_7" canDelete="false" classfield_id="87" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_8" canDelete="false" classfield_id="87" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_8" canDelete="false" classfield_id="87" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_9" canDelete="false" classfield_id="87" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_9" canDelete="false" classfield_id="87" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_0" canDelete="false" classfield_id="87" role_id="0" >
+        <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_0" canDelete="false" classfield_id="87" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_1" canDelete="false" classfield_id="87" role_id="0" >
+        <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_1" canDelete="false" classfield_id="87" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_2" canDelete="false" classfield_id="87" role_id="0" >
+        <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_2" canDelete="false" classfield_id="87" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_3" canDelete="false" classfield_id="87" role_id="0" >
+        <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_3" canDelete="false" classfield_id="87" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_4" canDelete="false" classfield_id="87" role_id="0" >
+        <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_4" canDelete="false" classfield_id="87" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    dictset.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    dictset.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:01:58&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="87" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="87" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="87" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="87" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_0" canDelete="false" classfield_id="87" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_0" canDelete="false" classfield_id="87" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_1" canDelete="false" classfield_id="87" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_1" canDelete="false" classfield_id="87" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_2" canDelete="false" classfield_id="87" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_2" canDelete="false" classfield_id="87" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_3" canDelete="false" classfield_id="87" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_3" canDelete="false" classfield_id="87" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_4" canDelete="false" classfield_id="87" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_4" canDelete="false" classfield_id="87" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    document.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    document.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:12&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields/>
     </classifiercodedocument>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" classfield_id="98" role_id="1" >
+        <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" classfield_id="98" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_1" canDelete="false" classfield_id="98" role_id="1" >
+        <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_1" canDelete="false" classfield_id="98" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_2" canDelete="false" classfield_id="98" role_id="1" >
+        <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_2" canDelete="false" classfield_id="98" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_3" canDelete="false" classfield_id="98" role_id="1" >
+        <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_3" canDelete="false" classfield_id="98" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_4" canDelete="false" classfield_id="98" role_id="1" >
+        <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_4" canDelete="false" classfield_id="98" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    dicomdir.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    dicomdir.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:16&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="98" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="98" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="98" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="98" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" classfield_id="98" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" classfield_id="98" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_1" canDelete="false" classfield_id="98" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_1" canDelete="false" classfield_id="98" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_2" canDelete="false" classfield_id="98" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_2" canDelete="false" classfield_id="98" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_3" canDelete="false" classfield_id="98" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_3" canDelete="false" classfield_id="98" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_4" canDelete="false" classfield_id="98" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_4" canDelete="false" classfield_id="98" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" classfield_id="106" role_id="1" >
+        <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" classfield_id="106" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" classfield_id="106" role_id="1" >
+        <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" classfield_id="106" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" classfield_id="106" role_id="1" >
+        <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" classfield_id="106" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" classfield_id="106" role_id="1" >
+        <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" classfield_id="106" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" classfield_id="106" role_id="1" >
+        <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" classfield_id="106" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    header.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    header.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:19&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="106" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="106" field_type="3" initialValue="" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="106" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="106" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" classfield_id="106" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" classfield_id="106" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" classfield_id="106" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" classfield_id="106" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" classfield_id="106" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" classfield_id="106" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" classfield_id="106" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" classfield_id="106" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" classfield_id="106" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" classfield_id="106" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" classfield_id="98" role_id="0" >
+        <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" classfield_id="98" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_1" canDelete="false" classfield_id="98" role_id="0" >
+        <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_1" canDelete="false" classfield_id="98" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_2" canDelete="false" classfield_id="98" role_id="0" >
+        <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_2" canDelete="false" classfield_id="98" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_3" canDelete="false" classfield_id="98" role_id="0" >
+        <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_3" canDelete="false" classfield_id="98" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_4" canDelete="false" classfield_id="98" role_id="0" >
+        <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_4" canDelete="false" classfield_id="98" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_5" canDelete="false" classfield_id="99" role_id="1" >
+        <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_5" canDelete="false" classfield_id="99" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_6" canDelete="false" classfield_id="99" role_id="1" >
+        <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_6" canDelete="false" classfield_id="99" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_7" canDelete="false" classfield_id="99" role_id="1" >
+        <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_7" canDelete="false" classfield_id="99" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_8" canDelete="false" classfield_id="99" role_id="1" >
+        <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_8" canDelete="false" classfield_id="99" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_9" canDelete="false" classfield_id="99" role_id="1" >
+        <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_9" canDelete="false" classfield_id="99" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    patient.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    patient.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:20&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="98" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="98" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="98" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="98" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" classfield_id="98" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" classfield_id="98" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_1" canDelete="false" classfield_id="98" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_1" canDelete="false" classfield_id="98" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_2" canDelete="false" classfield_id="98" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_2" canDelete="false" classfield_id="98" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_3" canDelete="false" classfield_id="98" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_3" canDelete="false" classfield_id="98" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_4" canDelete="false" classfield_id="98" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_4" canDelete="false" classfield_id="98" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
       </codeclassfield>
-      <codeclassfield parent_id="99" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="99" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="99" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="99" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_5" canDelete="false" classfield_id="99" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_5" canDelete="false" classfield_id="99" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_6" canDelete="false" classfield_id="99" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_6" canDelete="false" classfield_id="99" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_7" canDelete="false" classfield_id="99" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_7" canDelete="false" classfield_id="99" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_8" canDelete="false" classfield_id="99" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_8" canDelete="false" classfield_id="99" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_9" canDelete="false" classfield_id="99" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_9" canDelete="false" classfield_id="99" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_0" canDelete="false" classfield_id="99" role_id="0" >
+        <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_0" canDelete="false" classfield_id="99" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_1" canDelete="false" classfield_id="99" role_id="0" >
+        <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_1" canDelete="false" classfield_id="99" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_2" canDelete="false" classfield_id="99" role_id="0" >
+        <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_2" canDelete="false" classfield_id="99" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_3" canDelete="false" classfield_id="99" role_id="0" >
+        <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_3" canDelete="false" classfield_id="99" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_4" canDelete="false" classfield_id="99" role_id="0" >
+        <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_4" canDelete="false" classfield_id="99" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_5" canDelete="false" classfield_id="100" role_id="1" >
+        <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_5" canDelete="false" classfield_id="100" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_6" canDelete="false" classfield_id="100" role_id="1" >
+        <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_6" canDelete="false" classfield_id="100" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_7" canDelete="false" classfield_id="100" role_id="1" >
+        <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_7" canDelete="false" classfield_id="100" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_8" canDelete="false" classfield_id="100" role_id="1" >
+        <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_8" canDelete="false" classfield_id="100" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_9" canDelete="false" classfield_id="100" role_id="1" >
+        <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_9" canDelete="false" classfield_id="100" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    study.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    study.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:21&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="99" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="99" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="99" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="99" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_0" canDelete="false" classfield_id="99" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_0" canDelete="false" classfield_id="99" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_1" canDelete="false" classfield_id="99" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_1" canDelete="false" classfield_id="99" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_2" canDelete="false" classfield_id="99" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_2" canDelete="false" classfield_id="99" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_3" canDelete="false" classfield_id="99" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_3" canDelete="false" classfield_id="99" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_4" canDelete="false" classfield_id="99" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_4" canDelete="false" classfield_id="99" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
       </codeclassfield>
-      <codeclassfield parent_id="100" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="100" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="100" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="100" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_5" canDelete="false" classfield_id="100" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_5" canDelete="false" classfield_id="100" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_6" canDelete="false" classfield_id="100" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_6" canDelete="false" classfield_id="100" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_7" canDelete="false" classfield_id="100" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_7" canDelete="false" classfield_id="100" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_8" canDelete="false" classfield_id="100" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_8" canDelete="false" classfield_id="100" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_9" canDelete="false" classfield_id="100" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_9" canDelete="false" classfield_id="100" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_0" canDelete="false" classfield_id="100" role_id="0" >
+        <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_0" canDelete="false" classfield_id="100" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_1" canDelete="false" classfield_id="100" role_id="0" >
+        <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_1" canDelete="false" classfield_id="100" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_2" canDelete="false" classfield_id="100" role_id="0" >
+        <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_2" canDelete="false" classfield_id="100" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_3" canDelete="false" classfield_id="100" role_id="0" >
+        <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_3" canDelete="false" classfield_id="100" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_4" canDelete="false" classfield_id="100" role_id="0" >
+        <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_4" canDelete="false" classfield_id="100" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_5" canDelete="false" classfield_id="101" role_id="1" >
+        <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_5" canDelete="false" classfield_id="101" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_6" canDelete="false" classfield_id="101" role_id="1" >
+        <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_6" canDelete="false" classfield_id="101" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_7" canDelete="false" classfield_id="101" role_id="1" >
+        <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_7" canDelete="false" classfield_id="101" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_8" canDelete="false" classfield_id="101" role_id="1" >
+        <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_8" canDelete="false" classfield_id="101" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_9" canDelete="false" classfield_id="101" role_id="1" >
+        <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_9" canDelete="false" classfield_id="101" role_id="0" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    serie.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    serie.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:23&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="100" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="100" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="100" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="100" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_0" canDelete="false" classfield_id="100" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_0" canDelete="false" classfield_id="100" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_1" canDelete="false" classfield_id="100" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_1" canDelete="false" classfield_id="100" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_2" canDelete="false" classfield_id="100" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_2" canDelete="false" classfield_id="100" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_3" canDelete="false" classfield_id="100" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_3" canDelete="false" classfield_id="100" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_4" canDelete="false" classfield_id="100" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_4" canDelete="false" classfield_id="100" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
       </codeclassfield>
-      <codeclassfield parent_id="101" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="101" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="101" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="101" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_5" canDelete="false" classfield_id="101" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_5" canDelete="false" classfield_id="101" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_6" canDelete="false" classfield_id="101" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_6" canDelete="false" classfield_id="101" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_7" canDelete="false" classfield_id="101" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_7" canDelete="false" classfield_id="101" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_8" canDelete="false" classfield_id="101" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_8" canDelete="false" classfield_id="101" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_9" canDelete="false" classfield_id="101" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_9" canDelete="false" classfield_id="101" role_id="0" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_0" canDelete="false" classfield_id="101" role_id="0" >
+        <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_0" canDelete="false" classfield_id="101" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_1" canDelete="false" classfield_id="101" role_id="0" >
+        <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_1" canDelete="false" classfield_id="101" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_2" canDelete="false" classfield_id="101" role_id="0" >
+        <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_2" canDelete="false" classfield_id="101" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_3" canDelete="false" classfield_id="101" role_id="0" >
+        <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_3" canDelete="false" classfield_id="101" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_4" canDelete="false" classfield_id="101" role_id="0" >
+        <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_4" canDelete="false" classfield_id="101" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    image.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    image.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:01:58&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="101" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="101" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="101" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="101" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_0" canDelete="false" classfield_id="101" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_0" canDelete="false" classfield_id="101" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_1" canDelete="false" classfield_id="101" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_1" canDelete="false" classfield_id="101" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_2" canDelete="false" classfield_id="101" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_2" canDelete="false" classfield_id="101" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_3" canDelete="false" classfield_id="101" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_3" canDelete="false" classfield_id="101" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_4" canDelete="false" classfield_id="101" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_4" canDelete="false" classfield_id="101" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    headerhelper.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    headerhelper.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:01:58&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields/>
     </classifiercodedocument>
         <cppcodedocumentation tag="" text="Methods" />
        </header>
        <textblocks>
-        <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" classfield_id="106" role_id="0" >
+        <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" classfield_id="106" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" classfield_id="106" role_id="0" >
+        <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" classfield_id="106" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" classfield_id="106" role_id="0" >
+        <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" classfield_id="106" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" classfield_id="106" role_id="0" >
+        <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" classfield_id="106" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
         </codeaccessormethod>
-        <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" classfield_id="106" role_id="0" >
+        <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" classfield_id="106" role_id="1" >
          <header>
           <cppcodedocumentation tag="" />
          </header>
       </hierarchicalcodeblock>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    file.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    file.cpp - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.cpp&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:04:21&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="106" field_type="3" initialValue="" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="106" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="106" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text="FIX ME;" >
+       <ccfdeclarationcodeblock parent_id="106" tag="" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text="FIX ME;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" classfield_id="106" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" classfield_id="106" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" classfield_id="106" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" classfield_id="106" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" classfield_id="106" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" classfield_id="106" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" classfield_id="106" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" classfield_id="106" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" classfield_id="106" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" classfield_id="106" role_id="1" >
         <header>
          <cppcodedocumentation tag="" />
         </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    docentryset.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    docentryset.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:21:39&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields/>
     </classifiercodedocument>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="51" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" SeqItem ;" >
+              <ccfdeclarationcodeblock parent_id="51" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
               </ccfdeclarationcodeblock>
-              <ccfdeclarationcodeblock parent_id="79" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+              <ccfdeclarationcodeblock parent_id="79" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" SeqEntry ;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
+                  <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
+                  <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
+                  <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
+                  <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
+                  <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
+                  <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
+                  <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
+                  <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
+                  <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
+                  <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    seqitem.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    seqitem.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:21:16&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="51" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="51" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="51" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" SeqItem ;" >
+       <ccfdeclarationcodeblock parent_id="51" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
       </codeclassfield>
-      <codeclassfield parent_id="79" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="79" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="79" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+       <ccfdeclarationcodeblock parent_id="79" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" SeqEntry ;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="52" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" ElementSet ;" >
+              <ccfdeclarationcodeblock parent_id="52" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
+                  <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
+                  <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
+                  <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
+                  <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
+                  <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    elementset.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    elementset.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:23:11&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="52" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="52" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="52" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" ElementSet ;" >
+       <ccfdeclarationcodeblock parent_id="52" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="51" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+              <ccfdeclarationcodeblock parent_id="51" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" SeqItem ;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
               </ccfdeclarationcodeblock>
-              <ccfdeclarationcodeblock parent_id="52" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+              <ccfdeclarationcodeblock parent_id="52" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" ElementSet ;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
+                  <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
+                  <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
+                  <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
+                  <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
+                  <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
+                  <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
+                  <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
+                  <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
+                  <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
+                  <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    docentry.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:54&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    docentry.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:15:16&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="51" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="51" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="51" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+       <ccfdeclarationcodeblock parent_id="51" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" SeqItem ;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="51" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="51" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="51" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="51" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="51" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="51" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
       </codeclassfield>
-      <codeclassfield parent_id="52" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="52" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="52" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+       <ccfdeclarationcodeblock parent_id="52" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" ElementSet ;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="52" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="52" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="52" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="52" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="52" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="52" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="79" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" SeqEntry ;" >
+              <ccfdeclarationcodeblock parent_id="79" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
+                  <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
+                  <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
+                  <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
+                  <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
+                  <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    seqentry.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    seqentry.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:01:58&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="79" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="79" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="79" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" SeqEntry ;" >
+       <ccfdeclarationcodeblock parent_id="79" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="79" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="79" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="79" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="79" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="79" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="79" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
                 <cppcodedocumentation tag="" indentLevel="1" text="Constructors" />
                </header>
                <textblocks>
-                <codeblockwithcomments tag="emptyconstructor" writeOutText="false" indentLevel="1" text="ElementaryEntry ( ) { }" >
+                <codeblockwithcomments tag="emptyconstructor" writeOutText="false" indentLevel="1" text="ValEntry ( ) { }" >
                  <header>
                   <cppcodedocumentation tag="" indentLevel="1" text="Empty Constructor" />
                  </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    valentry.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:25:13&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    valentry.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:01:58&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields/>
     </classifiercodedocument>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="86" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" DictEntry ;" >
+              <ccfdeclarationcodeblock parent_id="86" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
+                  <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
+                  <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
+                  <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
+                  <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
+                  <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    dictentry.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    dictentry.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:08&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="86" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="86" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="86" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" DictEntry ;" >
+       <ccfdeclarationcodeblock parent_id="86" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="86" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+              <ccfdeclarationcodeblock parent_id="86" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" DictEntry ;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
               </ccfdeclarationcodeblock>
-              <ccfdeclarationcodeblock parent_id="87" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Dict ;" >
+              <ccfdeclarationcodeblock parent_id="87" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
+                  <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
+                  <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
+                  <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
+                  <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
+                  <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
+                  <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
+                  <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
+                  <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
+                  <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
+                  <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    dict.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    dict.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:23:27&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="86" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="86" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="86" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+       <ccfdeclarationcodeblock parent_id="86" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" DictEntry ;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="86" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="86" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="86" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="86" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="86" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="86" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
       </codeclassfield>
-      <codeclassfield parent_id="87" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="87" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="87" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Dict ;" >
+       <ccfdeclarationcodeblock parent_id="87" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="87" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+              <ccfdeclarationcodeblock parent_id="87" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Dict ;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
+                  <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
+                  <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
+                  <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
+                  <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
+                  <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    dictset.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    dictset.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:01:58&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="87" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="87" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="87" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+       <ccfdeclarationcodeblock parent_id="87" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Dict ;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="87" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="87" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="87" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="87" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="87" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="87" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    document.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    document.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:12&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields/>
     </classifiercodedocument>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="98" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" DicomDir ;" >
+              <ccfdeclarationcodeblock parent_id="98" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
+                  <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
+                  <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
+                  <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
+                  <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
+                  <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    dicomdir.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    dicomdir.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:16&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="98" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="98" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="98" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" DicomDir ;" >
+       <ccfdeclarationcodeblock parent_id="98" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="106" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Header ;" >
+              <ccfdeclarationcodeblock parent_id="106" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" File ;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
+                  <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
+                  <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
+                  <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
+                  <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
+                  <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    header.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    header.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:19&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="106" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="106" field_type="3" initialValue="" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="106" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Header ;" >
+       <ccfdeclarationcodeblock parent_id="106" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" File ;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="98" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+              <ccfdeclarationcodeblock parent_id="98" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" DicomDir ;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
               </ccfdeclarationcodeblock>
-              <ccfdeclarationcodeblock parent_id="99" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Patient ;" >
+              <ccfdeclarationcodeblock parent_id="99" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
+                  <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
+                  <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
+                  <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
+                  <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
+                  <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
+                  <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
+                  <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
+                  <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
+                  <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
+                  <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    patient.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    patient.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:20&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="98" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="98" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="98" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+       <ccfdeclarationcodeblock parent_id="98" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" DicomDir ;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="98" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="98" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="98" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="98" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="98" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="98" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
       </codeclassfield>
-      <codeclassfield parent_id="99" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="99" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="99" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Patient ;" >
+       <ccfdeclarationcodeblock parent_id="99" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="99" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+              <ccfdeclarationcodeblock parent_id="99" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Patient ;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
               </ccfdeclarationcodeblock>
-              <ccfdeclarationcodeblock parent_id="100" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" study ;" >
+              <ccfdeclarationcodeblock parent_id="100" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
+                  <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
+                  <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
+                  <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
+                  <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
+                  <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
+                  <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
+                  <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
+                  <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
+                  <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
+                  <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    study.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    study.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:21&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="99" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="99" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="99" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+       <ccfdeclarationcodeblock parent_id="99" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Patient ;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="99" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="99" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="99" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="99" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="99" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="99" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
       </codeclassfield>
-      <codeclassfield parent_id="100" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="100" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="100" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" study ;" >
+       <ccfdeclarationcodeblock parent_id="100" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="100" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+              <ccfdeclarationcodeblock parent_id="100" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" study ;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
               </ccfdeclarationcodeblock>
-              <ccfdeclarationcodeblock parent_id="101" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Serie ;" >
+              <ccfdeclarationcodeblock parent_id="101" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
+                  <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
+                  <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
+                  <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
+                  <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
+                  <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
+                  <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
+                  <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
+                  <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
+                  <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
+                  <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    serie.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    serie.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:14:23&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="100" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="100" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="100" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+       <ccfdeclarationcodeblock parent_id="100" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" study ;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="100" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="100" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="100" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="100" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="100" tag="hblock_tag_5" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="100" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
       </codeclassfield>
-      <codeclassfield parent_id="101" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="101" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="101" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Serie ;" >
+       <ccfdeclarationcodeblock parent_id="101" tag="tblock_1" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
+       <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_6" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
+       <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_7" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
+       <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_8" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
+       <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_9" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
+       <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_10" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="101" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+              <ccfdeclarationcodeblock parent_id="101" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Serie ;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
+                  <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
+                  <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
+                  <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
+                  <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
+                  <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    image.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    image.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:01:58&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="101" field_type="3" initialValue=" new vector( )" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="101" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="101" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" vector Vector;" >
+       <ccfdeclarationcodeblock parent_id="101" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Serie ;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="101" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="101" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="101" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="101" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="101" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="101" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    headerhelper.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    headerhelper.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:01:58&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields/>
     </classifiercodedocument>
               <cppcodedocumentation tag="" indentLevel="1" text="Fields" />
              </header>
              <textblocks>
-              <ccfdeclarationcodeblock parent_id="106" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" File ;" >
+              <ccfdeclarationcodeblock parent_id="106" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Header ;" >
                <header>
                 <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                </header>
                   <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
                  </header>
                  <textblocks>
-                  <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
+                  <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
+                  <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
+                  <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
+                  <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
                   </codeaccessormethod>
-                  <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
+                  <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
                    <header>
                     <cppcodedocumentation tag="" indentLevel="1" />
                    </header>
       </codeblockwithcomments>
      </textblocks>
      <header>
-      <codecomment tag="" text="/************************************************************************&amp;#010;                    file.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Fri Apr 30 2004 at 15:23:15&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
+      <codecomment tag="" text="/************************************************************************&amp;#010;                    file.h - Copyright frog&amp;#010;&amp;#010;Here you can write a license for your code, some comments or any other&amp;#010;information you want to have in your generated code. To to this simply&amp;#010;configure the &quot;headings&quot; directory in uml to point to a directory&amp;#010;where you have your heading files.&amp;#010;&amp;#010;or you can just replace the contents of this file with your own.&amp;#010;If you want to do this, this file is located at&amp;#010;&amp;#010;/usr/share/apps/umbrello/headings/heading.h&amp;#010;&amp;#010;-->Code Generators searches for heading files based on the file extension&amp;#010;   i.e. it will look for a file name ending in &quot;.h&quot; to include in C++ header&amp;#010;   files, and for a file name ending in &quot;.java&quot; to include in all generated&amp;#010;   java code.&amp;#010;   If you name the file &quot;heading.&lt;extension>&quot;, Code Generator will always&amp;#010;   choose this file even if there are other files with the same extension in the&amp;#010;   directory. If you name the file something else, it must be the only one with that&amp;#010;   extension in the directory to guarantee that Code Generator will choose it.&amp;#010;&amp;#010;you can use variables in your heading files which are replaced at generation&amp;#010;time. possible variables are : author, date, time, filename and filepath.&amp;#010;just write %variable_name%&amp;#010;&amp;#010;This file was generated on Wed Sep 29 2004 at 16:04:21&amp;#010;The original location of this file is &amp;#010;**************************************************************************/&amp;#010;" />
      </header>
      <classfields>
-      <codeclassfield parent_id="106" field_type="3" initialValue="" role_id="0" writeOutMethods="true" listClassName="" >
+      <codeclassfield parent_id="106" field_type="3" initialValue="" role_id="1" writeOutMethods="true" listClassName="" >
        <header>
         <cppcodedocumentation tag="" />
        </header>
-       <ccfdeclarationcodeblock parent_id="106" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="0" text=" File ;" >
+       <ccfdeclarationcodeblock parent_id="106" tag="tblock_0" canDelete="false" writeOutText="false" indentLevel="1" role_id="1" text=" Header ;" >
         <header>
          <cppcodedocumentation tag="" writeOutText="false" indentLevel="1" />
         </header>
        </ccfdeclarationcodeblock>
-       <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
+       <codeaccessormethod accessType="0" parent_id="106" tag="hblock_tag_0" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
+       <codeaccessormethod accessType="1" parent_id="106" tag="hblock_tag_1" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
+       <codeaccessormethod accessType="2" parent_id="106" tag="hblock_tag_2" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
+       <codeaccessormethod accessType="3" parent_id="106" tag="hblock_tag_3" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
        </codeaccessormethod>
-       <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="0" >
+       <codeaccessormethod accessType="4" parent_id="106" tag="hblock_tag_4" canDelete="false" writeOutText="false" indentLevel="1" classfield_id="106" role_id="1" >
         <header>
          <cppcodedocumentation tag="" indentLevel="1" />
         </header>
diff --git a/Makefile.am b/Makefile.am
deleted file mode 100644 (file)
index 74028f0..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-SUBDIRS = src vtk gdcmPython Test Dicts Doc
-
-EXTRA_DIST = \
-       AUTHORS \
-       ChangeLog \
-       COPYING \
-       INSTALL \
-       NEWS \
-       README \
-       TODO \
-       gdcm.spec \
-       gdcm.dsw
-
-release:
-       $(MAKE) dist distdir=$(PACKAGE)-$(VERSION)
-
-snapshot:
-       $(MAKE) dist distdir=$(PACKAGE)`date +"%y%m%d"`
diff --git a/acinclude.m4 b/acinclude.m4
deleted file mode 100644 (file)
index b70c7c4..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-## this one is commonly used with AM_PATH_PYTHONDIR ...
-dnl AM_CHECK_PYMOD(MODNAME [,SYMBOL [,ACTION-IF-FOUND [,ACTION-IF-NOT-FOUND]]])
-dnl Check if a module containing a given symbol is visible to python.
-AC_DEFUN(AM_CHECK_PYMOD,
-[AC_REQUIRE([AM_PATH_PYTHON])
-py_mod_var=`echo $1['_']$2 | sed 'y%./+-%__p_%'`
-AC_MSG_CHECKING(for ifelse([$2],[],,[$2 in ])python module $1)
-AC_CACHE_VAL(py_cv_mod_$py_mod_var, [
-ifelse([$2],[], [prog="
-import sys
-try:
-        import $1
-except ImportError:
-        sys.exit(1)
-except:
-        sys.exit(0)
-sys.exit(0)"], [prog="
-import $1
-$1.$2"])
-if $PYTHON -c "$prog" 1>&AC_FD_CC 2>&AC_FD_CC
-  then
-    eval "py_cv_mod_$py_mod_var=yes"
-  else
-    eval "py_cv_mod_$py_mod_var=no"
-  fi
-])
-py_val=`eval "echo \`echo '$py_cv_mod_'$py_mod_var\`"`
-if test "x$py_val" != xno; then
-  AC_MSG_RESULT(yes)
-  ifelse([$3], [],, [$3
-])dnl
-else
-  AC_MSG_RESULT(no)
-  ifelse([$4], [],, [$4
-])dnl
-fi
-])
-
-dnl a macro to check for ability to create python extensions
-dnl  AM_CHECK_PYTHON_HEADERS([ACTION-IF-POSSIBLE], [ACTION-IF-NOT-POSSIBLE])
-dnl function also defines PYTHON_INCLUDES
-AC_DEFUN([AM_CHECK_PYTHON_HEADERS],
-[AC_REQUIRE([AM_PATH_PYTHON])
-AC_MSG_CHECKING(for headers required to compile python extensions)
-dnl deduce PYTHON_INCLUDES
-py_prefix=`$PYTHON -c "import sys; print sys.prefix"`
-py_exec_prefix=`$PYTHON -c "import sys; print sys.exec_prefix"`
-PYTHON_INCLUDES="-I${py_prefix}/include/python${PYTHON_VERSION}"
-if test "$py_prefix" != "$py_exec_prefix"; then
-  PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION}"
-fi
-echo py_prefix= $py_prefix
-echo py_exec_prefix= $py_exec_prefix
-AC_SUBST(PYTHON_INCLUDES)
-dnl check if the headers exist:
-save_CPPFLAGS="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $PYTHON_INCLUDES"
-AC_TRY_CPP([#include <Python.h>],dnl
-[AC_MSG_RESULT(found)
-$1],dnl
-[AC_MSG_RESULT(not found)
-$2])
-CPPFLAGS="$save_CPPFLAGS"
-])
-
diff --git a/autogen.sh b/autogen.sh
deleted file mode 100755 (executable)
index 8317d9a..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
-#!/bin/sh
-# Run this to generate all the initial makefiles, etc.
-
-srcdir=`dirname $0`
-test -z "$srcdir" && srcdir=.
-
-PKG_NAME="gdcm"
-
-(test -f $srcdir/configure.in \
-  && test -d $srcdir/src) || {
-     echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
-     echo " top-level crea directory"
-     exit 1
-}
-
-
-DIE=0
-
-(autoconf --version) < /dev/null > /dev/null 2>&1 || {
-  echo
-  echo "**Error**: You must have \`autoconf' installed to compile Gnome."
-  echo "Download the appropriate package for your distribution,"
-  echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
-  DIE=1
-}
-
-(grep "^AM_PROG_LIBTOOL" $srcdir/configure.in >/dev/null) && {
-  (libtool --version) < /dev/null > /dev/null 2>&1 || {
-    echo
-    echo "**Error**: You must have \`libtool' installed to compile Gnome."
-    echo "Get ftp://ftp.gnu.org/pub/gnu/libtool-1.2d.tar.gz"
-    echo "(or a newer version if it is available)"
-    DIE=1
-  }
-}
-
-grep "^AM_GNU_GETTEXT" $srcdir/configure.in >/dev/null && {
-  grep "sed.*POTFILES" $srcdir/configure.in >/dev/null || \
-  (gettext --version) < /dev/null > /dev/null 2>&1 || {
-    echo
-    echo "**Error**: You must have \`gettext' installed to compile Gnome."
-    echo "Get ftp://alpha.gnu.org/gnu/gettext-0.10.35.tar.gz"
-    echo "(or a newer version if it is available)"
-    DIE=1
-  }
-}
-
-(automake --version) < /dev/null > /dev/null 2>&1 || {
-  echo
-  echo "**Error**: You must have \`automake' installed to compile Gnome."
-  echo "Get ftp://ftp.gnu.org/pub/gnu/automake-1.3.tar.gz"
-  echo "(or a newer version if it is available)"
-  DIE=1
-  NO_AUTOMAKE=yes
-}
-
-
-# if no automake, don't bother testing for aclocal
-test -n "$NO_AUTOMAKE" || (aclocal --version) < /dev/null > /dev/null 2>&1 || {
-  echo
-  echo "**Error**: Missing \`aclocal'.  The version of \`automake'"
-  echo "installed doesn't appear recent enough."
-  echo "Get ftp://ftp.gnu.org/pub/gnu/automake-1.3.tar.gz"
-  echo "(or a newer version if it is available)"
-  DIE=1
-}
-
-if test "$DIE" -eq 1; then
-  exit 1
-fi
-
-if test -z "$*"; then
-  echo "**Warning**: I am going to run \`configure' with no arguments."
-  echo "If you wish to pass any to it, please specify them on the"
-  echo \`$0\'" command line."
-  echo
-fi
-
-case $CC in
-xlc )
-  am_opt=--include-deps;;
-esac
-
-for coin in `find $srcdir -name configure.in -print`
-do 
-  dr=`dirname $coin`
-  if test -f $dr/NO-AUTO-GEN; then
-    echo skipping $dr -- flagged as no auto-gen
-  else
-    echo processing $dr
-    macrodirs=`sed -n -e 's,AM_ACLOCAL_INCLUDE(\(.*\)),\1,gp' < $coin`
-    ( cd $dr
-      aclocalinclude="-I . $ACLOCAL_FLAGS"
-      for k in $macrodirs; do
-       if test -d $k; then
-          aclocalinclude="$aclocalinclude -I $k"
-       ##else 
-       ##  echo "**Warning**: No such directory \`$k'.  Ignored."
-        fi
-      done
-      if grep "^AM_GNU_GETTEXT" configure.in >/dev/null; then
-       if grep "sed.*POTFILES" configure.in >/dev/null; then
-         : do nothing -- we still have an old unmodified configure.in
-       else
-         echo "Creating $dr/aclocal.m4 ..."
-         test -r $dr/aclocal.m4 || touch $dr/aclocal.m4
-         echo "Running gettextize...  Ignore non-fatal messages."
-         echo "no" | gettextize --force --copy
-         echo "Making $dr/aclocal.m4 writable ..."
-         test -r $dr/aclocal.m4 && chmod u+w $dr/aclocal.m4
-        fi
-      fi
-      if grep "^AM_PROG_LIBTOOL" configure.in >/dev/null; then
-       echo "Running libtoolize..."
-       libtoolize --force --copy
-      fi
-      echo "Running aclocal $aclocalinclude ..."
-      aclocal $aclocalinclude
-      if grep "^AM_CONFIG_HEADER" configure.in >/dev/null; then
-       echo "Running autoheader..."
-       autoheader
-      fi
-      echo "Running automake --gnu $am_opt ..."
-      automake --add-missing --gnu $am_opt
-      echo "Running autoconf ..."
-      autoconf
-    )
-  fi
-done
-
-conf_flags="--enable-maintainer-mode --enable-compile-warnings" #--enable-iso-c
-
-if test x$NOCONFIGURE = x; then
-  echo Running $srcdir/configure $conf_flags "$@" ...
-  $srcdir/configure $conf_flags "$@" \
-  && echo Now type \`make\' to compile $PKG_NAME || exit 1
-else
-  echo Skipping configure process.
-fi
diff --git a/configure.in b/configure.in
deleted file mode 100644 (file)
index 7164f9a..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-dnl Process this file with autoconf to produce a configure script.
-AC_INIT(src/gdcmDict.cxx)
-
-AM_INIT_AUTOMAKE(gdcm, 0.3.0)
-AM_MAINTAINER_MODE
-AM_CONFIG_HEADER(src/config.h)
-
-dnl Checks for programs.
-AM_PROG_LIBTOOL
-AC_PROG_CXX
-AC_PROG_CC
-AC_PROG_CPP
-AC_PROG_INSTALL
-AC_PROG_LN_S
-AC_PROG_MAKE_SET
-
-dnl Checks for header files.
-AC_HEADER_STDC
-
-dnl Checks for typedefs, structures, and compiler characteristics.
-AC_C_CONST
-AC_TYPE_SIZE_T
-AC_STRUCT_TM
-
-dnl Checks for endianness
-AC_C_BIGENDIAN
-
-dnl Checks for int and long size
-AC_CHECK_SIZEOF(char, 1)
-AC_CHECK_SIZEOF(short, 2)
-AC_CHECK_SIZEOF(int, 4)
-AC_CHECK_SIZEOF(long, 4)
-AC_CHECK_SIZEOF(long long, 8)
-
-AC_CHECK_PROG(DOXYGEN, doxygen, true, false)
-AM_CONDITIONAL(HAVE_DOXYGEN, $DOXYGEN)
-AC_SUBST(HAVE_DOXYGEN)
-
-dnl Let people disable the doxygen stuff.
-AC_ARG_ENABLE(docygen,
-  [  --enable-doxygen        Use doxygen to build documentation (default=auto)],
-  [enable_doxygen="$enableval"],
-  [enable_doxygen=auto])
-
-if test x$enable_doxygen = xauto ; then
-  if test x$DOXYGEN = xtrue ; then
-    enable_doxygen=yes
-  else
-    enable_doxygen=no
-  fi
-fi
-
-dnl NOTE: We need to use a separate automake conditional for this
-dnl       to make this work with the tarballs.
-AM_CONDITIONAL(ENABLE_DOXYGEN, test x$enable_doxygen = xyes)
-
-dnl Checks for Python
-AC_ARG_ENABLE(python,
-     [  --enable-python         Enable Python language support (default=no).],
-     ,
-     [enable_python="no"])
-dnl AC_MSG_RESULT($enable_python)
-build_python=no
-if test "yes" = "$enable_python"; then
-    AM_PATH_PYTHON(2.0.0)
-    if test -n "$PYTHON"; then
-        AM_CHECK_PYTHON_HEADERS(,[AC_MSG_ERROR(could not find Python headers)])
-        build_python=yes;
-    fi
-    AC_CHECK_PROGS(SWIG, swig13)
-fi
-AM_CONDITIONAL(BUILD_PYTHON, test x$build_python = xyes)
-
-dnl Checks for vtk
-AC_ARG_ENABLE(vtk,
-    [  --enable-vtk            Enable vtk extensions support (default=no).],
-    ,
-    [enable_vtk="no"])
-AM_CONDITIONAL(BUILD_VTK, test x$enable_vtk = xyes)
-
-dnl produce Makefile.in files
-AC_OUTPUT([
-Makefile 
-gdcm.spec
-src/Makefile
-src/jpeg/Makefile
-src/jpeg/libijg8/Makefile
-src/jpeg/libijg12/Makefile
-src/jpeg/ljpg/Makefile
-gdcmPython/Makefile
-Test/Makefile
-Dicts/Makefile
-vtk/Makefile
-Doc/Makefile])
diff --git a/gdcm.dsw b/gdcm.dsw
deleted file mode 100644 (file)
index 838a0c0..0000000
--- a/gdcm.dsw
+++ /dev/null
@@ -1,197 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "_vtkGdcm"=.\GDCMPYTHON\WIN32\_vtkGdcm.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name libgdcmljpeg
-    End Project Dependency
-    Begin Project Dependency
-    Project_Dep_Name libgdcmijpeg8
-    End Project Dependency
-    Begin Project Dependency
-    Project_Dep_Name libgdcmijpeg12
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Project: "gdcmTest"=.\TEST\WIN32\gdcmTest.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name gdcmdll
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Project: "gdcmTestDicomDir"=.\TEST\WIN32\gdcmTestDicomDir.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name gdcmdll
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Project: "gdcmTestDicomDir2"=.\TEST\WIN32\gdcmTestDicomDir2.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name gdcmdll
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Project: "gdcmdll"=.\src\win32\gdcmdll.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name libgdcmljpeg
-    End Project Dependency
-    Begin Project Dependency
-    Project_Dep_Name libgdcmijpeg8
-    End Project Dependency
-    Begin Project Dependency
-    Project_Dep_Name libgdcmijpeg12
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Project: "gdcmpyembedded"=.\gdcmPython\win32\gdcmpyembedded.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name libgdcmljpeg
-    End Project Dependency
-    Begin Project Dependency
-    Project_Dep_Name libgdcmijpeg8
-    End Project Dependency
-    Begin Project Dependency
-    Project_Dep_Name libgdcmijpeg12
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Project: "libgdcmijpeg12"=.\SRC\WIN32\libgdcmijpeg12.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "libgdcmijpeg8"=.\SRC\WIN32\libgdcmijpeg8.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "libgdcmljpeg"=.\SRC\WIN32\libgdcmljpeg.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "vtkGdcmTest"=.\VTK\WIN32\vtkGdcmTest.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name vtkgdcm
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Project: "vtkgdcm"=.\VTK\WIN32\vtkgdcm.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-    Begin Project Dependency
-    Project_Dep_Name libgdcmljpeg
-    End Project Dependency
-    Begin Project Dependency
-    Project_Dep_Name libgdcmijpeg8
-    End Project Dependency
-    Begin Project Dependency
-    Project_Dep_Name libgdcmijpeg12
-    End Project Dependency
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
similarity index 100%
rename from WrapVTK.py
rename to gdcmPython/SetupOldies/WrapVTK.py
similarity index 100%
rename from gdcmVersion.py
rename to gdcmPython/gdcmVersion.py
diff --git a/python.m4 b/python.m4
deleted file mode 100644 (file)
index 6b6caee..0000000
--- a/python.m4
+++ /dev/null
@@ -1,129 +0,0 @@
-## ------------------------
-## Python file handling
-## From Andrew Dalke
-## Updated by James Henstridge
-## ------------------------
-
-# AM_PATH_PYTHON([MINIMUM-VERSION])
-
-# Adds support for distributing Python modules and packages.  To
-# install modules, copy them to $(pythondir), using the python_PYTHON
-# automake variable.  To install a package with the same name as the
-# automake package, install to $(pkgpythondir), or use the
-# pkgpython_PYTHON automake variable.
-
-# The variables $(pyexecdir) and $(pkgpyexecdir) are provided as
-# locations to install python extension modules (shared libraries).
-# Another macro is required to find the appropriate flags to compile
-# extension modules.
-
-# If your package is configured with a different prefix to python,
-# users will have to add the install directory to the PYTHONPATH
-# environment variable, or create a .pth file (see the python
-# documentation for details).
-
-# If the MINIUMUM-VERSION argument is passed, AM_PATH_PYTHON will
-# cause an error if the version of python installed on the system
-# doesn't meet the requirement.  MINIMUM-VERSION should consist of
-# numbers and dots only.
-
-
-AC_DEFUN([AM_PATH_PYTHON],
- [
-  dnl Find a version of Python.  I could check for python versions 1.4
-  dnl or earlier, but the default installation locations changed from
-  dnl $prefix/lib/site-python in 1.4 to $prefix/lib/python1.5/site-packages
-  dnl in 1.5, and I don't want to maintain that logic.
-
-  AC_PATH_PROG(PYTHON, python2 python2.1 python2.0 python python1.6 python1.5)
-
-  dnl should we do the version check?
-  ifelse([$1],[],,[
-    AC_MSG_CHECKING(if Python version >= $1)
-    changequote(<<, >>)dnl
-    prog="
-import sys, string
-minver = '$1'
-pyver = string.split(sys.version)[0]  # first word is version string
-# split strings by '.' and convert to numeric
-minver = map(string.atoi, string.split(minver, '.'))
-pyver = map(string.atoi, string.split(pyver, '.'))
-# we can now do comparisons on the two lists:
-if pyver >= minver:
-       sys.exit(0)
-else:
-       sys.exit(1)"
-    changequote([, ])dnl
-    if $PYTHON -c "$prog" 1>&AC_FD_CC 2>&AC_FD_CC
-    then
-      AC_MSG_RESULT(okay)
-    else
-      AC_MSG_ERROR(too old)
-    fi
-  ])
-
-  AC_MSG_CHECKING([local Python configuration])
-
-  dnl Query Python for its version number.  Getting [:3] seems to be
-  dnl the best way to do this; it's what "site.py" does in the standard
-  dnl library.  Need to change quote character because of [:3]
-
-  AC_SUBST(PYTHON_VERSION)
-  changequote(<<, >>)dnl
-  PYTHON_VERSION=`$PYTHON -c "import sys; print sys.version[:3]"`
-  changequote([, ])dnl
-
-
-  dnl Use the values of $prefix and $exec_prefix for the corresponding
-  dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX.  These are made
-  dnl distinct variables so they can be overridden if need be.  However,
-  dnl general consensus is that you shouldn't need this ability.
-
-  AC_SUBST(PYTHON_PREFIX)
-  PYTHON_PREFIX='${prefix}'
-
-  AC_SUBST(PYTHON_EXEC_PREFIX)
-  PYTHON_EXEC_PREFIX='${exec_prefix}'
-
-  dnl At times (like when building shared libraries) you may want
-  dnl to know which OS platform Python thinks this is.
-
-  AC_SUBST(PYTHON_PLATFORM)
-  PYTHON_PLATFORM=`$PYTHON -c "import sys; print sys.platform"`
-
-
-  dnl Set up 4 directories:
-
-  dnl pythondir -- where to install python scripts.  This is the
-  dnl   site-packages directory, not the python standard library
-  dnl   directory like in previous automake betas.  This behaviour
-  dnl   is more consistent with lispdir.m4 for example.
-  dnl
-  dnl Also, if the package prefix isn't the same as python's prefix,
-  dnl then the old $(pythondir) was pretty useless.
-
-  AC_SUBST(pythondir)
-  pythondir=$PYTHON_PREFIX"/lib/python"$PYTHON_VERSION/site-packages
-
-  dnl pkgpythondir -- $PACKAGE directory under pythondir.  Was
-  dnl   PYTHON_SITE_PACKAGE in previous betas, but this naming is
-  dnl   more consistent with the rest of automake.
-  dnl   Maybe this should be put in python.am?
-
-  AC_SUBST(pkgpythondir)
-  pkgpythondir=\${pythondir}/$PACKAGE
-
-  dnl pyexecdir -- directory for installing python extension modules
-  dnl   (shared libraries)  Was PYTHON_SITE_EXEC in previous betas.
-
-  AC_SUBST(pyexecdir)
-  pyexecdir=$PYTHON_EXEC_PREFIX"/lib/python"$PYTHON_VERSION/site-packages
-
-  dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE)
-  dnl   Maybe this should be put in python.am?
-
-  AC_SUBST(pkgpyexecdir)
-  pkgpyexecdir=\${pyexecdir}/$PACKAGE
-
-  AC_MSG_RESULT([looks good])
-])
index 0e22d4792b7ae9506d90300cc0c35387dabcc87b..f007aca0d262a92f679ab410ad81918838651b15 100644 (file)
@@ -45,7 +45,7 @@ SET(libgdcm_la_SOURCES
    gdcmDicomDirSerie.cxx
    gdcmDicomDirImage.cxx
    gdcmDicomDirObject.cxx
-   gdcmPixelStuff.cxx
+   gdcmPixelConvert.cxx
    )
 
 ADD_LIBRARY(gdcm ${libgdcm_la_SOURCES} )
diff --git a/src/Makefile.am b/src/Makefile.am
deleted file mode 100644 (file)
index 8b4d3a1..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-SUBDIRS = jpeg
-
-LTVERSION = 0:1:0
-
-lib_LTLIBRARIES = libgdcm.la
-
-CXXFLAGS = @CXXFLAGS@ -DPUB_DICT_PATH=\"$(datadir)/gdcm/\" \
-           -D__STDC_LIMIT_MACROS  # Refer to stdint.h
-
-libgdcm_la_LIBADD = \
-   $(top_builddir)/src/jpeg/libijg12/libgdcmijpeg12.la  \
-   $(top_builddir)/src/jpeg/libijg8/libgdcmijpeg8.la    \
-   $(top_builddir)/src/jpeg/ljpg/libgdcmjpg.la
-
-libgdcm_la_SOURCES=                \
-   gdcmDebug.cxx                   \
-   gdcmDicomDir.cxx                \
-   gdcmDicomDirElement.cxx         \
-   gdcmDicomDirImage.cxx           \
-   gdcmDicomDirMeta.cxx            \
-   gdcmDicomDirPatient.cxx         \
-   gdcmDicomDirSerie.cxx           \
-   gdcmDicomDirStudy.cxx           \
-   gdcmDict.cxx                    \
-   gdcmDictEntry.cxx               \
-   gdcmDictSet.cxx                 \
-   gdcmDirList.cxx                 \
-   gdcmException.cxx               \
-   gdcmFile.cxx                    \
-   gdcmGlobal.cxx                  \
-   gdcmHeader.cxx                  \
-   gdcmHeaderEntry.cxx             \
-   gdcmHeaderHelper.cxx            \
-   gdcmJpeg12.cxx                  \
-   gdcmJpeg2000.cxx                \
-   gdcmJpeg.cxx                    \
-   gdcmObject.cxx                  \
-   gdcmParsePixels.cxx             \
-   gdcmParser.cxx                  \
-   gdcmRLE.cxx                     \
-   gdcmTS.cxx                      \
-   gdcmUtil.cxx                    \
-   gdcmVR.cxx
-
-
-libgdcmincludedir = $(includedir)
-libgdcminclude_HEADERS =           \
-   gdcmCommon.h                    \
-   gdcmDebug.h                     \
-   gdcmDicomDir.h                  \
-   gdcmDicomDirElement.h           \
-   gdcmDicomDirImage.h             \
-   gdcmDicomDirMeta.h              \
-   gdcmDicomDirPatient.h           \
-   gdcmDicomDirSerie.h             \
-   gdcmDicomDirStudy.h             \
-   gdcmDictEntry.h                 \
-   gdcmDict.h                      \
-   gdcmDictSet.h                   \
-   gdcmDirList.h                   \
-   gdcmException.h                 \
-   gdcmFile.h                      \
-   gdcmGlobal.h                    \
-   gdcm.h                          \
-   gdcmHeaderEntry.h               \
-   gdcmHeader.h                    \
-   gdcmHeaderHelper.h              \
-   gdcmObject.h                    \
-   gdcmParser.h                    \
-   gdcmVR.h                        \
-   gdcmTS.h
-
-EXTRA_DIST =   \
-       gdcmUtil.h
-
index 8c3cb2796cfa1c0f98e232571c47caffcd74e807..62051158b1acc18cb5bebfd277f9a013b749acb1 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: gdcmFile.cxx,v $
   Language:  C++
-  Date:      $Date: 2004/09/27 08:39:07 $
-  Version:   $Revision: 1.131 $
+  Date:      $Date: 2004/09/29 17:33:17 $
+  Version:   $Revision: 1.132 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
@@ -25,7 +25,6 @@ typedef std::pair<TagDocEntryHT::iterator,TagDocEntryHT::iterator> IterHT;
 //-------------------------------------------------------------------------
 // Constructor / Destructor
 /**
- * \ingroup   gdcmFile
  * \brief Constructor dedicated to deal with the *pixels* area of a ACR/DICOMV3
  *        file (gdcmHeader only deals with the ... header)
  *        Opens (in read only and when possible) an existing file and checks
@@ -43,11 +42,10 @@ gdcmFile::gdcmFile(gdcmHeader *header)
 {
    Header     = header;
    SelfHeader = false;
-   SaveInitialValues();
+   Initialise();
 }
 
 /**
- * \ingroup   gdcmFile
  * \brief Constructor dedicated to deal with the *pixels* area of a ACR/DICOMV3
  *        file (gdcmHeader only deals with the ... header)
  *        Opens (in read only and when possible) an existing file and checks
@@ -65,11 +63,30 @@ gdcmFile::gdcmFile(std::string const & filename )
 {
    Header = new gdcmHeader( filename );
    SelfHeader = true;
+   Initialise();
+}
+
+/**
+ * \brief Factorization for various forms of constructors.
+ */
+void gdcmFile::Initialise()
+{
+   if ( Header->IsReadable() )
+   {
+      ImageDataSizeRaw = ComputeDecompressedPixelDataSizeFromHeader();
+      if ( Header->HasLUT() )
+      {
+         ImageDataSize = 3 * ImageDataSizeRaw;
+      }
+      else
+      {
+         ImageDataSize = ImageDataSizeRaw;
+      }
+   }
    SaveInitialValues();
 }
 
 /**
- * \ingroup   gdcmFile
  * \brief canonical destructor
  * \note  If the gdcmHeader was created by the gdcmFile constructor,
  *        it is destroyed by the gdcmFile
@@ -86,7 +103,6 @@ gdcmFile::~gdcmFile()
 }
 
 /**
- * \ingroup   gdcmFile
  * \brief Sets some initial values for the Constructor
  * \warning not end user intended
  */
@@ -112,8 +128,6 @@ void gdcmFile::SaveInitialValues()
                 
    if ( Header->IsReadable() )
    {
-      SetPixelDataSizeFromHeader();
-      
       // the following values *may* be modified 
       // by gdcmFile::GetImageDataIntoVectorRaw
       // we save their initial value.
@@ -138,7 +152,6 @@ void gdcmFile::SaveInitialValues()
 }
 
 /**
- * \ingroup   gdcmFile
  * \brief restores some initial values
  * \warning not end user intended
  */
@@ -182,7 +195,6 @@ void gdcmFile::RestoreInitialValues()
 }
 
 /**
- * \ingroup   gdcmFile
  * \brief delete initial values (il they were saved)
  *        of InitialLutDescriptors and InitialLutData
  */
@@ -212,62 +224,6 @@ void gdcmFile::DeleteInitialValues()
       delete InitialBlueLUTData;      
 }
 
-/**
- * \ingroup   gdcmFile
- * \brief drop palette related initial values -if any-
- *        (InitialLutDescriptors and InitialLutData)
- *        out of header, to make it consistent with the Pixel_Data
- *        as it's loaded in memory
- */
-
-//FIXME : Should be nice, if we could let it here.
-//        will be moved to PixelData class
-// Now, the job is done in gdcmHeader.cxx
-  
- /*
-void gdcmFile::DropInitialValues()
-{ 
-   gdcmHeader* h=GetHeader();
-   if ( GetEntryByNumber(0x0028,0x0002).c_str()[0] == '3' )
-   {
-      // if SamplesPerPixel = 3, sure we don't need any LUT !   
-      // Drop 0028|1101, 0028|1102, 0028|1103
-      // Drop 0028|1201, 0028|1202, 0028|1203
-
-      gdcmDocEntry* e = h->GetDocEntryByNumber(0x0028,0x01101);
-      if (e)
-      {
-         h->RemoveEntryNoDestroy(e);
-      }
-      e = h->GetDocEntryByNumber(0x0028,0x1102);
-      if (e)
-      {
-         h->RemoveEntryNoDestroy(e);
-      }
-      e = h->GetDocEntryByNumber(0x0028,0x1103);
-      if (e)
-      {
-         h->RemoveEntryNoDestroy(e);
-      }
-      e = h->GetDocEntryByNumber(0x0028,0x01201);
-      if (e)
-      {
-         h->RemoveEntryNoDestroy(e);
-      }
-      e = h->GetDocEntryByNumber(0x0028,0x1202);
-      if (e)
-      {
-         h->RemoveEntryNoDestroy(e);
-      }
-      e = h->GetDocEntryByNumber(0x0028,0x1203);
-      if (e)
-      {
-         h->RemoveEntryNoDestroy(e);
-      }
-   }
-}
-*/
-
 //-----------------------------------------------------------------------------
 // Print
 
@@ -275,14 +231,12 @@ void gdcmFile::DropInitialValues()
 // Public
 
 /**
- * \ingroup   gdcmFile
  * \brief     computes the length (in bytes) we must ALLOCATE to receive the
  *            image(s) pixels (multiframes taken into account) 
  * \warning : it is NOT the group 7FE0 length
  *          (no interest for compressed images).
- * \warning : not end user intended ?
  */
-void gdcmFile::SetPixelDataSizeFromHeader()
+int gdcmFile::ComputeDecompressedPixelDataSizeFromHeader()
 {
    // see PS 3.3-2003 : C.7.6.3.2.1  
    // 
@@ -311,38 +265,22 @@ void gdcmFile::SetPixelDataSizeFromHeader()
    // 0028|1203 [US]   [Blue Palette Color Lookup Table Data]
 
    // Number of "Bits Allocated"
-   int nb;
-   std::string str_nb = Header->GetEntryByNumber(0x0028,0x0100);
-
-   if ( str_nb == GDCM_UNFOUND )
+   int numberBitsAllocated = Header->GetBitsAllocated();
+   if ( ( numberBitsAllocated == 0 ) || ( numberBitsAllocated == 12 ) )
    {
-      nb = 16;
+      numberBitsAllocated = 16;
    } 
-   else
-   {
-      nb = atoi( str_nb.c_str() );
-      if (nb == 12) 
-      {
-         nb =16;
-      }
-   }
-   ImageDataSize =
-   ImageDataSizeRaw = Header->GetXSize() * Header->GetYSize() 
-                * Header->GetZSize() * (nb/8) * Header->GetSamplesPerPixel();
-   std::string str_PhotometricInterpretation = 
-                             Header->GetEntryByNumber(0x0028,0x0004);
-    
-   // if ( str_PhotometricInterpretation == "PALETTE COLOR " ),
-   // pb when undealt Segmented Palette Color
+
+   int DecompressedSize = Header->GetXSize()
+                        * Header->GetYSize() 
+                        * Header->GetZSize()
+                        * ( numberBitsAllocated / 8 )
+                        * Header->GetSamplesPerPixel();
    
-   if ( Header->HasLUT() )
-   {
-      ImageDataSize *= 3;
-   }
+   return DecompressedSize;
 }
 
 /**
- * \ingroup gdcmFile
  * \brief   - Allocates necessary memory, 
  *          - Reads the pixels from disk (uncompress if necessary),
  *          - Transforms YBR pixels, if any, into RGB pixels
@@ -384,7 +322,6 @@ uint8_t* gdcmFile::GetImageData()
 }
 
 /**
- * \ingroup gdcmFile
  * \brief
  *          Read the pixels from disk (uncompress if necessary),
  *          Transforms YBR pixels, if any, into RGB pixels
@@ -468,7 +405,6 @@ size_t gdcmFile::GetImageDataIntoVector (void* destination, size_t maxSize)
 }
 
 /**
- * \ingroup gdcmFile
  * \brief   Allocates necessary memory, 
  *          Transforms YBR pixels (if any) into RGB pixels
  *          Transforms 3 planes R, G, B  (if any) into a single RGB Plane
@@ -516,7 +452,6 @@ uint8_t* gdcmFile::GetImageDataRaw ()
 }
 
 /**
- * \ingroup gdcmFile
  * \brief   Copies at most MaxSize bytes of pixel data to caller's
  *          memory space.
  * \warning This function was designed to avoid people that want to build
@@ -541,8 +476,6 @@ uint8_t* gdcmFile::GetImageDataRaw ()
  */
 size_t gdcmFile::GetImageDataIntoVectorRaw (void* destination, size_t maxSize)
 {
-   int nb, nbu, highBit, sign;
-
   // we save the initial values of the following
   // in order to be able to restore the header in a disk-consistent state
   // (if user asks twice to get the pixels from disk)
@@ -564,64 +497,43 @@ size_t gdcmFile::GetImageDataIntoVectorRaw (void* destination, size_t maxSize)
    ReadPixelData( destination );
 
    // Number of Bits Allocated for storing a Pixel
-   std::string str_nb = Header->GetEntryByNumber(0x0028,0x0100);
-   if ( str_nb == GDCM_UNFOUND )
+   int numberBitsAllocated = Header->GetBitsAllocated();
+   if ( numberBitsAllocated == 0 )
    {
-      nb = 16;
-   }
-   else
-   {
-      nb = atoi( str_nb.c_str() );
-      // FIXME
-      // From reading SetPixelDataSizeFromHeader, it seems 12 should be treated
-      // separately, correct ?
+      numberBitsAllocated = 16;
    }
 
    // Number of Bits actually used
-   std::string str_nbu = Header->GetEntryByNumber(0x0028,0x0101);
-   if ( str_nbu == GDCM_UNFOUND )
+   int numberBitsStored = Header->GetBitsStored();
+   if ( numberBitsStored == 0 )
    {
-      nbu = nb;
-   } 
-   else 
-   {
-      nbu = atoi( str_nbu.c_str() );
+      numberBitsStored = numberBitsAllocated;
    }
 
    // High Bit Position
-   std::string str_highBit = Header->GetEntryByNumber(0x0028,0x0102);
-   if ( str_highBit == GDCM_UNFOUND )
+   int highBitPosition = Header->GetHighBitPosition();
+   if ( highBitPosition == 0 )
    {
-      highBit = nb - 1;
+      highBitPosition = numberBitsAllocated - 1;
    }
-   else
-   {
-      highBit = atoi( str_highBit.c_str() );
-   } 
 
-   // Pixel sign
-   // 0 = Unsigned
-   // 1 = Signed
-   std::string str_sign = Header->GetEntryByNumber(0x0028,0x0103);
-   if ( str_sign == GDCM_UNFOUND )
-   {
-      sign = 0;  // default is unsigned
-   }
-   else
-   {
-      sign = atoi( str_sign.c_str() );
-   }
+   bool signedPixel = Header->IsSignedPixelData();
 
-   // re arange bytes inside the integer (processor endianity)
-   if ( nb != 8 )
+// SPLIT ME
+////////////////////////////////////////////////////////
+// ENDIANITY SECTION: re-arange bytes inside the integer
+   if ( numberBitsAllocated != 8 )
    {
-      SwapZone(destination, Header->GetSwapCode(), ImageDataSize, nb);
+      SwapZone( destination, Header->GetSwapCode(), ImageDataSize,
+                numberBitsAllocated );
    }
      
    // to avoid pb with some xmedcon breakers images 
-   if ( nb == 16 && nbu < nb && sign == 0)
+   if (  ( numberBitsAllocated == 16 )
+      && ( numberBitsStored < numberBitsAllocated )
+      && ( ! signedPixel ) )
    {
-      int l = (int)(ImageDataSize / (nb/8));
+      int l = (int)(ImageDataSize / (numberBitsAllocated/8));
       uint16_t *deb = (uint16_t *)destination;
       for(int i = 0; i<l; i++)
       {
@@ -633,29 +545,31 @@ size_t gdcmFile::GetImageDataIntoVectorRaw (void* destination, size_t maxSize)
       }
    }
 
-   // re arange bits inside the bytes
-   if ( nbu != nb )
+// SPLIT ME
+//////////////////////////////////
+// re arange bits inside the bytes
+   if ( numberBitsStored != numberBitsAllocated )
    {
-      int l = (int)(ImageDataSize / (nb/8));
-      if ( nb == 16 )
+      int l = (int)(ImageDataSize / (numberBitsAllocated/8));
+      if ( numberBitsAllocated == 16 )
       {
          uint16_t mask = 0xffff;
-         mask = mask >> (nb-nbu);
+         mask = mask >> ( numberBitsAllocated - numberBitsStored );
          uint16_t *deb = (uint16_t *)destination;
          for(int i = 0; i<l; i++)
          {
-            *deb = (*deb >> (nbu - highBit - 1)) & mask;
+            *deb = (*deb >> (numberBitsStored - highBitPosition - 1)) & mask;
             deb++;
          }
       }
-      else if ( nb == 32 )
+      else if ( numberBitsAllocated == 32 )
       {
          uint32_t mask = 0xffffffff;
-         mask         = mask >> (nb - nbu);
+         mask         = mask >> ( numberBitsAllocated - numberBitsStored );
          uint32_t *deb = (uint32_t *)destination;
          for(int i = 0; i<l; i++)
          {
-            *deb = (*deb >> (nbu - highBit - 1)) & mask;
+            *deb = (*deb >> (numberBitsStored - highBitPosition - 1)) & mask;
             deb++;
          }
       }
@@ -665,24 +579,22 @@ size_t gdcmFile::GetImageDataIntoVectorRaw (void* destination, size_t maxSize)
          return 0;
       }
    }
-/// \todo
-/// DO NOT remove this code commented out.
-/// Nobody knows what's expecting you ...
-/// Just to 'see' what was actually read on disk :-(
-///
-///   FILE*  f2;
-///   f2 = fopen("SpuriousFile.RAW","wb");
-///   fwrite(destination,ImageDataSize,1,f2);
-///   fclose(f2);
-
-   // Deal with the color
-   // -------------------
-   
-   std::string str_PhotometricInterpretation = 
-      Header->GetEntryByNumber(0x0028,0x0004);
 
-   if ( str_PhotometricInterpretation == "MONOCHROME1 " 
-     || str_PhotometricInterpretation == "MONOCHROME2 " )
+#ifdef GDCM_DEBUG
+   FILE*  DebugFile;
+   DebugFile = fopen( "SpuriousFile.RAW", "wb" );
+   fwrite( PixelConvertor.GetUncompressed(),
+           PixelConvertor.GetUncompressedsSize(),
+           1, DebugFile );
+   fclose( DebugFile );
+#endif //GDCM_DEBUG
+
+// SPLIT ME
+//////////////////////////////////
+// Deal with the color
+   
+   // Monochrome pictures don't require color intervention
+   if ( Header->IsMonochrome() )
    {
       return ImageDataSize; 
    }
@@ -700,7 +612,7 @@ size_t gdcmFile::GetImageDataIntoVectorRaw (void* destination, size_t maxSize)
 
    // Whatever Planar Configuration is, 
    // "PALETTE COLOR " implies that we deal with the palette. 
-   if ( str_PhotometricInterpretation == "PALETTE COLOR ")
+   if ( Header->IsPaletteColor() )
    {
       planConf = 2;
    }
@@ -711,7 +623,7 @@ size_t gdcmFile::GetImageDataIntoVectorRaw (void* destination, size_t maxSize)
          // Pixels are already RGB
          break;
       case 1:
-         if (str_PhotometricInterpretation == "YBR_FULL")
+         if ( Header->IsYBRFull() )
          {
             // Warning : YBR_FULL_422 acts as RGB
             //         : we need to make RGB Pixels from Planes Y,cB,cR
@@ -811,12 +723,13 @@ size_t gdcmFile::GetImageDataIntoVectorRaw (void* destination, size_t maxSize)
 }
 
 /**
- * \ingroup   gdcmFile
- * \brief performs a shalow copy (not a deep copy) of the user given
- *        pixel area.
- *        'image' Pixels are presented as C-like 2D arrays : line per line.
- *        'volume'Pixels are presented as C-like 3D arrays : plane per plane 
- * \warning user is kindly requested NOT TO 'free' the Pixel area
+ * \brief   Points the internal Pixel_Data pointer to the callers inData
+ *          image representation, BUT WITHOUT COPYING THE DATA.
+ *          'image' Pixels are presented as C-like 2D arrays : line per line.
+ *          'volume'Pixels are presented as C-like 3D arrays : plane per plane 
+ * \warning Since the pixels are not copied, it is the caller's responsability
+ *          not to deallocate it's data before gdcm uses them (e.g. with
+ *          the Write() method.
  * @param inData user supplied pixel area
  * @param expectedSize total image size, in Bytes
  *
@@ -834,7 +747,6 @@ bool gdcmFile::SetImageData(uint8_t* inData, size_t expectedSize)
 }
 
 /**
- * \ingroup   gdcmFile
  * \brief Writes on disk A SINGLE Dicom file
  *        NO test is performed on  processor "Endiannity".
  *        It's up to the user to call his Reader properly
@@ -858,7 +770,6 @@ bool gdcmFile::WriteRawData(std::string const & fileName)
 }
 
 /**
- * \ingroup   gdcmFile
  * \brief Writes on disk A SINGLE Dicom file, 
  *        using the Implicit Value Representation convention
  *        NO test is performed on  processor "Endiannity".
@@ -873,7 +784,6 @@ bool gdcmFile::WriteDcmImplVR (std::string const & fileName)
 }
 
 /**
- * \ingroup   gdcmFile
 * \brief Writes on disk A SINGLE Dicom file, 
  *        using the Explicit Value Representation convention
  *        NO test is performed on  processor "Endiannity". * @param fileName name of the file to be created
@@ -887,7 +797,6 @@ bool gdcmFile::WriteDcmExplVR (std::string const & fileName)
 }
 
 /**
- * \ingroup   gdcmFile
  * \brief Writes on disk A SINGLE Dicom file, 
  *        using the ACR-NEMA convention
  *        NO test is performed on  processor "Endiannity".
@@ -909,7 +818,6 @@ bool gdcmFile::WriteAcr (std::string const & fileName)
 //-----------------------------------------------------------------------------
 // Protected
 /**
- * \ingroup   gdcmFile
  * \brief NOT a end user inteded function
  *        (used by WriteDcmExplVR, WriteDcmImplVR, WriteAcr, etc)
  * @param fileName name of the file to be created
@@ -1004,7 +912,6 @@ bool gdcmFile::WriteBase (std::string const & fileName, FileType type)
 //-----------------------------------------------------------------------------
 // Private
 /**
- * \ingroup gdcmFile
  * \brief   Swap the bytes, according to swap code.
  * \warning not end user intended
  * @param   im area to deal with
@@ -1088,7 +995,6 @@ void gdcmFile::SwapZone(void* im, int swap, int lgr, int nb)
 }
 
 /**
- * \ingroup gdcmFile
  * \brief   Read pixel data from disk (optionaly decompressing) into the
  *          caller specified memory location.
  * @param   destination where the pixel data should be stored.
index 837b2d00c7c4b6b2516151cedc0d66803116a8e7..adada47f54d04468e79ed2da55c7d4707cdc768a 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: gdcmFile.h,v $
   Language:  C++
-  Date:      $Date: 2004/09/27 08:39:07 $
-  Version:   $Revision: 1.52 $
+  Date:      $Date: 2004/09/29 17:33:17 $
+  Version:   $Revision: 1.53 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
@@ -39,18 +39,12 @@ public:
    /// Accessor to \ref Header
    gdcmHeader* GetHeader() { return Header; }
 
-   void   SetPixelDataSizeFromHeader();
+   int ComputeDecompressedPixelDataSizeFromHeader();
    
-
-/// \brief     Returns the size (in bytes) of required memory to hold
-///            the pixel data represented in this file.
+   /// Accessor to \ref ImageDataSize
    size_t GetImageDataSize(){ return ImageDataSize; };
 
-   
-/// \brief     Returns the size (in bytes) of required memory to hold
-///            the pixel data represented in this file, if user DOESN'T want 
-///            to get RGB pixels image when it's stored as a PALETTE COLOR image
-///            -the (vtk) user is supposed to know how to deal with LUTs-     
+   /// Accessor to \ref ImageDataSizeRaw
    size_t GetImageDataSizeRaw(){ return ImageDataSizeRaw; };
 
    uint8_t* GetImageData();
@@ -58,12 +52,6 @@ public:
    uint8_t* GetImageDataRaw();
    size_t GetImageDataIntoVectorRaw(void* destination, size_t maxSize);
 
-   // Allocates ExpectedSize bytes of memory at this->Data and copies the
-   // pointed data to it. Copying the image might look useless but
-   // the caller might destroy it's image (without knowing it: think
-   // of a complicated interface where display is done with a library
-   // e.g. VTK) before calling the Write
-      
    // see also gdcmHeader::SetImageDataSize ?!?         
    bool SetImageData (uint8_t* data, size_t expectedSize);
 
@@ -93,6 +81,7 @@ protected:
    bool WriteBase(std::string const& fileName, FileType type);
 
 private:
+   void Initialise();
    void SwapZone(void* im, int swap, int lgr, int nb);
 
    bool ReadPixelData(void* destination);
@@ -138,20 +127,23 @@ private:
    /// wether already parsed 
    bool Parsed;
       
-   //
-   // --------------- Will be moved to a gdcmPixelData class
-   //
+//
+// --------------- Will be moved to a gdcmPixelData class
+//
 
    /// \brief to hold the Pixels (when read)
    uint8_t* Pixel_Data;  // (was PixelData)
    
-   /// \brief Area length to receive the Gray Level pixels
+   /// \brief Size (in bytes) of required memory to hold the Gray Level pixels
+   ///        represented in this file. This is used when the user DOESN'T want
+   ///        the RGB pixels image when it's stored as a PALETTE COLOR image
    size_t ImageDataSizeRaw;
    
-   /// \brief Area length to receive the pixels making RGB
-   ///        from Plane R, Plane G, Plane B 
-   ///     or from Grey Plane + Palette Color
-   ///     or from YBR Pixels (or from RGB Pixels, as well) 
+   /// \brief Size (in bytes) of requited memory to hold the the pixels
+   ///        of this image in it's RGB convertion either from:
+   ///        - Plane R, Plane G, Plane B 
+   ///        - Grey Plane + Palette Color
+   ///        - YBR Pixels (or from RGB Pixels, as well) 
    size_t ImageDataSize;
        
   /// \brief ==1  if GetImageDataRaw was used
@@ -164,8 +156,6 @@ private:
    size_t LastAllocatedPixelDataLength; 
 
   // Initial values of some fields that can be modified during reading process
-  // (in a future stage, they will be modified just before the writting process
-  //  and restored just after)
   // if user asked to transform gray level + LUT image into RGB image
      
   /// \brief Samples Per Pixel           (0x0028,0x0002), as found on disk
@@ -176,8 +166,6 @@ private:
    std::string InitialPlanConfig;
     
   // Initial values of some fields that can be modified during reading process
-  // (in a future stage, they will be modified just before the writting process
-  //  and restored just after)
   // if the image was a 'strange' ACR-NEMA 
   // (Bits Allocated=12, High Bit not equal to Bits stored +1) 
   /// \brief Bits Allocated              (0x0028,0x0100), as found on disk
@@ -186,8 +174,6 @@ private:
    std::string InitialHighBit;
   
   // some DocEntry that can be moved out of the H table during reading process
-  // (in a future stage, they will be modified just before the writting process
-  //  and restored just after)
   // if user asked to transform gray level + LUT image into RGB image
   // We keep a pointer on them for a future use.
      
@@ -205,9 +191,9 @@ private:
   /// \brief Blue Palette Color Lookup Table Data        0028 1203 as read
   gdcmDocEntry* InitialBlueLUTData;
   
-   //
-   // --------------- end of future gdcmPixelData class
-   //  
+//
+// --------------- end of future gdcmPixelData class
+//  
 
 };
 
index 19ae8d4db00e8fe0bc562b6210fa255962beac20..ca880becce9229520286b4bd35610cf959dd5dfd 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: gdcmHeader.cxx,v $
   Language:  C++
-  Date:      $Date: 2004/09/27 08:39:07 $
-  Version:   $Revision: 1.189 $
+  Date:      $Date: 2004/09/29 17:33:17 $
+  Version:   $Revision: 1.190 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
@@ -84,7 +84,6 @@ gdcmHeader::gdcmHeader()
 }
 
 /**
- * \ingroup gdcmHeader
  * \brief   Canonical destructor.
  */
 gdcmHeader::~gdcmHeader ()
@@ -108,7 +107,7 @@ void gdcmHeader::Write(FILE* fp,FileType filetype)
       SetEntryByNumber("16", 0x0028,0x0100);
    }
 
-  // TODO : correct 'Pixel group' Length if necessary
+  /// \todo correct 'Pixel group' Length if necessary
 
    int i_lgPix = GetEntryLengthByNumber(GrPixel, NumPixel);
    if (i_lgPix != -2)
@@ -231,7 +230,6 @@ int gdcmHeader::GetXSize()
 }
 
 /**
- * \ingroup gdcmHeader
  * \brief   Retrieve the number of lines of image.
  * \warning The defaulted value is 1 as opposed to gdcmHeader::GetXSize()
  * @return  The encountered size when found, 1 by default 
@@ -255,7 +253,6 @@ int gdcmHeader::GetYSize()
 }
 
 /**
- * \ingroup gdcmHeader
  * \brief   Retrieve the number of planes of volume or the number
  *          of frames of a multiframe.
  * \warning When present we consider the "Number of Frames" as the third
@@ -284,7 +281,6 @@ int gdcmHeader::GetZSize()
 }
 
 /**
-  * \ingroup gdcmHeader
   * \brief gets the info from 0028,0030 : Pixel Spacing
   *             else 1.0
   * @return X dimension of a pixel
@@ -321,7 +317,6 @@ float gdcmHeader::GetXSpacing()
 }
 
 /**
-  * \ingroup gdcmHeader
   * \brief gets the info from 0028,0030 : Pixel Spacing
   *             else 1.0
   * @return Y dimension of a pixel
@@ -344,12 +339,11 @@ float gdcmHeader::GetYSpacing()
 } 
 
 /**
-  *\ingroup gdcmHeader
-  *\brief gets the info from 0018,0088 : Space Between Slices
-  *                else from 0018,0050 : Slice Thickness
-   *                else 1.0
-  * @return Z dimension of a voxel-to be
-  */
+ * \brief gets the info from 0018,0088 : Space Between Slices
+ *                else from 0018,0050 : Slice Thickness
+ *                else 1.0
+ * @return Z dimension of a voxel-to be
+ */
 float gdcmHeader::GetZSpacing()
 {
    // Spacing Between Slices : distance entre le milieu de chaque coupe
@@ -388,20 +382,21 @@ float gdcmHeader::GetZSpacing()
 }
 
 /**
-  *\ingroup gdcmHeader
-  *\brief gets the info from 0028,1052 : Rescale Intercept
-  * @return Rescale Intercept
+ *\brief gets the info from 0028,1052 : Rescale Intercept
+ * @return Rescale Intercept
  */
 float gdcmHeader::GetRescaleIntercept()
 {
    float resInter = 0.;
-   std::string strRescInter = GetEntryByNumber(0x0028,0x1052); //0028 1052 DS IMG Rescale Intercept
+   /// 0028 1052 DS IMG Rescale Intercept
+   std::string strRescInter = GetEntryByNumber(0x0028,0x1052);
    if ( strRescInter != GDCM_UNFOUND )
    {
       if( sscanf( strRescInter.c_str(), "%f", &resInter) != 1 )
       {
          // bug in the element 0x0028,0x1052
-         dbg.Verbose(0, "gdcmHeader::GetRescaleIntercept: Rescale Slope is empty");
+         dbg.Verbose(0, "gdcmHeader::GetRescaleIntercept: Rescale Slope "
+                        "is empty");
       }
    }
 
@@ -409,14 +404,14 @@ float gdcmHeader::GetRescaleIntercept()
 }
 
 /**
-  *\ingroup gdcmHeader
-  *\brief gets the info from 0028,1053 : Rescale Slope
-  * @return Rescale Slope
+ *\brief   gets the info from 0028,1053 : Rescale Slope
+ * @return Rescale Slope
  */
 float gdcmHeader::GetRescaleSlope()
 {
    float resSlope = 1.;
-   std::string strRescSlope = GetEntryByNumber(0x0028,0x1053); //0028 1053 DS IMG Rescale Slope
+   //0028 1053 DS IMG Rescale Slope
+   std::string strRescSlope = GetEntryByNumber(0x0028,0x1053);
    if ( strRescSlope != GDCM_UNFOUND )
    {
       if( sscanf( strRescSlope.c_str(), "%f", &resSlope) != 1)
@@ -430,13 +425,12 @@ float gdcmHeader::GetRescaleSlope()
 }
 
 /**
-  * \ingroup gdcmHeader
-  * \brief This function is intended to user who doesn't want 
-  *   to have to manage a LUT and expects to get an RBG Pixel image
-  *   (or a monochrome one ...) 
-  * \warning to be used with GetImagePixels()
-  * @return 1 if Gray level, 3 if Color (RGB, YBR or PALETTE COLOR)
-  */
+ * \brief This function is intended to user who doesn't want 
+ *   to have to manage a LUT and expects to get an RBG Pixel image
+ *   (or a monochrome one ...) 
+ * \warning to be used with GetImagePixels()
+ * @return 1 if Gray level, 3 if Color (RGB, YBR or PALETTE COLOR)
+ */
 int gdcmHeader::GetNumberOfScalarComponents()
 {
    if ( GetSamplesPerPixel() == 3 )
@@ -481,13 +475,12 @@ int gdcmHeader::GetNumberOfScalarComponents()
 }
 
 /**
-  * \ingroup gdcmHeader
-  * \brief This function is intended to user that DOESN'T want 
-  *  to get RGB pixels image when it's stored as a PALETTE COLOR image
-  *   - the (vtk) user is supposed to know how deal with LUTs - 
-  * \warning to be used with GetImagePixelsRaw()
-  * @return 1 if Gray level, 3 if Color (RGB or YBR - NOT 'PALETTE COLOR' -)
-  */
+ * \brief This function is intended to user that DOESN'T want 
+ *  to get RGB pixels image when it's stored as a PALETTE COLOR image
+ *   - the (vtk) user is supposed to know how deal with LUTs - 
+ * \warning to be used with GetImagePixelsRaw()
+ * @return 1 if Gray level, 3 if Color (RGB or YBR - NOT 'PALETTE COLOR' -)
+ */
 int gdcmHeader::GetNumberOfScalarComponentsRaw()
 {
    // 0028 0100 US IMG Bits Allocated
@@ -518,12 +511,11 @@ int gdcmHeader::GetNumberOfScalarComponentsRaw()
 //
 
 /**
-  * \brief gets the info from 0020,0032 : Image Position Patient
-  *                 else from 0020,0030 : Image Position (RET)
-  *                 else 0.
-  * @return up-left image corner X position
-  */
-    
+ * \brief gets the info from 0020,0032 : Image Position Patient
+ *                 else from 0020,0030 : Image Position (RET)
+ *                 else 0.
+ * @return up-left image corner X position
+ */
 float gdcmHeader::GetXOrigin()
 {
    float xImPos, yImPos, zImPos;  
@@ -531,11 +523,13 @@ float gdcmHeader::GetXOrigin()
 
    if ( strImPos == GDCM_UNFOUND )
    {
-      dbg.Verbose(0, "gdcmHeader::GetXImagePosition: unfound Image Position Patient (0020,0032)");
+      dbg.Verbose(0, "gdcmHeader::GetXImagePosition: unfound Image "
+                     "Position Patient (0020,0032)");
       strImPos = GetEntryByNumber(0x0020,0x0030); // For ACR-NEMA images
       if ( strImPos == GDCM_UNFOUND )
       {
-         dbg.Verbose(0, "gdcmHeader::GetXImagePosition: unfound Image Position (RET) (0020,0030)");
+         dbg.Verbose(0, "gdcmHeader::GetXImagePosition: unfound Image "
+                        "Position (RET) (0020,0030)");
          /// \todo How to tell the caller nothing was found ?
          return 0.;
       }
@@ -550,11 +544,11 @@ float gdcmHeader::GetXOrigin()
 }
 
 /**
 * \brief gets the info from 0020,0032 : Image Position Patient
 *                 else from 0020,0030 : Image Position (RET)
 *                 else 0.
 * @return up-left image corner Y position
 */
+ * \brief gets the info from 0020,0032 : Image Position Patient
+ *                 else from 0020,0030 : Image Position (RET)
+ *                 else 0.
+ * @return up-left image corner Y position
+ */
 float gdcmHeader::GetYOrigin()
 {
    float xImPos, yImPos, zImPos;
@@ -562,11 +556,13 @@ float gdcmHeader::GetYOrigin()
 
    if ( strImPos == GDCM_UNFOUND)
    {
-      dbg.Verbose(0, "gdcmHeader::GetYImagePosition: unfound Image Position Patient (0020,0032)");
+      dbg.Verbose(0, "gdcmHeader::GetYImagePosition: unfound Image "
+                     "Position Patient (0020,0032)");
       strImPos = GetEntryByNumber(0x0020,0x0030); // For ACR-NEMA images
       if ( strImPos == GDCM_UNFOUND )
       {
-         dbg.Verbose(0, "gdcmHeader::GetYImagePosition: unfound Image Position (RET) (0020,0030)");
+         dbg.Verbose(0, "gdcmHeader::GetYImagePosition: unfound Image "
+                        "Position (RET) (0020,0030)");
          /// \todo How to tell the caller nothing was found ?
          return 0.;
       }  
@@ -581,13 +577,13 @@ float gdcmHeader::GetYOrigin()
 }
 
 /**
 * \brief gets the info from 0020,0032 : Image Position Patient
 * \               else from 0020,0030 : Image Position (RET)
 * \               else from 0020,1041 : Slice Location
 * \               else from 0020,0050 : Location
 * \               else 0.
 * @return up-left image corner Z position
 */
+ * \brief gets the info from 0020,0032 : Image Position Patient
*                 else from 0020,0030 : Image Position (RET)
*                 else from 0020,1041 : Slice Location
*                 else from 0020,0050 : Location
*                 else 0.
+ * @return up-left image corner Z position
+ */
 float gdcmHeader::GetZOrigin()
 {
    float xImPos, yImPos, zImPos; 
@@ -597,7 +593,8 @@ float gdcmHeader::GetZOrigin()
    {
       if( sscanf( strImPos.c_str(), "%f\\%f\\%f", &xImPos, &yImPos, &zImPos) != 3)
       {
-         dbg.Verbose(0, "gdcmHeader::GetZImagePosition: wrong Image Position Patient (0020,0032)");
+         dbg.Verbose(0, "gdcmHeader::GetZImagePosition: wrong Image "
+                        "Position Patient (0020,0032)");
          return 0.;  // bug in the element 0x0020,0x0032
       }
       else
@@ -655,10 +652,9 @@ float gdcmHeader::GetZOrigin()
 }
 
 /**
-  * \brief gets the info from 0020,0013 : Image Number
-  * \               else 0.
-  * @return image number
-  */
+ * \brief gets the info from 0020,0013 : Image Number else 0.
+ * @return image number
+ */
 int gdcmHeader::GetImageNumber()
 {
    // The function i atoi() takes the address of an area of memory as
@@ -667,7 +663,8 @@ int gdcmHeader::GetImageNumber()
    // be preferable to sscanf() since atoi() is a much smaller, simpler and
    // faster function. sscanf() can do all possible conversions whereas
    // atoi() can only do single decimal integer conversions.
-   std::string strImNumber = GetEntryByNumber(0x0020,0x0013); //0020 0013 IS REL Image Number
+   //0020 0013 IS REL Image Number
+   std::string strImNumber = GetEntryByNumber(0x0020,0x0013);
    if ( strImNumber != GDCM_UNFOUND )
    {
       return atoi( strImNumber.c_str() );
@@ -676,9 +673,9 @@ int gdcmHeader::GetImageNumber()
 }
 
 /**
 * \brief gets the info from 0008,0060 : Modality
 * @return Modality Type
 */
+ * \brief gets the info from 0008,0060 : Modality
+ * @return Modality Type
+ */
 ModalityType gdcmHeader::GetModality()
 {
    // 0008 0060 CS ID Modality
@@ -738,7 +735,6 @@ ModalityType gdcmHeader::GetModality()
 }
 
 /**
- * \ingroup gdcmHeader
  * \brief   Retrieve the number of Bits Stored (actually used)
  *          (as opposite to number of Bits Allocated)
  * @return  The encountered number of Bits Stored, 0 by default.
@@ -746,10 +742,11 @@ ModalityType gdcmHeader::GetModality()
  */
 int gdcmHeader::GetBitsStored()
 {
-   std::string strSize = GetEntryByNumber(0x0028,0x0101);
+   std::string strSize = GetEntryByNumber( 0x0028, 0x0101 );
    if ( strSize == GDCM_UNFOUND )
    {
-      dbg.Verbose(0, "gdcmHeader::GetBitsStored: this is supposed to be mandatory");
+      dbg.Verbose(0, "gdcmHeader::GetBitsStored: this is supposed to "
+                     "be mandatory");
       return 0;  // It's supposed to be mandatory
                  // the caller will have to check
    }
@@ -757,7 +754,47 @@ int gdcmHeader::GetBitsStored()
 }
 
 /**
- * \ingroup gdcmHeader
+ * \brief   Retrieve the high bit position.
+ * \warning The method defaults to 0 when information is absent.
+ *          The responsability of checking this value is left to the caller.
+ * @return  The high bit positin when present. 0 when absent.
+ */
+int gdcmHeader::GetHighBitPosition()
+{
+   std::string strSize = GetEntryByNumber( 0x0028, 0x0102 );
+   if ( strSize == GDCM_UNFOUND )
+   {
+      dbg.Verbose(0, "gdcmHeader::GetHighBitPosition: this is supposed "
+                     "to be mandatory");
+      return 0;
+   }
+   return atoi( strSize.c_str() );
+}
+
+/**
+ * \brief   Check wether the pixels are signed or UNsigned data.
+ * \warning The method defaults to false (UNsigned) when information is absent.
+ *          The responsability of checking this value is left to the caller.
+ * @return  True when signed, false when UNsigned
+ */
+bool gdcmHeader::IsSignedPixelData()
+{
+   std::string strSize = GetEntryByNumber( 0x0028, 0x0103 );
+   if ( strSize == GDCM_UNFOUND )
+   {
+      dbg.Verbose(0, "gdcmHeader::IsSignedPixelData: this is supposed "
+                     "to be mandatory");
+      return false;
+   }
+   int sign = atoi( strSize.c_str() );
+   if ( sign == 0 ) 
+   {
+      return false;
+   }
+   return true;
+}
+
+/**
  * \brief   Retrieve the number of Bits Allocated
  *          (8, 12 -compacted ACR-NEMA files, 16, ...)
  * @return  The encountered number of Bits Allocated, 0 by default.
@@ -768,7 +805,8 @@ int gdcmHeader::GetBitsAllocated()
    std::string strSize = GetEntryByNumber(0x0028,0x0100);
    if ( strSize == GDCM_UNFOUND )
    {
-      dbg.Verbose(0, "gdcmHeader::GetBitsStored: this is supposed to be mandatory");
+      dbg.Verbose(0, "gdcmHeader::GetBitsStored: this is supposed to "
+                     "be mandatory");
       return 0; // It's supposed to be mandatory
                 // the caller will have to check
    }
@@ -776,7 +814,6 @@ int gdcmHeader::GetBitsAllocated()
 }
 
 /**
- * \ingroup gdcmHeader
  * \brief   Retrieve the number of Samples Per Pixel
  *          (1 : gray level, 3 : RGB -1 or 3 Planes-)
  * @return  The encountered number of Samples Per Pixel, 1 by default.
@@ -787,7 +824,8 @@ int gdcmHeader::GetSamplesPerPixel()
    std::string strSize = GetEntryByNumber(0x0028,0x0002);
    if ( strSize == GDCM_UNFOUND )
    {
-      dbg.Verbose(0, "gdcmHeader::GetBitsStored: this is supposed to be mandatory");
+      dbg.Verbose(0, "gdcmHeader::GetBitsStored: this is supposed to "
+                     "be mandatory");
       return 1; // Well, it's supposed to be mandatory ...
                 // but sometimes it's missing : *we* assume Gray pixels
    }
@@ -795,7 +833,67 @@ int gdcmHeader::GetSamplesPerPixel()
 }
 
 /**
- * \ingroup gdcmHeader
+ * \brief   Check wether this a monochrome picture or not by accessing
+ *          the "Photometric Interpretation" tag ( 0x0028, 0x0004 ).
+ * @return  true when "MONOCHROME1" or "MONOCHROME2". False otherwise.
+ */
+bool gdcmHeader::IsMonochrome()
+{
+   std::string PhotometricInterp = GetEntryByNumber( 0x0028, 0x0004 );
+   if (   PhotometricInterp == "MONOCHROME1 "
+       || PhotometricInterp == "MONOCHROME2 " )
+   {
+      return true;
+   }
+   if ( PhotometricInterp == GDCM_UNFOUND )
+   {
+      dbg.Verbose(0, "gdcmHeader::IsMonochrome: absent Photometric "
+                     "Interpretation");
+   }
+   return false;
+}
+
+/**
+ * \brief   Check wether this a "PALETTE COLOR" picture or not by accessing
+ *          the "Photometric Interpretation" tag ( 0x0028, 0x0004 ).
+ * @return  true when "PALETTE COLOR". False otherwise.
+ */
+bool gdcmHeader::IsPaletteColor()
+{
+   std::string PhotometricInterp = GetEntryByNumber( 0x0028, 0x0004 );
+   if (   PhotometricInterp == "PALETTE COLOR " )
+   {
+      return true;
+   }
+   if ( PhotometricInterp == GDCM_UNFOUND )
+   {
+      dbg.Verbose(0, "gdcmHeader::IsPaletteColor: absent Photometric "
+                     "Interpretation");
+   }
+   return false;
+}
+
+/**
+ * \brief   Check wether this a "YBR_FULL" color picture or not by accessing
+ *          the "Photometric Interpretation" tag ( 0x0028, 0x0004 ).
+ * @return  true when "YBR_FULL". False otherwise.
+ */
+bool gdcmHeader::IsYBRFull()
+{
+   std::string PhotometricInterp = GetEntryByNumber( 0x0028, 0x0004 );
+   if (   PhotometricInterp == "YBR_FULL" )
+   {
+      return true;
+   }
+   if ( PhotometricInterp == GDCM_UNFOUND )
+   {
+      dbg.Verbose(0, "gdcmHeader::IsYBRFull: absent Photometric "
+                     "Interpretation");
+   }
+   return false;
+}
+
+/**
  * \brief   Retrieve the Planar Configuration for RGB images
  *          (0 : RGB Pixels , 1 : R Plane + G Plane + B Plane)
  * @return  The encountered Planar Configuration, 0 by default.
@@ -811,10 +909,9 @@ int gdcmHeader::GetPlanarConfiguration()
 }
 
 /**
- * \ingroup gdcmHeader
  * \brief   Return the size (in bytes) of a single pixel of data.
  * @return  The size in bytes of a single pixel of data; 0 by default
- *          0 means the file is NOT USABLE; the caller will have to check        
+ *          0 means the file is NOT USABLE; the caller will have to check
  */
 int gdcmHeader::GetPixelSize()
 {
@@ -845,7 +942,6 @@ int gdcmHeader::GetPixelSize()
 }
 
 /**
- * \ingroup gdcmHeader
  * \brief   Build the Pixel Type of the image.
  *          Possible values are:
  *          - 8U  unsigned  8 bit,
@@ -883,7 +979,7 @@ std::string gdcmHeader::GetPixelType()
       bitsAlloc = "8";  // by old RGB images)
    }
 
-   std::string sign = GetEntryByNumber(0x0028, 0x0103); // "Pixel Representation"
+   std::string sign = GetEntryByNumber(0x0028, 0x0103);//"Pixel Representation"
 
    if (sign == GDCM_UNFOUND )
    {
@@ -903,7 +999,6 @@ std::string gdcmHeader::GetPixelType()
 
 
 /**
- * \ingroup gdcmHeader
  * \brief   Recover the offset (from the beginning of the file) 
  *          of *image* pixels (not *icone image* pixels, if any !)
  * @return Pixel Offset
@@ -926,9 +1021,8 @@ size_t gdcmHeader::GetPixelOffset()
    }
 }
 
-// TODO : unify those two (previous one and next one)
+/// \todo TODO : unify those two (previous one and next one)
 /**
- * \ingroup gdcmHeader
  * \brief   Recover the pixel area length (in Bytes)
  * @return Pixel Element Length, as stored in the header
  *         (NOT the memory space necessary to hold the Pixels 
@@ -954,7 +1048,6 @@ size_t gdcmHeader::GetPixelAreaLength()
 }
 
 /**
-  * \ingroup gdcmHeader
   * \brief tells us if LUT are used
   * \warning Right now, 'Segmented xxx Palette Color Lookup Table Data'
   *          are NOT considered as LUT, since nobody knows
@@ -1002,7 +1095,6 @@ bool gdcmHeader::HasLUT()
 }
 
 /**
-  * \ingroup gdcmHeader
   * \brief gets the info from 0028,1101 : Lookup Table Desc-Red
   *             else 0
   * @return Lookup Table number of Bits , 0 by default
@@ -1014,7 +1106,8 @@ int gdcmHeader::GetLUTNbits()
    std::vector<std::string> tokens;
    int lutNbits;
 
-   //Just hope Lookup Table Desc-Red = Lookup Table Desc-Red = Lookup Table Desc-Blue
+   //Just hope Lookup Table Desc-Red = Lookup Table Desc-Red
+   //                                = Lookup Table Desc-Blue
    // Consistency already checked in GetLUTLength
    std::string lutDescription = GetEntryByNumber(0x0028,0x1101);
    if ( lutDescription == GDCM_UNFOUND )
@@ -1034,7 +1127,6 @@ int gdcmHeader::GetLUTNbits()
 }
 
 /**
-  * \ingroup gdcmHeader
   * \brief builts Red/Green/Blue/Alpha LUT from Header
   *         when (0028,0004),Photometric Interpretation = [PALETTE COLOR ]
   *          and (0028,1101),(0028,1102),(0028,1102)  
@@ -1207,7 +1299,8 @@ std::string gdcmHeader::GetTransfertSyntaxName()
    // use the gdcmTS (TS : Transfert Syntax)
    std::string transfertSyntax = GetEntryByNumber(0x0002,0x0010);
 
-   if ( transfertSyntax == GDCM_NOTLOADED ) { // fusible
+   if ( transfertSyntax == GDCM_NOTLOADED )
+   {
       std::cout << "Transfert Syntax not loaded. " << std::endl
                << "Better you increase MAX_SIZE_LOAD_ELEMENT_VALUE"
                << std::endl;
@@ -1354,8 +1447,8 @@ void gdcmHeader::GetImageOrientationPatient( float iop[6] )
       if( sscanf( strImOriPat.c_str(), "%f\\%f\\%f\\%f\\%f\\%f", 
           &iop[0], &iop[1], &iop[2], &iop[3], &iop[4], &iop[5]) != 6 )
       {
-         dbg.Verbose(0, "gdcmHeader::GetImageOrientationPatient: wrong Image Orientation Patient (0020,0037)");
-         // bug in the element 0x0020,0x0037
+         dbg.Verbose(0, "gdcmHeader::GetImageOrientationPatient: "
+                        "wrong Image Orientation Patient (0020,0037)");
       }
    }
    //For ACR-NEMA
@@ -1365,8 +1458,8 @@ void gdcmHeader::GetImageOrientationPatient( float iop[6] )
       if( sscanf( strImOriPat.c_str(), "%f\\%f\\%f\\%f\\%f\\%f", 
           &iop[0], &iop[1], &iop[2], &iop[3], &iop[4], &iop[5]) != 6 )
       {
-         dbg.Verbose(0, "gdcmHeader::GetImageOrientationPatient: wrong Image Orientation Patient (0020,0035)");
-         // bug in the element 0x0020,0x0035
+         dbg.Verbose(0, "gdcmHeader::GetImageOrientationPatient: "
+                        "wrong Image Orientation Patient (0020,0035)");
       }
    }
 }
index 196313bbf60f6c7e50c87e2cead6968b74296bf9..8940f0e380d80c04bf9f35370d258b41678146ac 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: gdcmHeader.h,v $
   Language:  C++
-  Date:      $Date: 2004/09/27 08:39:07 $
-  Version:   $Revision: 1.87 $
+  Date:      $Date: 2004/09/29 17:33:17 $
+  Version:   $Revision: 1.88 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
@@ -121,6 +121,11 @@ public:
    int GetSamplesPerPixel();
    int GetPlanarConfiguration();
    int GetPixelSize();
+   int GetHighBitPosition();
+   bool IsSignedPixelData();
+   bool IsMonochrome();
+   bool IsPaletteColor();
+   bool IsYBRFull();
 
    std::string GetPixelType();
    size_t GetPixelOffset();
diff --git a/src/gdcmPixelConvert.cxx b/src/gdcmPixelConvert.cxx
new file mode 100644 (file)
index 0000000..5923d8d
--- /dev/null
@@ -0,0 +1,206 @@
+/*=========================================================================
+                                                                                
+  Program:   gdcm
+  Module:    $RCSfile: gdcmPixelConvert.cxx,v $
+  Language:  C++
+  Date:      $Date: 2004/09/29 17:33:17 $
+  Version:   $Revision: 1.1 $
+                                                                                
+  Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
+  l'Image). All rights reserved. See Doc/License.txt or
+  http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details.
+                                                                                
+     This software is distributed WITHOUT ANY WARRANTY; without even
+     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+     PURPOSE.  See the above copyright notices for more information.
+                                                                                
+=========================================================================*/
+
+////// #include <stdio.h>
+#define str2num(str, typeNum) *((typeNum *)(str))
+
+#include "gdcmDebug.h"
+#include "gdcmPixelConvert.h"
+
+
+//-----------------------------------------------------------------------------
+// Constructor / Destructor
+gdcmPixelConvert::gdcmPixelConvert() 
+{
+   RGB = 0;
+   RGBSize = 0;
+   Uncompressed = 0;
+   UncompressedSize = 0;
+}
+
+void gdcmPixelConvert::Squeeze() 
+{
+   if ( RGB ) {
+      delete [] RGB;
+   } 
+   if ( Uncompressed ) {
+      delete [] Uncompressed;
+   }
+}
+
+gdcmPixelConvert::~gdcmPixelConvert() 
+{
+   Squeeze();
+}
+
+void gdcmPixelConvert::AllocateRGB()
+{
+  if ( RGB ) {
+     delete [] RGB;
+  }
+  RGB = new uint8_t[RGBSize];
+}
+
+void gdcmPixelConvert::AllocateUncompressed()
+{
+  if ( Uncompressed ) {
+     delete [] Uncompressed;
+  }
+  Uncompressed = new uint8_t[ UncompressedSize ];
+}
+
+/**
+ * \brief Read from file a 12 bits per pixel image and uncompress it
+ *        into a 16 bits per pixel image.
+ */
+bool gdcmPixelConvert::ReadAndUncompress12Bits( FILE* filePointer,
+                                                size_t uncompressedSize,
+                                                size_t PixelNumber )
+{
+   SetUncompressedSize( uncompressedSize );
+   AllocateUncompressed();
+
+   uint16_t* pdestination = (uint16_t*)Uncompressed;
+                                                                                
+   for(int p = 0; p < PixelNumber; p += 2 )
+   {
+      // 2 pixels 12bit =     [0xABCDEF]
+      // 2 pixels 16bit = [0x0ABD] + [0x0FCE]
+      uint8_t b0, b1, b2;
+      size_t ItemRead;
+      ItemRead = fread( &b0, 1, 1, filePointer);
+      if ( ItemRead != 1 )
+      {
+         return false;
+      }
+      ItemRead = fread( &b1, 1, 1, filePointer);
+      if ( ItemRead != 1 )
+      {
+         return false;
+      }
+      ItemRead = fread( &b2, 1, 1, filePointer);
+      if ( ItemRead != 1 )
+      {
+         return false;
+      }
+                                                                                
+      //Two steps are necessary to please VC++
+      *pdestination++ =  ((b0 >> 4) << 8) + ((b0 & 0x0f) << 4) + (b1 & 0x0f);
+      //                     A                     B                 D
+      *pdestination++ =  ((b2 & 0x0f) << 8) + ((b1 >> 4) << 4) + (b2 >> 4);
+      //                     F                     C                 E
+                                                                                
+      /// \todo JPR Troubles expected on Big-Endian processors ?
+   }
+   return true;
+}
+
+/**
+ * \brief Read from file an uncompressed image.
+ */
+bool gdcmPixelConvert::ReadUncompressed( FILE* filePointer,
+                                         size_t uncompressedSize,
+                                         size_t expectedSize )
+{
+   if ( expectedSize > uncompressedSize )
+   {
+      dbg.Verbose(0, "gdcmPixelConvert::ReadUncompressed: expectedSize"
+                     "is bigger than it should");
+      return false;
+   }
+   SetUncompressedSize( uncompressedSize );
+   AllocateUncompressed();
+   size_t ItemRead = fread( (void*)Uncompressed, expectedSize, 1, filePointer);
+   if ( ItemRead != 1 )
+   {
+      return false;
+   }
+   return true;
+}
+
+/**
+ * \brief  Convert a Gray plane and ( Lut R, Lut G, Lut B ) into an
+ *         RGB plane.
+ * @return True on success.
+ */
+bool gdcmPixelConvert::ConvertGrayAndLutToRGB( uint8_t *lutRGBA )
+
+{
+   /// We assume Uncompressed contains the decompressed gray plane
+   /// and build the RGB image.
+   SetRGBSize( UncompressedSize );
+   AllocateRGB();
+
+//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+//AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+//COPY HERE THE CODE OF GetImageDataIntoVector
+      
+   /// \todo check that operator new []didn't fail, and sometimes return false
+   return true;
+}
+
+/**
+ * \brief     Try to deal with RLE 16 Bits. 
+ *            We assume the RLE has allready been parsed and loaded in
+ *            Uncompressed (through \ref ReadAndUncompressRLE8Bits ).
+ *            We here need to make 16 Bits Pixels from Low Byte and
+ *            High Byte 'Planes'...(for what it may mean)
+ * @return    Boolean
+ */
+bool gdcmPixelConvert::UncompressRLE16BitsFromRLE8Bits(
+                       size_t PixelNumber,
+                       int    NumberOfFrames )
+
+{
+   /// We assumed Uncompressed contains the decoded RLE pixels but as
+   /// 8 bits per pixel. In order to convert those pixels to 16 bits
+   /// per pixel we need to double the space. Hence we cannot work in
+   /// place within Uncompressed. So, here is how we handle things:
+   /// - First  stage: copy Uncompressed in a safe place, say OldUncompressed
+   /// - Second stage: reallocate Uncompressed with the needed space
+   /// - Third  stage: expand from OldUncompressed to Uncompressed
+   /// - Fourth stage: clean up OldUncompressed
+
+   /// First stage:
+   uint8_t* OldUncompressed = new uint8_t[UncompressedSize * 2];
+   memmove( OldUncompressed, Uncompressed, UncompressedSize);
+
+   /// Second stage:
+   SetUncompressedSize( 2 * UncompressedSize );
+   AllocateUncompressed();
+
+   /// Third stage:
+   uint8_t* x = Uncompressed;
+   uint8_t* a = OldUncompressed;
+   uint8_t* b = a + PixelNumber;
+
+   for ( int i = 0; i < NumberOfFrames; i++ )
+   {
+      for ( int j = 0; j < PixelNumber; j++ )
+      {
+         *(x++) = *(a++);
+         *(x++) = *(b++);
+      }
+   }
+
+   // Fourth stage:
+   delete[] OldUncompressed;
+      
+   /// \todo check that operator new []didn't fail, and sometimes return false
+   return true;
+}
diff --git a/src/gdcmPixelConvert.h b/src/gdcmPixelConvert.h
new file mode 100644 (file)
index 0000000..f567a30
--- /dev/null
@@ -0,0 +1,71 @@
+/*=========================================================================
+                                                                                
+  Program:   gdcm
+  Module:    $RCSfile: gdcmPixelConvert.h,v $
+  Language:  C++
+  Date:      $Date: 2004/09/29 17:33:17 $
+  Version:   $Revision: 1.1 $
+                                                                                
+  Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
+  l'Image). All rights reserved. See Doc/License.txt or
+  http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details.
+                                                                                
+     This software is distributed WITHOUT ANY WARRANTY; without even
+     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+     PURPOSE.  See the above copyright notices for more information.
+                                                                                
+=========================================================================*/
+
+
+#ifndef GDCMPIXELCONVERT_H
+#define GDCMPIXELCONVERTL_H
+
+#include "gdcmCommon.h"
+
+/*
+ * \brief Utility container for gathering the various forms the pixel data
+ *        migth take during the user demanded processes.
+ */
+class GDCM_EXPORT gdcmPixelConvert {
+friend class gdcmFile;
+   /// Pixel data represented as RGB after color interpretation
+   uint8_t* RGB;
+   size_t   RGBSize;          //aka ImageDataSize
+   /// Pixel data after decompression and bit/byte rearrangement.
+   uint8_t* Uncompressed;
+   size_t   UncompressedSize;
+public:
+   gdcmPixelConvert();
+   ~gdcmPixelConvert();
+
+   uint8_t* GetRGB() { return RGB; }
+   void     SetRGBSize( size_t size ) { RGBSize = size; }
+   size_t   GetRGBSize() { return RGBSize; }
+   void     AllocateRGB();
+
+   uint8_t* GetUncompressed() { return Uncompressed; }
+   void     SetUncompressedSize( size_t size ) { UncompressedSize = size; }
+   size_t   GetUncompressedSize() { return UncompressedSize; }
+   void     AllocateUncompressed();
+
+   void Squeeze();
+//////////////////////////////////////////////////////////
+// In progress
+bool ReadAndUncompress12Bits( FILE* filePointer,
+                              size_t uncompressedSize,
+                              size_t PixelNumber );
+bool ReadUncompressed( FILE* filePointer,
+                       size_t uncompressedSize,
+                       size_t expectedSize );
+bool ConvertGrayAndLutToRGB( uint8_t *lutRGBA );
+bool ReadAndUncompressRLE8Bits(FILE* fp, size_t uncompressedSize );
+bool UncompressRLE16BitsFromRLE8Bits( size_t PixelNumber, int NumberOfFrames );
+
+
+
+
+
+};
+
+//-----------------------------------------------------------------------------
+#endif
diff --git a/src/gdcmPixelStuff.cxx b/src/gdcmPixelStuff.cxx
deleted file mode 100644 (file)
index 85dd2cb..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/*=========================================================================
-                                                                                
-  Program:   gdcm
-  Module:    $RCSfile: gdcmPixelStuff.cxx,v $
-  Language:  C++
-  Date:      $Date: 2004/09/27 08:39:07 $
-  Version:   $Revision: 1.2 $
-                                                                                
-  Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
-  l'Image). All rights reserved. See Doc/License.txt or
-  http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details.
-                                                                                
-     This software is distributed WITHOUT ANY WARRANTY; without even
-     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-     PURPOSE.  See the above copyright notices for more information.
-                                                                                
-=========================================================================*/
-
-#include "gdcmPixelStuff.h"
-
-
-//-----------------------------------------------------------------------------
-// Constructor / Destructor
-gdcmPixelStuff::gdcmPixelStuff(void) 
-{
-
-}
-
-gdcmPixelStuff::~gdcmPixelStuff() 
-{
-
-}
-
-
-//-----------------------------------------------------------------------------
-// Public
-
-//-----------------------------------------------------------------------------
-// Protected
-
-//-----------------------------------------------------------------------------
-// Private
-
-//-----------------------------------------------------------------------------
diff --git a/src/gdcmPixelStuff.h b/src/gdcmPixelStuff.h
deleted file mode 100644 (file)
index ee90249..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/*=========================================================================
-                                                                                
-  Program:   gdcm
-  Module:    $RCSfile: gdcmPixelStuff.h,v $
-  Language:  C++
-  Date:      $Date: 2004/09/27 08:39:07 $
-  Version:   $Revision: 1.2 $
-                                                                                
-  Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
-  l'Image). All rights reserved. See Doc/License.txt or
-  http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details.
-                                                                                
-     This software is distributed WITHOUT ANY WARRANTY; without even
-     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-     PURPOSE.  See the above copyright notices for more information.
-                                                                                
-=========================================================================*/
-
-
-#ifndef GDCMPIXELSTUFF_H
-#define GDCMPIXELSTUFF_H
-
-#include "gdcmCommon.h"
-
-//-----------------------------------------------------------------------------
-/*
- * Container for Pixel related stuff
- * \note   This is a singleton
- */
-class GDCM_EXPORT gdcmPixelStuff {
-public:
-   gdcmPixelStuff(void);
-   ~gdcmPixelStuff();
-
-
-};
-
-//-----------------------------------------------------------------------------
-#endif
diff --git a/src/jpeg/Makefile.am b/src/jpeg/Makefile.am
deleted file mode 100644 (file)
index 578346d..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-SUBDIRS = libijg12 \
-       libijg8 \
-       ljpg
diff --git a/src/jpeg/libijg12/Makefile.am b/src/jpeg/libijg12/Makefile.am
deleted file mode 100644 (file)
index ba1b4dc..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-LTVERSION = 0:1:0
-
-lib_LTLIBRARIES = libgdcmijpeg12.la
-
-##CXXFLAGS = @CXXFLAGS@
-
-libgdcmijpeg12_la_SOURCES= \
-       jcapimin12.c \
-       jcapistd12.c \
-       jctrans12.c \
-       jcparam12.c \
-       jdatadst12.c \
-       jcinit12.c \
-       jcmaster12.c \
-       jcmarker12.c \
-       jcmainct12.c \
-       jcprepct12.c \
-       jccoefct12.c \
-       jccolor12.c \
-       jcsample12.c \
-       jchuff12.c \
-       jcphuff12.c \
-       jcdctmgr12.c \
-       jfdctfst12.c \
-       jfdctflt12.c \
-       jfdctint12.c \
-       jdapimin12.c \
-       jdapistd12.c \
-       jdtrans12.c \
-       jdatasrc12.c \
-       jdmaster12.c \
-       jdinput12.c \
-       jdmarker12.c \
-       jdhuff12.c \
-       jdphuff12.c \
-       jdmainct12.c \
-       jdcoefct12.c \
-       jdpostct12.c \
-       jddctmgr12.c \
-       jidctfst12.c \
-       jidctflt12.c \
-       jidctint12.c \
-       jidctred12.c \
-       jdsample12.c \
-       jdcolor12.c \
-       jquant112.c \
-       jquant212.c \
-       jdmerge12.c \
-       jcomapi12.c \
-       jutils12.c \
-       jerror12.c \
-       jmemmgr12.c \
-       jmemnobs12.c
-
-libgdcmijpeg12includedir = $(includedir)
-libgdcmijpeg12include_HEADERS = \
-       jchuff12.h  \
-       jconfig12.h  \
-       jdct12.h  \
-       jdhuff12.h  \
-       jerror12.h  \
-       jinclude12.h  \
-       jmemsys12.h  \
-       jmorecfg12.h  \
-       jpegint12.h  \
-       jpeglib12.h  \
-       jversion12.h
-
-EXTRA_DIST = \
-   jconfig.linux \
-   jconfig.vc
diff --git a/src/jpeg/libijg8/Makefile.am b/src/jpeg/libijg8/Makefile.am
deleted file mode 100644 (file)
index 55aff48..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-LTVERSION = 0:1:0
-
-lib_LTLIBRARIES = libgdcmijpeg8.la
-
-##CXXFLAGS = @CXXFLAGS@
-
-libgdcmijpeg8_la_SOURCES=              \
-       jcapimin.c \
-       jcapistd.c \
-       jctrans.c \
-       jcparam.c \
-       jdatadst.c \
-       jcinit.c \
-       jcmaster.c \
-       jcmarker.c \
-       jcmainct.c \
-       jcprepct.c \
-       jccoefct.c \
-       jccolor.c \
-       jcsample.c \
-       jchuff.c \
-       jcphuff.c \
-       jcdctmgr.c \
-       jfdctfst.c \
-       jfdctflt.c \
-       jfdctint.c \
-       jdapimin.c \
-       jdapistd.c \
-       jdtrans.c \
-       jdatasrc.c \
-       jdmaster.c \
-       jdinput.c \
-       jdmarker.c \
-       jdhuff.c \
-       jdphuff.c \
-       jdmainct.c \
-       jdcoefct.c \
-       jdpostct.c \
-       jddctmgr.c \
-       jidctfst.c \
-       jidctflt.c \
-       jidctint.c \
-       jidctred.c \
-       jdsample.c \
-       jdcolor.c \
-       jquant1.c \
-       jquant2.c \
-       jdmerge.c \
-       jcomapi.c \
-       jutils.c \
-       jerror.c \
-       jmemmgr.c \
-       jmemnobs.c \
-       rdrle.c
-
-libgdcmijpeg8includedir = $(includedir)
-libgdcmijpeg8include_HEADERS = \
-       jchuff.h  \
-       jconfig.h  \
-       jdct.h  \
-       jdhuff.h  \
-       jerror.h  \
-       jinclude.h  \
-       jmemsys.h  \
-       jmorecfg.h  \
-       jpegint.h  \
-       jpeglib.h  \
-       jversion.h 
-
-EXTRA_DIST = \
-   jconfig.linux \
-   jconfig.vc
diff --git a/src/jpeg/ljpg/Makefile.am b/src/jpeg/ljpg/Makefile.am
deleted file mode 100644 (file)
index cb51f57..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-LTVERSION = 0:1:0
-
-lib_LTLIBRARIES = libgdcmjpg.la
-
-##CXXFLAGS = @CXXFLAGS@
-
-libgdcmjpg_la_SOURCES = \
- decomp.c   \
- huffd.c    \
- jpegutil.c \
- mcu.c      \
- predict.c  \
- read.c
-
-libgdcmjpgincludedir = $(includedir)
-libgdcmjpginclude_HEADERS = \
- io.h       \
- jpeg.h     \
- jpegless.h \
- mcu.h      \
- predict.h  \
- proto.h
-
diff --git a/uml.xmi b/uml.xmi
deleted file mode 100644 (file)
index a85752e..0000000
--- a/uml.xmi
+++ /dev/null
@@ -1,998 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<XMI xmlns:UML="org.omg/standards/UML" verified="false" timestamp="" xmi.version="1.2" >
- <XMI.header>
-  <XMI.documentation>
-   <XMI.exporter>umbrello uml modeller http://uml.sf.net</XMI.exporter>
-   <XMI.exporterVersion>1.1.5</XMI.exporterVersion>
-  </XMI.documentation>
-  <XMI.model xmi.name="uml" href="/home/kyron/devel/gdcm/uml.xmi" />
-  <XMI.metamodel xmi.name="UML" href="UML.xml" xmi.version="1.3" />
- </XMI.header>
- <XMI.content>
-  <docsettings viewid="400" documentation="" uniqueid="405" />
-  <umlobjects>
-   <UML:Class stereotype="class" package="" xmi.id="3" abstract="0" documentation="" name="gdcmHeaderIdo" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="4" type="void" abstract="0" documentation="" name="BuildHeader" static="0" scope="202" />
-    <UML:Operation stereotype="" package="" xmi.id="7" type="void" abstract="0" documentation="" name="setAcrLibido" static="0" scope="202" />
-    <UML:Operation stereotype="" package="" xmi.id="5" type="" abstract="0" documentation="" name="gdcmHeaderIdo" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="6" value="" type="char *" abstract="0" documentation="" name="filename" static="0" scope="200" />
-    </UML:Operation>
-   </UML:Class>
-   <UML:Class stereotype="class" package="" xmi.id="8" abstract="0" documentation="" name="gdcmGlobal" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="13" type="" abstract="0" documentation="" name="gdcmGlobal" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="14" type="" abstract="0" documentation="" name="~gdcmGlobal" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="12" type="gdcmVR *" abstract="0" documentation="" name="GetVR" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="11" type="gdcmDictSet *" abstract="0" documentation="" name="GetDicts" static="0" scope="200" />
-   </UML:Class>
-   <UML:Class stereotype="class" package="" xmi.id="15" abstract="0" documentation="" name="gdcmVR" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="19" type="" abstract="0" documentation="" name="gdcmVR" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="20" type="" abstract="0" documentation="" name="~gdcmVR" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="17" type="int" abstract="0" documentation="" name="Count" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="18" value="" type="VRKey" abstract="0" documentation="" name="key" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Attribute stereotype="" package="" xmi.id="16" value="" type="VRHT" abstract="0" documentation="" name="vr" static="0" scope="201" />
-   </UML:Class>
-   <UML:Class stereotype="class" package="" xmi.id="21" abstract="0" documentation="" name="gdcmHeader" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="147" type="void" abstract="0" documentation="" name="SkipBytes" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="148" value="" type="guint32" abstract="0" documentation="" name="NBytes" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="120" type="guint16" abstract="0" documentation="" name="ReadInt16" static="0" scope="202" />
-    <UML:Operation stereotype="" package="" xmi.id="121" type="guint32" abstract="0" documentation="" name="ReadInt32" static="0" scope="202" />
-    <UML:Operation stereotype="" package="" xmi.id="153" type="guint16" abstract="0" documentation="" name="SwapShort" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="154" value="" type="guint16" abstract="0" documentation="" name="a" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="151" type="guint32" abstract="0" documentation="" name="SwapLong" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="152" value="" type="guint32" abstract="0" documentation="" name="a" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="37" type="guint32" abstract="0" documentation="" name="FindLengthOB" static="0" scope="202" />
-    <UML:Operation stereotype="" package="" xmi.id="85" type="void" abstract="0" documentation="" name="Initialise" static="0" scope="202" />
-    <UML:Operation stereotype="" package="" xmi.id="33" type="void" abstract="0" documentation="" name="CheckSwap" static="0" scope="202" />
-    <UML:Operation stereotype="" package="" xmi.id="155" type="void" abstract="0" documentation="" name="SwitchSwapToBigEndian" static="0" scope="202" />
-    <UML:Operation stereotype="" package="" xmi.id="109" type="gdcmElValue *" abstract="0" documentation="" name="NewManualElValToPubDict" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="110" value="" type="string" abstract="0" documentation="" name="NewTagName" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="111" value="" type="string" abstract="0" documentation="" name="VR" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="127" type="void" abstract="0" documentation="" name="SetMaxSizeLoadElementValue" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="128" value="" type="long" abstract="0" documentation="" name="NewSize" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="45" type="gdcmDictEntry *" abstract="0" documentation="" name="GetDictEntryByNumber" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="46" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="47" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="43" type="gdcmDictEntry *" abstract="0" documentation="" name="GetDictEntryByName" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="44" value="" type="string" abstract="0" documentation="" name="name" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="122" type="gdcmElValue *" abstract="0" documentation="" name="ReadNextElement" static="0" scope="202" />
-    <UML:Operation stereotype="" package="" xmi.id="106" type="gdcmElValue *" abstract="0" documentation="" name="NewElValueByNumber" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="107" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="108" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="104" type="gdcmElValue *" abstract="0" documentation="" name="NewElValueByName" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="105" value="" type="string" abstract="0" documentation="" name="name" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="35" type="void" abstract="0" documentation="" name="FindLength" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="36" value="" type="gdcmElValue *" abstract="0" documentation="" name="ElVal" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="38" type="void" abstract="0" documentation="" name="FindVR" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="39" value="" type="gdcmElValue *" abstract="0" documentation="" name="ElVal" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="99" type="void" abstract="0" documentation="" name="LoadElementValue" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="100" value="" type="gdcmElValue *" abstract="0" documentation="" name="ElVal" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="101" type="void" abstract="0" documentation="" name="LoadElementValueSafe" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="102" value="" type="gdcmElValue *" abstract="0" documentation="" name="ElVal" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="149" type="void" abstract="0" documentation="" name="SkipElementValue" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="150" value="" type="gdcmElValue *" abstract="0" documentation="" name="ElVal" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="40" type="void" abstract="0" documentation="" name="FixFoundLength" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="41" value="" type="gdcmElValue *" abstract="0" documentation="" name="ElVal" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="42" value="" type="guint32" abstract="0" documentation="" name="FoundLength" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="86" type="bool" abstract="0" documentation="" name="IsAnInteger" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="87" value="" type="gdcmElValue *" abstract="0" documentation="" name="ElVal" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="103" type="void" abstract="0" documentation="" name="LoadElements" static="0" scope="202" />
-    <UML:Operation stereotype="" package="" xmi.id="112" type="bool" abstract="0" documentation="" name="OpenFile" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="113" value="" type="bool" abstract="0" documentation="" name="exception_on_error" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="34" type="bool" abstract="0" documentation="" name="CloseFile" static="0" scope="202" />
-    <UML:Operation stereotype="" package="" xmi.id="164" type="int" abstract="0" documentation="" name="write" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="165" value="" type="ostream &amp;" abstract="0" documentation="" name="os" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="159" type="int" abstract="0" documentation="" name="anonymize" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="160" value="" type="ostream &amp;" abstract="0" documentation="" name="os" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="98" type="bool" abstract="0" documentation="" name="IsReadable" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="92" type="bool" abstract="0" documentation="" name="IsImplicitVRLittleEndianTransferSyntax" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="91" type="bool" abstract="0" documentation="" name="IsExplicitVRLittleEndianTransferSyntax" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="88" type="bool" abstract="0" documentation="" name="IsDeflatedExplicitVRLittleEndianTransferSyntax" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="90" type="bool" abstract="0" documentation="" name="IsExplicitVRBigEndianTransferSyntax" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="93" type="bool" abstract="0" documentation="" name="IsJPEGBaseLineProcess1TransferSyntax" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="94" type="bool" abstract="0" documentation="" name="IsJPEGExtendedProcess2_4TransferSyntax" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="95" type="bool" abstract="0" documentation="" name="IsJPEGExtendedProcess3_5TransferSyntax" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="97" type="bool" abstract="0" documentation="" name="IsJPEGSpectralSelectionProcess6_8TransferSyntax" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="96" type="bool" abstract="0" documentation="" name="IsJPEGLossless" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="89" type="bool" abstract="0" documentation="" name="IsDicomV3" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="114" type="virtual void" abstract="0" documentation="" name="ParseHeader" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="115" value="" type="bool" abstract="0" documentation="" name="exception_on_error" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="161" type="" abstract="0" documentation="" name="gdcmHeader" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="162" value="" type="const char *" abstract="0" documentation="" name="filename" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="163" value="" type="bool" abstract="0" documentation="" name="exception_on_error" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="166" type="virtual " abstract="0" documentation="" name="~gdcmHeader" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="58" type="size_t" abstract="0" documentation="" name="GetPixelOffset" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="81" type="int" abstract="0" documentation="" name="GetSwapCode" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="61" type="string" abstract="0" documentation="" name="GetPubElValByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="62" value="" type="string" abstract="0" documentation="" name="TagName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="63" type="string" abstract="0" documentation="" name="GetPubElValByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="64" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="65" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="66" type="string" abstract="0" documentation="" name="GetPubElValRepByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="67" value="" type="string" abstract="0" documentation="" name="TagName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="68" type="string" abstract="0" documentation="" name="GetPubElValRepByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="69" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="70" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="60" type="TagElValueHT &amp;" abstract="0" documentation="" name="GetPubElVal" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="118" type="void" abstract="0" documentation="" name="PrintPubElVal" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="119" value="" type="ostream &amp;" abstract="0" documentation="" name="os" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="116" type="void" abstract="0" documentation="" name="PrintPubDict" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="117" value="" type="ostream &amp;" abstract="0" documentation="" name="os" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="71" type="string" abstract="0" documentation="" name="GetShaElValByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="72" value="" type="string" abstract="0" documentation="" name="TagName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="73" type="string" abstract="0" documentation="" name="GetShaElValByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="74" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="75" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="76" type="string" abstract="0" documentation="" name="GetShaElValRepByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="77" value="" type="string" abstract="0" documentation="" name="TagName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="78" type="string" abstract="0" documentation="" name="GetShaElValRepByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="79" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="80" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="48" type="string" abstract="0" documentation="" name="GetElValByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="49" value="" type="string" abstract="0" documentation="" name="TagName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="50" type="string" abstract="0" documentation="" name="GetElValByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="51" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="52" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="53" type="string" abstract="0" documentation="" name="GetElValRepByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="54" value="" type="string" abstract="0" documentation="" name="TagName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="55" type="string" abstract="0" documentation="" name="GetElValRepByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="56" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="57" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="129" type="int" abstract="0" documentation="" name="SetPubElValByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="130" value="" type="string" abstract="0" documentation="" name="content" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="131" value="" type="string" abstract="0" documentation="" name="TagName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="132" type="int" abstract="0" documentation="" name="SetPubElValByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="133" value="" type="string" abstract="0" documentation="" name="content" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="134" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="135" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="140" type="int" abstract="0" documentation="" name="SetShaElValByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="141" value="" type="string" abstract="0" documentation="" name="content" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="142" value="" type="string" abstract="0" documentation="" name="ShadowTagName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="143" type="int" abstract="0" documentation="" name="SetShaElValByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="144" value="" type="string" abstract="0" documentation="" name="content" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="145" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="146" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="136" type="int" abstract="0" documentation="" name="SetPubElValLengthByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="137" value="" type="guint32" abstract="0" documentation="" name="lgr" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="138" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="139" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="123" type="int" abstract="0" documentation="" name="ReplaceOrCreateByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="124" value="" type="string" abstract="0" documentation="" name="Value" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="125" value="" type="guint16" abstract="0" documentation="" name="Group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="126" value="" type="guint16" abstract="0" documentation="" name="Elem" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="82" type="int" abstract="0" documentation="" name="GetXSize" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="83" type="int" abstract="0" documentation="" name="GetYSize" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="84" type="int" abstract="0" documentation="" name="GetZSize" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="59" type="string" abstract="0" documentation="" name="GetPixelType" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="156" type="int" abstract="0" documentation="" name="Write" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="157" value="" type="FILE *" abstract="0" documentation="" name="fp" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="158" value="" type="FileType" abstract="0" documentation="" name="type" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Attribute stereotype="" package="" xmi.id="29" value="" type="string" abstract="0" documentation="" name="filename" static="0" scope="201" />
-    <UML:Attribute stereotype="" package="" xmi.id="32" value="" type="int" abstract="0" documentation="" name="sw" static="0" scope="201" />
-    <UML:Attribute stereotype="" package="" xmi.id="23" value="" type="guint32" abstract="0" documentation="" name="MaxSizeLoadElementValue" static="0" scope="201" />
-    <UML:Attribute stereotype="" package="" xmi.id="31" value="" type="FILE *" abstract="0" documentation="" name="fp" static="0" scope="202" />
-    <UML:Attribute stereotype="" package="" xmi.id="30" value="" type="FileType" abstract="0" documentation="" name="filetype" static="0" scope="202" />
-   </UML:Class>
-   <UML:Class stereotype="class" package="" xmi.id="167" abstract="0" documentation="" name="gdcmFormatError" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="168" type="explicit" abstract="0" documentation="" name="gdcmFormatError" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="169" value="" type="const string &amp;" abstract="0" documentation="" name="from" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="170" value="" type="const string &amp;" abstract="0" documentation="" name="error" static="0" scope="200" />
-    </UML:Operation>
-   </UML:Class>
-   <UML:Class stereotype="class" package="" xmi.id="171" abstract="0" documentation="" name="gdcmElValSet" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="216" type="" abstract="0" documentation="" name="~gdcmElValSet" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="174" type="void" abstract="0" documentation="" name="Add" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="175" value="" type="gdcmElValue *" abstract="0" documentation="" name="newElValue" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="189" type="void" abstract="0" documentation="" name="Print" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="190" value="" type="ostream &amp;" abstract="0" documentation="" name="os" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="191" type="void" abstract="0" documentation="" name="PrintByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="192" value="" type="ostream &amp;" abstract="0" documentation="" name="os" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="210" type="int" abstract="0" documentation="" name="Write" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="211" value="" type="FILE *" abstract="0" documentation="" name="fp" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="212" value="" type="FileType" abstract="0" documentation="" name="type" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="185" type="gdcmElValue *" abstract="0" documentation="" name="GetElementByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="186" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="187" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="183" type="gdcmElValue *" abstract="0" documentation="" name="GetElementByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="184" value="" type="string" abstract="0" documentation="" name="TagName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="180" type="string" abstract="0" documentation="" name="GetElValueByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="181" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="182" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="178" type="string" abstract="0" documentation="" name="GetElValueByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="179" value="" type="string" abstract="0" documentation="" name="TagName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="188" type="TagElValueHT &amp;" abstract="0" documentation="" name="GetTagHt" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="196" type="int" abstract="0" documentation="" name="SetElValueByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="197" value="" type="string" abstract="0" documentation="" name="content" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="198" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="199" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="193" type="int" abstract="0" documentation="" name="SetElValueByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="194" value="" type="string" abstract="0" documentation="" name="content" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="195" value="" type="string" abstract="0" documentation="" name="TagName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="203" type="int" abstract="0" documentation="" name="SetElValueLengthByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="204" value="" type="guint32" abstract="0" documentation="" name="l" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="205" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="206" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="200" type="int" abstract="0" documentation="" name="SetElValueLengthByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="201" value="" type="guint32" abstract="0" documentation="" name="l" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="202" value="" type="string" abstract="0" documentation="" name="TagName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="176" type="guint32" abstract="0" documentation="" name="GenerateFreeTagKeyInGroup" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="177" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="207" type="void" abstract="0" documentation="" name="UpdateGroupLength" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="208" value="" type="bool" abstract="0" documentation="" name="SkipSequence" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="209" value="" type="FileType" abstract="0" documentation="" name="type" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="213" type="void" abstract="0" documentation="" name="WriteElements" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="214" value="" type="FileType" abstract="0" documentation="" name="type" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="215" value="" type="FILE *" abstract="0" documentation="" name="fp" static="0" scope="200" />
-    </UML:Operation>
-   </UML:Class>
-   <UML:Class stereotype="class" package="" xmi.id="217" abstract="0" documentation="" name="gdcmFileError" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="218" type="explicit" abstract="0" documentation="" name="gdcmFileError" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="219" value="" type="const string &amp;" abstract="0" documentation="" name="from" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="220" value="" type="const string &amp;" abstract="0" documentation="" name="error" static="0" scope="200" />
-    </UML:Operation>
-   </UML:Class>
-   <UML:Class stereotype="class" package="" xmi.id="221" abstract="0" documentation="" name="gdcmException" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="230" type="explicit" abstract="0" documentation="" name="gdcmException" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="231" value="" type="const string &amp;" abstract="0" documentation="" name="from" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="232" value="" type="const string &amp;" abstract="0" documentation="" name="error" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="236" type="" abstract="1" documentation="" name="~gdcmException" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="233" type="const string &amp;" abstract="0" documentation="" name="getError" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="224" type="" abstract="0" documentation="" name="operator const char*" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="235" type="const char *" abstract="1" documentation="" name="what" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="228" type="void" abstract="0" documentation="" name="fatal" static="1" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="229" value="" type="const char *" abstract="0" documentation="" name="from" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="234" type="string" abstract="1" documentation="" name="getName" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="225" type="ostream &amp;" abstract="0" documentation="" name="operator&lt;&lt;" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="226" value="" type="ostream &amp;" abstract="0" documentation="" name="os" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="227" value="" type="const gdcmException &amp;" abstract="0" documentation="" name="e" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Attribute stereotype="" package="" xmi.id="222" value="" type="string" abstract="0" documentation="" name="error" static="0" scope="202" />
-    <UML:Attribute stereotype="" package="" xmi.id="223" value="" type="string" abstract="0" documentation="" name="from" static="0" scope="202" />
-   </UML:Class>
-   <UML:Class stereotype="class" package="" xmi.id="237" abstract="0" documentation="" name="gdcmFile" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="255" type="void" abstract="0" documentation="" name="SwapZone" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="256" value="" type="void *" abstract="0" documentation="" name="im" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="257" value="" type="int" abstract="0" documentation="" name="swap" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="258" value="" type="int" abstract="0" documentation="" name="lgr" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="259" value="" type="int" abstract="0" documentation="" name="nb" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="247" type="bool" abstract="0" documentation="" name="ReadPixelData" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="248" value="" type="void *" abstract="0" documentation="" name="destination" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="262" type="int" abstract="0" documentation="" name="WriteBase" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="263" value="" type="string" abstract="0" documentation="" name="FileName" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="264" value="" type="FileType" abstract="0" documentation="" name="type" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="275" type="" abstract="0" documentation="" name="gdcmFile" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="276" value="" type="string &amp;" abstract="0" documentation="" name="filename" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="273" type="" abstract="0" documentation="" name="gdcmFile" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="274" value="" type="const char *" abstract="0" documentation="" name="filename" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="254" type="void" abstract="0" documentation="" name="SetPixelDataSizeFromHeader" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="246" type="size_t" abstract="0" documentation="" name="GetImageDataSize" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="242" type="void *" abstract="0" documentation="" name="GetImageData" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="243" type="size_t" abstract="0" documentation="" name="GetImageDataIntoVector" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="244" value="" type="void *" abstract="0" documentation="" name="destination" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="245" value="" type="size_t" abstract="0" documentation="" name="MaxSize" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="249" type="int" abstract="0" documentation="" name="SetImageData" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="250" value="" type="void *" abstract="0" documentation="" name="Data" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="251" value="" type="size_t" abstract="0" documentation="" name="ExpectedSize" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="252" type="void" abstract="0" documentation="" name="SetImageDataSize" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="253" value="" type="size_t" abstract="0" documentation="" name="ExpectedSize" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="271" type="int" abstract="0" documentation="" name="WriteRawData" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="272" value="" type="string" abstract="0" documentation="" name="nomFichier" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="269" type="int" abstract="0" documentation="" name="WriteDcmImplVR" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="270" value="" type="string" abstract="0" documentation="" name="nomFichier" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="267" type="int" abstract="0" documentation="" name="WriteDcmImplVR" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="268" value="" type="const char *" abstract="0" documentation="" name="nomFichier" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="265" type="int" abstract="0" documentation="" name="WriteDcmExplVR" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="266" value="" type="string" abstract="0" documentation="" name="nomFichier" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="260" type="int" abstract="0" documentation="" name="WriteAcr" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="261" value="" type="string" abstract="0" documentation="" name="nomFichier" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Attribute stereotype="" package="" xmi.id="240" value="" type="void *" abstract="0" documentation="" name="PixelData" static="0" scope="201" />
-    <UML:Attribute stereotype="" package="" xmi.id="241" value="" type="size_t" abstract="0" documentation="" name="lgrTotale" static="0" scope="201" />
-    <UML:Attribute stereotype="" package="" xmi.id="239" value="" type="int" abstract="0" documentation="" name="Parsed" static="0" scope="201" />
-    <UML:Attribute stereotype="" package="" xmi.id="238" value="" type="string" abstract="0" documentation="" name="OrigFileName" static="0" scope="201" />
-   </UML:Class>
-   <UML:Class stereotype="class" package="" xmi.id="277" abstract="0" documentation="" name="gdcmElValue" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="305" type="" abstract="0" documentation="" name="gdcmElValue" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="306" value="" type="gdcmDictEntry *" abstract="0" documentation="" name="in" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="294" type="void" abstract="0" documentation="" name="SetDictEntry" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="295" value="" type="gdcmDictEntry *" abstract="0" documentation="" name="NewEntry" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="293" type="bool" abstract="0" documentation="" name="IsVrUnknown" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="296" type="void" abstract="0" documentation="" name="SetImplicitVr" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="292" type="bool" abstract="0" documentation="" name="IsImplicitVr" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="283" type="gdcmDictEntry *" abstract="0" documentation="" name="GetDictEntry" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="285" type="guint16" abstract="0" documentation="" name="GetGroup" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="284" type="guint16" abstract="0" documentation="" name="GetElement" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="286" type="string" abstract="0" documentation="" name="GetKey" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="288" type="string" abstract="0" documentation="" name="GetName" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="290" type="string" abstract="0" documentation="" name="GetVR" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="301" type="void" abstract="0" documentation="" name="SetVR" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="302" value="" type="string" abstract="0" documentation="" name="v" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="297" type="void" abstract="0" documentation="" name="SetLength" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="298" value="" type="guint32" abstract="0" documentation="" name="l" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="287" type="guint32" abstract="0" documentation="" name="GetLength" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="303" type="void" abstract="0" documentation="" name="SetValue" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="304" value="" type="string" abstract="0" documentation="" name="val" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="291" type="string" abstract="0" documentation="" name="GetValue" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="289" type="size_t" abstract="0" documentation="" name="GetOffset" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="299" type="void" abstract="0" documentation="" name="SetOffset" static="0" scope="201" >
-     <UML:Parameter stereotype="" package="" xmi.id="300" value="" type="size_t" abstract="0" documentation="" name="of" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Attribute stereotype="" package="" xmi.id="279" value="" type="guint32" abstract="0" documentation="" name="LgrElem" static="0" scope="201" />
-    <UML:Attribute stereotype="" package="" xmi.id="278" value="" type="bool" abstract="0" documentation="" name="ImplicitVr" static="0" scope="201" />
-    <UML:Attribute stereotype="" package="" xmi.id="282" value="" type="string" abstract="0" documentation="" name="value" static="0" scope="200" />
-    <UML:Attribute stereotype="" package="" xmi.id="280" value="" type="size_t" abstract="0" documentation="" name="Offset" static="0" scope="200" />
-   </UML:Class>
-   <UML:Class stereotype="class" package="" xmi.id="307" abstract="0" documentation="" name="gdcmDictEntry" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="328" type="" abstract="0" documentation="" name="gdcmDictEntry" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="329" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="330" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="331" value="" type="string" abstract="0" documentation="" name="vr" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="332" value="" type="string" abstract="0" documentation="" name="fourth" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="333" value="" type="string" abstract="0" documentation="" name="name" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="325" type="TagKey" abstract="0" documentation="" name="TranslateToKey" static="1" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="326" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="327" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="316" type="guint16" abstract="0" documentation="" name="GetGroup" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="314" type="guint16" abstract="0" documentation="" name="GetElement" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="319" type="string" abstract="0" documentation="" name="GetVR" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="323" type="void" abstract="0" documentation="" name="SetVR" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="324" value="" type="string" abstract="0" documentation="" name="NewVr" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="321" type="void" abstract="0" documentation="" name="SetKey" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="322" value="" type="string" abstract="0" documentation="" name="k" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="320" type="bool" abstract="0" documentation="" name="IsVrUnknown" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="315" type="string" abstract="0" documentation="" name="GetFourth" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="318" type="string" abstract="0" documentation="" name="GetName" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="317" type="string" abstract="0" documentation="" name="GetKey" static="0" scope="200" />
-    <UML:Attribute stereotype="" package="" xmi.id="310" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="201" />
-    <UML:Attribute stereotype="" package="" xmi.id="308" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="201" />
-    <UML:Attribute stereotype="" package="" xmi.id="313" value="" type="string" abstract="0" documentation="" name="vr" static="0" scope="201" />
-    <UML:Attribute stereotype="" package="" xmi.id="309" value="" type="string" abstract="0" documentation="" name="fourth" static="0" scope="201" />
-    <UML:Attribute stereotype="" package="" xmi.id="312" value="" type="string" abstract="0" documentation="" name="name" static="0" scope="201" />
-    <UML:Attribute stereotype="" package="" xmi.id="311" value="" type="TagKey" abstract="0" documentation="" name="key" static="0" scope="201" />
-   </UML:Class>
-   <UML:Class stereotype="class" package="" xmi.id="334" abstract="0" documentation="" name="gdcmDict" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="356" type="" abstract="0" documentation="" name="gdcmDict" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="357" value="" type="string &amp;" abstract="0" documentation="" name="FileName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="358" type="" abstract="0" documentation="" name="~gdcmDict" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="335" type="int" abstract="0" documentation="" name="AddNewEntry" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="336" value="" type="gdcmDictEntry *" abstract="0" documentation="" name="NewEntry" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="354" type="int" abstract="0" documentation="" name="ReplaceEntry" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="355" value="" type="gdcmDictEntry *" abstract="0" documentation="" name="NewEntry" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="349" type="int" abstract="0" documentation="" name="RemoveEntry" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="350" value="" type="TagKey" abstract="0" documentation="" name="key" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="351" type="int" abstract="0" documentation="" name="RemoveEntry" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="352" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="353" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="340" type="gdcmDictEntry *" abstract="0" documentation="" name="GetTagByNumber" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="341" value="" type="guint16" abstract="0" documentation="" name="group" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="342" value="" type="guint16" abstract="0" documentation="" name="element" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="338" type="gdcmDictEntry *" abstract="0" documentation="" name="GetTagByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="339" value="" type="TagName" abstract="0" documentation="" name="name" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="343" type="void" abstract="0" documentation="" name="Print" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="344" value="" type="ostream &amp;" abstract="0" documentation="" name="os" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="345" type="void" abstract="0" documentation="" name="PrintByKey" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="347" value="" type="ostream &amp;" abstract="0" documentation="" name="os" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="347" type="void" abstract="0" documentation="" name="PrintByName" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="348" value="" type="ostream &amp;" abstract="0" documentation="" name="os" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="337" type="TagKeyHT &amp;" abstract="0" documentation="" name="GetEntries" static="0" scope="200" />
-    <UML:Attribute stereotype="" package="" xmi.id="404" value="" type="string" abstract="0" documentation="" name="name" static="0" scope="200" />
-    <UML:Attribute stereotype="" package="" xmi.id="405" value="" type="string" abstract="0" documentation="" name="filename" static="0" scope="200" />
-   </UML:Class>
-   <UML:Class stereotype="class" package="" xmi.id="359" abstract="0" documentation="" name="gdcmDebug" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="361" type="void" abstract="0" documentation="" name="Assert" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="362" value="" type="int" abstract="0" documentation="" name="Level" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="363" value="" type="bool" abstract="0" documentation="" name="Test" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="364" value="" type="const char *" abstract="0" documentation="" name="Msg1" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="365" value="" type="const char *" abstract="0" documentation="" name="Msg2" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="366" type="void" abstract="0" documentation="" name="Error" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="367" value="" type="bool" abstract="0" documentation="" name="Test" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="368" value="" type="const char *" abstract="0" documentation="" name="Msg1" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="369" value="" type="const char *" abstract="0" documentation="" name="Msg2" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="370" type="void" abstract="0" documentation="" name="Error" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="371" value="" type="const char *" abstract="0" documentation="" name="Msg1" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="372" value="" type="const char *" abstract="0" documentation="" name="Msg2" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="373" value="" type="const char *" abstract="0" documentation="" name="Msg3" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="374" type="void" abstract="0" documentation="" name="Exit" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="375" value="" type="int" abstract="0" documentation="" name="a" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="376" type="void" abstract="0" documentation="" name="Verbose" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="377" value="" type="int" abstract="0" documentation="" name="Level" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="378" value="" type="const char *" abstract="0" documentation="" name="Msg1" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="379" value="" type="const char *" abstract="0" documentation="" name="Msg2" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="380" type="" abstract="0" documentation="" name="gdcmDebug" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="381" value="" type="int" abstract="0" documentation="" name="level" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Attribute stereotype="" package="" xmi.id="360" value="" type="int" abstract="0" documentation="" name="DebugLevel" static="0" scope="201" />
-   </UML:Class>
-   <UML:Class stereotype="class" package="" xmi.id="382" abstract="0" documentation="" name="gdcmDictSet" static="0" scope="200" >
-    <UML:Operation stereotype="" package="" xmi.id="385" type="int" abstract="0" documentation="" name="AppendDict" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="386" value="" type="gdcmDict *" abstract="0" documentation="" name="NewDict" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="393" type="void" abstract="0" documentation="" name="LoadDictFromFile" static="0" scope="202" >
-     <UML:Parameter stereotype="" package="" xmi.id="394" value="" type="string" abstract="0" documentation="" name="filename" static="0" scope="200" />
-     <UML:Parameter stereotype="" package="" xmi.id="395" value="" type="DictKey" abstract="0" documentation="" name="" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="387" type="string" abstract="0" documentation="" name="BuildDictPath" static="0" scope="202" />
-    <UML:Operation stereotype="" package="" xmi.id="391" type="list *" abstract="0" documentation="" name="GetPubDictTagNames" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="392" type="map *" abstract="0" documentation="" name="GetPubDictTagNamesByCategory" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="398" type="" abstract="0" documentation="" name="gdcmDictSet" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="399" type="" abstract="0" documentation="" name="~gdcmDictSet" static="0" scope="200" />
-    <UML:Operation stereotype="" package="" xmi.id="396" type="void" abstract="0" documentation="" name="Print" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="397" value="" type="ostream &amp;" abstract="0" documentation="" name="os" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="389" type="gdcmDict *" abstract="0" documentation="" name="GetDict" static="0" scope="200" >
-     <UML:Parameter stereotype="" package="" xmi.id="390" value="" type="DictKey" abstract="0" documentation="" name="DictName" static="0" scope="200" />
-    </UML:Operation>
-    <UML:Operation stereotype="" package="" xmi.id="388" type="gdcmDict *" abstract="0" documentation="" name="GetDefaultPubDict" static="0" scope="200" />
-    <UML:Attribute stereotype="" package="" xmi.id="383" value="" type="string" abstract="0" documentation="" name="DictPath" static="0" scope="201" />
-   </UML:Class>
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="500" rolea="217" roleb="221" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="500" rolea="167" roleb="221" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
-   <UML:Association nameb="entry" stereotype="" visibilitya="200" visibilityb="200" assoctype="503" rolea="277" roleb="307" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="501" rolea="277" roleb="171" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="tagHt" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="510" rolea="277" roleb="171" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="NameHt" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="501" rolea="307" roleb="334" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="KeryHt" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="510" rolea="307" roleb="334" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="NameHt" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="510" rolea="334" roleb="382" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="Dicts" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="510" rolea="15" roleb="21" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="dicom_vr" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="510" rolea="382" roleb="21" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="Dicts" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="510" rolea="334" roleb="21" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="RefShaDict" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="510" rolea="334" roleb="21" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="RefPubDict" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="510" rolea="171" roleb="21" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="ShaElValSet" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="510" rolea="171" roleb="21" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="PubElValSet" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="500" rolea="3" roleb="21" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="500" rolea="237" roleb="21" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="501" rolea="15" roleb="8" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="VR" />
-   <UML:Association nameb="" stereotype="" visibilitya="200" visibilityb="200" assoctype="501" rolea="382" roleb="8" multia="" doca="" multib="" docb="" package="" xmi.id="-1" abstract="0" documentation="" name="" static="0" scope="200" changeabilitya="900" changeabilityb="900" namea="Dicts" />
-  </umlobjects>
-  <diagrams>
-   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="780" snapy="10" showatts="1" xmi.id="2" documentation="" type="402" showops="1" showpackage="0" name="Class diagram" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="helvetica,-1,12,0,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="770" >
-    <widgets/>
-    <messages/>
-    <associations/>
-   </diagram>
-   <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" zoom="100" showgrid="0" showopsig="1" usefillcolor="1" snapx="10" canvaswidth="899" snapy="10" showatts="1" xmi.id="400" documentation="" type="402" showops="0" showpackage="0" name="gdcm" localid="30000" showstereotype="0" showscope="1" snapcsgrid="0" font="helvetica,-1,12,0,50,0,0,0,0,0" linecolor="#ff0000" canvasheight="864" >
-    <widgets>
-     <UML:ClassWidget usesdiagramfillcolour="0" width="83" showattsigs="601" usesdiagramusefillcolour="0" x="709" linecolour="#000000" y="266" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="26" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="359" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="80" showattsigs="601" usesdiagramusefillcolour="0" x="335" linecolour="#000000" y="115" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="26" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="334" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="102" showattsigs="601" usesdiagramusefillcolour="0" x="287" linecolour="#000000" y="30" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="26" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="307" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="90" showattsigs="601" usesdiagramusefillcolour="0" x="332" linecolour="#000000" y="326" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="26" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="382" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="95" showattsigs="601" usesdiagramusefillcolour="0" x="35" linecolour="#000000" y="127" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="26" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="171" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="89" showattsigs="601" usesdiagramusefillcolour="0" x="33" linecolour="#000000" y="30" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="26" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="277" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="104" showattsigs="601" usesdiagramusefillcolour="0" x="586" linecolour="#000000" y="197" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="26" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="221" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="80" showattsigs="601" usesdiagramusefillcolour="0" x="21" linecolour="#000000" y="246" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="26" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="237" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="96" showattsigs="601" usesdiagramusefillcolour="0" x="500" linecolour="#000000" y="67" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="26" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="217" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="117" showattsigs="601" usesdiagramusefillcolour="0" x="678" linecolour="#000000" y="77" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="26" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="167" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="81" showattsigs="601" usesdiagramusefillcolour="0" x="285" linecolour="#000000" y="457" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="24" usefillcolor="1" showattributes="1" isinstance="0" xmi.id="8" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="88" showattsigs="601" usesdiagramusefillcolour="0" x="195" linecolour="#000000" y="246" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="26" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="21" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="107" showattsigs="601" usesdiagramusefillcolour="0" x="45" linecolour="#000000" y="332" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="26" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="3" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-     <UML:ClassWidget usesdiagramfillcolour="0" width="80" showattsigs="601" usesdiagramusefillcolour="0" x="202" linecolour="#000000" y="352" showopsigs="601" instancename="" usesdiagramlinecolour="0" fillcolour="#ffc6c6" height="26" usefillcolor="1" showattributes="0" isinstance="0" xmi.id="15" showoperations="0" showpackage="0" showscope="1" showstereotype="0" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-    </widgets>
-    <messages/>
-    <associations>
-     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="1" widgetbid="221" roleBdoc="" widgetaid="217" roleAdoc="" documentation="" type="500" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <linepath>
-       <startpoint startx="548" starty="93" />
-       <endpoint endx="620" endy="197" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="2" widgetbid="221" roleBdoc="" widgetaid="167" roleAdoc="" documentation="" type="500" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <linepath>
-       <startpoint startx="736" starty="103" />
-       <endpoint endx="655" endy="197" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="2" indexb="1" widgetbid="307" roleBdoc="" widgetaid="277" roleAdoc="" documentation="" type="503" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="204" linecolour="none" y="43" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="124" linecolour="none" y="21" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="281" linecolour="none" y="21" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="124" linecolour="none" y="45" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="242" linecolour="none" y="45" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="entry" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="122" starty="43" />
-       <endpoint endx="287" endy="43" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="3" indexa="1" visibilityB="200" totalcountb="3" indexb="1" widgetbid="171" roleBdoc="" widgetaid="277" roleAdoc="" documentation="" type="501" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="64" linecolour="none" y="91" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="52" linecolour="none" y="58" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="68" linecolour="none" y="105" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="64" linecolour="none" y="58" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="tagHt" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="49" linecolour="none" y="105" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="62" starty="56" />
-       <endpoint endx="66" endy="127" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="3" indexa="2" visibilityB="200" totalcountb="3" indexb="2" widgetbid="171" roleBdoc="" widgetaid="277" roleAdoc="" documentation="" type="510" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="95" linecolour="none" y="91" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="82" linecolour="none" y="58" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="100" linecolour="none" y="105" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="94" linecolour="none" y="58" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="NameHt" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="81" linecolour="none" y="105" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="92" starty="56" />
-       <endpoint endx="98" endy="127" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="3" indexa="1" visibilityB="200" totalcountb="3" indexb="1" widgetbid="334" roleBdoc="" widgetaid="307" roleAdoc="" documentation="" type="501" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="341" linecolour="none" y="85" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="311" linecolour="none" y="58" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="363" linecolour="none" y="93" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="323" linecolour="none" y="58" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="KeryHt" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="344" linecolour="none" y="93" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="321" starty="56" />
-       <endpoint endx="361" endy="115" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="3" indexa="2" visibilityB="200" totalcountb="3" indexb="2" widgetbid="334" roleBdoc="" widgetaid="307" roleAdoc="" documentation="" type="510" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="371" linecolour="none" y="85" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="345" linecolour="none" y="58" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="390" linecolour="none" y="93" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="357" linecolour="none" y="58" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="NameHt" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="371" linecolour="none" y="93" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="355" starty="56" />
-       <endpoint endx="388" endy="115" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="4" indexa="3" visibilityB="200" totalcountb="3" indexb="2" widgetbid="382" roleBdoc="" widgetaid="334" roleAdoc="" documentation="" type="510" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="393" linecolour="none" y="233" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="397" linecolour="none" y="143" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="386" linecolour="none" y="304" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="350" linecolour="none" y="143" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="Dicts" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="394" linecolour="none" y="304" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="395" starty="141" />
-       <endpoint endx="392" endy="326" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="4" indexb="2" widgetbid="21" roleBdoc="" widgetaid="15" roleAdoc="" documentation="" type="510" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="230" linecolour="none" y="595" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="232" linecolour="none" y="330" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="241" linecolour="none" y="274" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="244" linecolour="none" y="330" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="dicom_vr" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="222" linecolour="none" y="274" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="242" starty="352" />
-       <endpoint endx="239" endy="272" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="3" indexa="1" visibilityB="200" totalcountb="4" indexb="3" widgetbid="21" roleBdoc="" widgetaid="382" roleAdoc="" documentation="" type="510" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="311" linecolour="none" y="299" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="352" linecolour="none" y="328" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="263" linecolour="none" y="250" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="317" linecolour="none" y="304" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="Dicts" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="263" linecolour="none" y="274" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="362" starty="326" />
-       <endpoint endx="261" endy="272" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="4" indexa="1" visibilityB="200" totalcountb="5" indexb="3" widgetbid="21" roleBdoc="" widgetaid="334" roleAdoc="" documentation="" type="510" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="276" linecolour="none" y="143" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="RefShaDict" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="355" starty="141" />
-       <endpoint endx="247" endy="246" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="4" indexa="2" visibilityB="200" totalcountb="5" indexb="4" widgetbid="21" roleBdoc="" widgetaid="334" roleAdoc="" documentation="" type="510" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="296" linecolour="none" y="143" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="RefPubDict" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="375" starty="141" />
-       <endpoint endx="265" endy="246" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="3" indexa="1" visibilityB="200" totalcountb="5" indexb="1" widgetbid="21" roleBdoc="" widgetaid="171" roleAdoc="" documentation="" type="510" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="208" linecolour="none" y="501" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="68" linecolour="none" y="131" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="206" linecolour="none" y="244" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="68" linecolour="none" y="155" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="ShaElValSet" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="195" linecolour="none" y="224" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="66" starty="153" />
-       <endpoint endx="212" endy="246" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="3" indexa="2" visibilityB="200" totalcountb="5" indexb="2" widgetbid="21" roleBdoc="" widgetaid="171" roleAdoc="" documentation="" type="510" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="164" linecolour="none" y="199" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="100" linecolour="none" y="131" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="224" linecolour="none" y="244" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="100" linecolour="none" y="155" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="PubElValSet" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="213" linecolour="none" y="224" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="98" starty="153" />
-       <endpoint endx="230" endy="246" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="4" indexb="1" widgetbid="21" roleBdoc="" widgetaid="3" roleAdoc="" documentation="" type="500" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="-141" linecolour="none" y="34" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="1" linecolour="none" y="-23" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="-141" linecolour="none" y="10" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="-37" linecolour="none" y="1" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="98" starty="332" />
-       <endpoint endx="217" endy="272" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="2" indexb="1" widgetbid="21" roleBdoc="" widgetaid="237" roleAdoc="" documentation="" type="500" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="-270" linecolour="none" y="-92" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="-73" linecolour="none" y="-12" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="-282" linecolour="none" y="-44" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="-103" linecolour="none" y="-12" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="101" starty="259" />
-       <endpoint endx="195" endy="259" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="1" widgetbid="8" roleBdoc="" widgetaid="15" roleAdoc="" documentation="" type="501" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="354" linecolour="none" y="730" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="232" linecolour="none" y="380" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="314" linecolour="none" y="435" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="244" linecolour="none" y="380" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="VR" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="295" linecolour="none" y="435" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="242" starty="378" />
-       <endpoint endx="312" endy="457" />
-      </linepath>
-     </UML:AssocWidget>
-     <UML:AssocWidget totalcounta="2" indexa="1" visibilityB="200" totalcountb="3" indexb="2" widgetbid="8" roleBdoc="" widgetaid="382" roleAdoc="" documentation="" type="501" changeabilityA="900" changeabilityB="900" visibilityA="200" >
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="409" linecolour="none" y="681" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="703" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="379" linecolour="none" y="354" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="701" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="333" linecolour="none" y="435" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="702" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="332" linecolour="none" y="354" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="709" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="Dicts" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <UML:FloatingTextWidget usesdiagramfillcolour="1" width="0" usesdiagramusefillcolour="1" x="341" linecolour="none" y="435" operation="" instancename="" posttext="" usesdiagramlinecolour="1" role="710" fillcolour="none" height="0" usefillcolor="1" seqnum="" pretext="+" isinstance="0" xmi.id="-1" text="" font="helvetica,-1,12,0,50,0,0,0,0,0" />
-      <linepath>
-       <startpoint startx="377" starty="352" />
-       <endpoint endx="339" endy="457" />
-      </linepath>
-     </UML:AssocWidget>
-    </associations>
-   </diagram>
-  </diagrams>
-  <listview>
-   <listitem open="1" type="800" id="-1" label="Views" >
-    <listitem open="1" type="821" id="-1" label="Component View" />
-    <listitem open="1" type="827" id="-1" label="Deployment View" />
-    <listitem open="0" type="823" id="-1" label="Diagrams" />
-    <listitem open="1" type="801" id="-1" label="Logical View" >
-     <listitem open="1" type="807" id="2" label="Class diagram" />
-     <listitem open="1" type="803" id="-1" label="gdcm" >
-      <listitem open="0" type="807" id="400" label="gdcm" />
-      <listitem open="0" type="813" id="359" label="gdcmDebug" >
-       <listitem open="0" type="815" id="361" label="Assert" />
-       <listitem open="0" type="814" id="360" label="DebugLevel" />
-       <listitem open="0" type="815" id="366" label="Error" />
-       <listitem open="0" type="815" id="370" label="Error" />
-       <listitem open="0" type="815" id="374" label="Exit" />
-       <listitem open="0" type="815" id="376" label="Verbose" />
-       <listitem open="0" type="815" id="380" label="gdcmDebug" />
-      </listitem>
-      <listitem open="0" type="813" id="334" label="gdcmDict" >
-       <listitem open="0" type="815" id="335" label="AddNewEntry" />
-       <listitem open="0" type="815" id="337" label="GetEntries" />
-       <listitem open="0" type="815" id="338" label="GetTagByName" />
-       <listitem open="0" type="815" id="340" label="GetTagByNumber" />
-       <listitem open="0" type="815" id="343" label="Print" />
-       <listitem open="0" type="815" id="345" label="PrintByKey" />
-       <listitem open="0" type="815" id="347" label="PrintByName" />
-       <listitem open="0" type="815" id="351" label="RemoveEntry" />
-       <listitem open="0" type="815" id="349" label="RemoveEntry" />
-       <listitem open="0" type="815" id="354" label="ReplaceEntry" />
-       <listitem open="0" type="814" id="405" label="filename" />
-       <listitem open="1" type="814" id="405" label="filename" />
-       <listitem open="0" type="815" id="356" label="gdcmDict" />
-       <listitem open="1" type="814" id="404" label="name" />
-       <listitem open="0" type="814" id="404" label="name" />
-       <listitem open="0" type="815" id="358" label="~gdcmDict" />
-      </listitem>
-      <listitem open="0" type="813" id="307" label="gdcmDictEntry" >
-       <listitem open="0" type="815" id="314" label="GetElement" />
-       <listitem open="0" type="815" id="315" label="GetFourth" />
-       <listitem open="0" type="815" id="316" label="GetGroup" />
-       <listitem open="0" type="815" id="317" label="GetKey" />
-       <listitem open="0" type="815" id="318" label="GetName" />
-       <listitem open="0" type="815" id="319" label="GetVR" />
-       <listitem open="0" type="815" id="320" label="IsVrUnknown" />
-       <listitem open="0" type="815" id="321" label="SetKey" />
-       <listitem open="0" type="815" id="323" label="SetVR" />
-       <listitem open="0" type="815" id="325" label="TranslateToKey" />
-       <listitem open="0" type="814" id="308" label="element" />
-       <listitem open="0" type="814" id="309" label="fourth" />
-       <listitem open="0" type="815" id="328" label="gdcmDictEntry" />
-       <listitem open="0" type="814" id="310" label="group" />
-       <listitem open="0" type="814" id="311" label="key" />
-       <listitem open="0" type="814" id="312" label="name" />
-       <listitem open="0" type="814" id="313" label="vr" />
-      </listitem>
-      <listitem open="0" type="813" id="382" label="gdcmDictSet" >
-       <listitem open="0" type="815" id="385" label="AppendDict" />
-       <listitem open="0" type="815" id="387" label="BuildDictPath" />
-       <listitem open="0" type="814" id="383" label="DictPath" />
-       <listitem open="0" type="815" id="388" label="GetDefaultPubDict" />
-       <listitem open="0" type="815" id="389" label="GetDict" />
-       <listitem open="0" type="815" id="391" label="GetPubDictTagNames" />
-       <listitem open="0" type="815" id="392" label="GetPubDictTagNamesByCategory" />
-       <listitem open="0" type="815" id="393" label="LoadDictFromFile" />
-       <listitem open="0" type="815" id="396" label="Print" />
-       <listitem open="0" type="815" id="398" label="gdcmDictSet" />
-       <listitem open="0" type="815" id="399" label="~gdcmDictSet" />
-      </listitem>
-      <listitem open="0" type="813" id="171" label="gdcmElValSet" >
-       <listitem open="0" type="815" id="174" label="Add" />
-       <listitem open="0" type="815" id="176" label="GenerateFreeTagKeyInGroup" />
-       <listitem open="0" type="815" id="178" label="GetElValueByName" />
-       <listitem open="0" type="815" id="180" label="GetElValueByNumber" />
-       <listitem open="0" type="815" id="183" label="GetElementByName" />
-       <listitem open="0" type="815" id="185" label="GetElementByNumber" />
-       <listitem open="0" type="815" id="188" label="GetTagHt" />
-       <listitem open="0" type="815" id="189" label="Print" />
-       <listitem open="0" type="815" id="191" label="PrintByName" />
-       <listitem open="0" type="815" id="193" label="SetElValueByName" />
-       <listitem open="0" type="815" id="196" label="SetElValueByNumber" />
-       <listitem open="0" type="815" id="200" label="SetElValueLengthByName" />
-       <listitem open="0" type="815" id="203" label="SetElValueLengthByNumber" />
-       <listitem open="0" type="815" id="207" label="UpdateGroupLength" />
-       <listitem open="0" type="815" id="210" label="Write" />
-       <listitem open="0" type="815" id="213" label="WriteElements" />
-       <listitem open="0" type="815" id="216" label="~gdcmElValSet" />
-      </listitem>
-      <listitem open="0" type="813" id="277" label="gdcmElValue" >
-       <listitem open="0" type="815" id="283" label="GetDictEntry" />
-       <listitem open="0" type="815" id="284" label="GetElement" />
-       <listitem open="0" type="815" id="285" label="GetGroup" />
-       <listitem open="0" type="815" id="286" label="GetKey" />
-       <listitem open="0" type="815" id="287" label="GetLength" />
-       <listitem open="0" type="815" id="288" label="GetName" />
-       <listitem open="0" type="815" id="289" label="GetOffset" />
-       <listitem open="0" type="815" id="290" label="GetVR" />
-       <listitem open="0" type="815" id="291" label="GetValue" />
-       <listitem open="0" type="814" id="278" label="ImplicitVr" />
-       <listitem open="0" type="815" id="292" label="IsImplicitVr" />
-       <listitem open="0" type="815" id="293" label="IsVrUnknown" />
-       <listitem open="0" type="814" id="279" label="LgrElem" />
-       <listitem open="0" type="814" id="280" label="Offset" />
-       <listitem open="0" type="815" id="294" label="SetDictEntry" />
-       <listitem open="0" type="815" id="296" label="SetImplicitVr" />
-       <listitem open="0" type="815" id="297" label="SetLength" />
-       <listitem open="0" type="815" id="299" label="SetOffset" />
-       <listitem open="0" type="815" id="301" label="SetVR" />
-       <listitem open="0" type="815" id="303" label="SetValue" />
-       <listitem open="0" type="815" id="305" label="gdcmElValue" />
-       <listitem open="0" type="814" id="282" label="value" />
-      </listitem>
-      <listitem open="0" type="813" id="221" label="gdcmException" >
-       <listitem open="0" type="815" id="224" label="*" />
-       <listitem open="0" type="815" id="225" label="&lt;&lt;" />
-       <listitem open="0" type="814" id="222" label="error" />
-       <listitem open="0" type="815" id="228" label="fatal" />
-       <listitem open="0" type="814" id="223" label="from" />
-       <listitem open="0" type="815" id="230" label="gdcmException" />
-       <listitem open="0" type="815" id="233" label="getError" />
-       <listitem open="0" type="815" id="234" label="getName" />
-       <listitem open="0" type="815" id="235" label="what" />
-       <listitem open="0" type="815" id="236" label="~gdcmException" />
-      </listitem>
-      <listitem open="0" type="813" id="237" label="gdcmFile" >
-       <listitem open="0" type="815" id="242" label="GetImageData" />
-       <listitem open="0" type="815" id="243" label="GetImageDataIntoVector" />
-       <listitem open="0" type="815" id="246" label="GetImageDataSize" />
-       <listitem open="0" type="814" id="238" label="OrigFileName" />
-       <listitem open="0" type="814" id="239" label="Parsed" />
-       <listitem open="0" type="814" id="240" label="PixelData" />
-       <listitem open="0" type="815" id="247" label="ReadPixelData" />
-       <listitem open="0" type="815" id="249" label="SetImageData" />
-       <listitem open="0" type="815" id="252" label="SetImageDataSize" />
-       <listitem open="0" type="815" id="254" label="SetPixelDataSizeFromHeader" />
-       <listitem open="0" type="815" id="255" label="SwapZone" />
-       <listitem open="0" type="815" id="260" label="WriteAcr" />
-       <listitem open="0" type="815" id="262" label="WriteBase" />
-       <listitem open="0" type="815" id="265" label="WriteDcmExplVR" />
-       <listitem open="0" type="815" id="269" label="WriteDcmImplVR" />
-       <listitem open="0" type="815" id="267" label="WriteDcmImplVR" />
-       <listitem open="0" type="815" id="271" label="WriteRawData" />
-       <listitem open="0" type="815" id="275" label="gdcmFile" />
-       <listitem open="0" type="815" id="273" label="gdcmFile" />
-       <listitem open="0" type="814" id="241" label="lgrTotale" />
-      </listitem>
-      <listitem open="0" type="813" id="217" label="gdcmFileError" >
-       <listitem open="0" type="815" id="218" label="gdcmFileError" />
-      </listitem>
-      <listitem open="0" type="813" id="167" label="gdcmFormatError" >
-       <listitem open="0" type="815" id="168" label="gdcmFormatError" />
-      </listitem>
-      <listitem open="0" type="813" id="8" label="gdcmGlobal" >
-       <listitem open="0" type="815" id="11" label="GetDicts" />
-       <listitem open="0" type="815" id="12" label="GetVR" />
-       <listitem open="0" type="815" id="13" label="gdcmGlobal" />
-       <listitem open="0" type="815" id="14" label="~gdcmGlobal" />
-      </listitem>
-      <listitem open="0" type="813" id="21" label="gdcmHeader" >
-       <listitem open="0" type="815" id="33" label="CheckSwap" />
-       <listitem open="0" type="815" id="34" label="CloseFile" />
-       <listitem open="0" type="815" id="35" label="FindLength" />
-       <listitem open="0" type="815" id="37" label="FindLengthOB" />
-       <listitem open="0" type="815" id="38" label="FindVR" />
-       <listitem open="0" type="815" id="40" label="FixFoundLength" />
-       <listitem open="0" type="815" id="43" label="GetDictEntryByName" />
-       <listitem open="0" type="815" id="45" label="GetDictEntryByNumber" />
-       <listitem open="0" type="815" id="48" label="GetElValByName" />
-       <listitem open="0" type="815" id="50" label="GetElValByNumber" />
-       <listitem open="0" type="815" id="53" label="GetElValRepByName" />
-       <listitem open="0" type="815" id="55" label="GetElValRepByNumber" />
-       <listitem open="0" type="815" id="58" label="GetPixelOffset" />
-       <listitem open="0" type="815" id="59" label="GetPixelType" />
-       <listitem open="0" type="815" id="60" label="GetPubElVal" />
-       <listitem open="0" type="815" id="61" label="GetPubElValByName" />
-       <listitem open="0" type="815" id="63" label="GetPubElValByNumber" />
-       <listitem open="0" type="815" id="66" label="GetPubElValRepByName" />
-       <listitem open="0" type="815" id="68" label="GetPubElValRepByNumber" />
-       <listitem open="0" type="815" id="71" label="GetShaElValByName" />
-       <listitem open="0" type="815" id="73" label="GetShaElValByNumber" />
-       <listitem open="0" type="815" id="76" label="GetShaElValRepByName" />
-       <listitem open="0" type="815" id="78" label="GetShaElValRepByNumber" />
-       <listitem open="0" type="815" id="81" label="GetSwapCode" />
-       <listitem open="0" type="815" id="82" label="GetXSize" />
-       <listitem open="0" type="815" id="83" label="GetYSize" />
-       <listitem open="0" type="815" id="84" label="GetZSize" />
-       <listitem open="0" type="815" id="85" label="Initialise" />
-       <listitem open="0" type="815" id="86" label="IsAnInteger" />
-       <listitem open="0" type="815" id="88" label="IsDeflatedExplicitVRLittleEndianTransferSyntax" />
-       <listitem open="0" type="815" id="89" label="IsDicomV3" />
-       <listitem open="0" type="815" id="90" label="IsExplicitVRBigEndianTransferSyntax" />
-       <listitem open="0" type="815" id="91" label="IsExplicitVRLittleEndianTransferSyntax" />
-       <listitem open="0" type="815" id="92" label="IsImplicitVRLittleEndianTransferSyntax" />
-       <listitem open="0" type="815" id="93" label="IsJPEGBaseLineProcess1TransferSyntax" />
-       <listitem open="0" type="815" id="94" label="IsJPEGExtendedProcess2_4TransferSyntax" />
-       <listitem open="0" type="815" id="95" label="IsJPEGExtendedProcess3_5TransferSyntax" />
-       <listitem open="0" type="815" id="96" label="IsJPEGLossless" />
-       <listitem open="0" type="815" id="97" label="IsJPEGSpectralSelectionProcess6_8TransferSyntax" />
-       <listitem open="0" type="815" id="98" label="IsReadable" />
-       <listitem open="0" type="815" id="99" label="LoadElementValue" />
-       <listitem open="0" type="815" id="101" label="LoadElementValueSafe" />
-       <listitem open="0" type="815" id="103" label="LoadElements" />
-       <listitem open="0" type="814" id="23" label="MaxSizeLoadElementValue" />
-       <listitem open="0" type="815" id="104" label="NewElValueByName" />
-       <listitem open="0" type="815" id="106" label="NewElValueByNumber" />
-       <listitem open="0" type="815" id="109" label="NewManualElValToPubDict" />
-       <listitem open="0" type="815" id="112" label="OpenFile" />
-       <listitem open="0" type="815" id="114" label="ParseHeader" />
-       <listitem open="0" type="815" id="116" label="PrintPubDict" />
-       <listitem open="0" type="815" id="118" label="PrintPubElVal" />
-       <listitem open="0" type="815" id="120" label="ReadInt16" />
-       <listitem open="0" type="815" id="121" label="ReadInt32" />
-       <listitem open="0" type="815" id="122" label="ReadNextElement" />
-       <listitem open="0" type="815" id="123" label="ReplaceOrCreateByNumber" />
-       <listitem open="0" type="815" id="127" label="SetMaxSizeLoadElementValue" />
-       <listitem open="0" type="815" id="129" label="SetPubElValByName" />
-       <listitem open="0" type="815" id="132" label="SetPubElValByNumber" />
-       <listitem open="0" type="815" id="136" label="SetPubElValLengthByNumber" />
-       <listitem open="0" type="815" id="140" label="SetShaElValByName" />
-       <listitem open="0" type="815" id="143" label="SetShaElValByNumber" />
-       <listitem open="0" type="815" id="147" label="SkipBytes" />
-       <listitem open="0" type="815" id="149" label="SkipElementValue" />
-       <listitem open="0" type="815" id="151" label="SwapLong" />
-       <listitem open="0" type="815" id="153" label="SwapShort" />
-       <listitem open="0" type="815" id="155" label="SwitchSwapToBigEndian" />
-       <listitem open="0" type="815" id="156" label="Write" />
-       <listitem open="0" type="815" id="159" label="anonymize" />
-       <listitem open="0" type="814" id="29" label="filename" />
-       <listitem open="0" type="814" id="30" label="filetype" />
-       <listitem open="0" type="814" id="31" label="fp" />
-       <listitem open="0" type="815" id="161" label="gdcmHeader" />
-       <listitem open="0" type="814" id="32" label="sw" />
-       <listitem open="0" type="815" id="164" label="write" />
-       <listitem open="0" type="815" id="166" label="~gdcmHeader" />
-      </listitem>
-      <listitem open="0" type="813" id="3" label="gdcmHeaderIdo" >
-       <listitem open="0" type="815" id="4" label="BuildHeader" />
-       <listitem open="0" type="815" id="5" label="gdcmHeaderIdo" />
-       <listitem open="0" type="815" id="7" label="setAcrLibido" />
-      </listitem>
-      <listitem open="0" type="813" id="15" label="gdcmVR" >
-       <listitem open="0" type="815" id="17" label="Count" />
-       <listitem open="0" type="815" id="19" label="gdcmVR" />
-       <listitem open="0" type="814" id="16" label="vr" />
-       <listitem open="0" type="815" id="20" label="~gdcmVR" />
-      </listitem>
-     </listitem>
-    </listitem>
-    <listitem open="1" type="802" id="-1" label="Use Case View" />
-   </listitem>
-  </listview>
- </XMI.content>
-</XMI>
diff --git a/vtk/Makefile.am b/vtk/Makefile.am
deleted file mode 100644 (file)
index ac58c96..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-## Process this file with automake to produce Makefile.in
-LIBS_VTK=-L/usr/lib/vtk \
-         -lvtkCommon -lvtkIO -lvtkFiltering -lvtkRendering -lvtkGraphics \
-         -lvtkImaging -lvtkpng -lvtkzlib -lvtkjpeg -lvtkexpat -lvtktiff \
-         -lvtkftgl -lvtkfreetype
-LIBS_VTK_PYTHON= $(LIBS_VTK) \
-         -lvtkCommonPython -lvtkIOPython -lvtkFilteringPython \
-         -lvtkRenderingPython -lvtkGraphicsPython -lvtkImagingPython
-INCLUDE_VTK=-I/usr/include/vtk
-
-LIBS_X11= -L/usr/X11R6/lib -lX11 -lXt -lSM -lICE -lXext -lGL
-#LIBS_X11= $(x_ldflags) $(x_libs)    
-
-INCLUDES =             \
-   -I.                 \
-   -I$(top_srcdir)/src \
-   $(PYTHON_INCLUDES)  \
-   $(INCLUDE_VTK)
-
-LDADD =              \
-   $(top_builddir)/src/libgdcm.la \
-   $(LIBS_VTK) \
-   $(LIBS_X11)
-
-if BUILD_VTK
-noinst_PROGRAMS = vtkgdcmdemo vtkgdcmViewer #testvtkGdcmReader
-vtkgdcmdemo_SOURCES = testvtkGdcmReader.cxx  vtkGdcmReader.cxx 
-vtkgdcmViewer_SOURCES = vtkgdcmViewer.cxx  vtkGdcmReader.cxx 
-vtkgdcmdemo_LDADD = $(LDADD)
-lib_LTLIBRARIES = libvtkgdcm.la
-libvtkgdcm_la_SOURCES = vtkGdcmReader.cxx
-libvtkgdcm_la_LIBADD = $(LDADD)
-libvtkgdcmincludedir = $(includedir)
-libvtkgdcminclude_HEADERS = vtkGdcmReader.h
-
-else
-all:
-endif