]> Creatis software - gdcm.git/blobdiff - src/gdcmCommon.h
Remove useless accesses to the Dicom Dictionnary std::map
[gdcm.git] / src / gdcmCommon.h
index f5846edd3dd8c5808aeba27cb718c68e22e5f07a..76d2dc4d791725d52384576ec8ea8d065b31083c 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: gdcmCommon.h,v $
   Language:  C++
-  Date:      $Date: 2006/01/24 19:58:13 $
-  Version:   $Revision: 1.104 $
+  Date:      $Date: 2006/04/11 16:03:26 $
+  Version:   $Revision: 1.109 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
@@ -22,7 +22,7 @@
 #include "gdcmConfigure.h"
 #include "gdcmSystem.h"
 #include "gdcmMacro.h"
-
+#include "gdcmVRKey.h"
 #include <string>
 
 //-----------------------------------------------------------------------------
@@ -86,11 +86,14 @@ typedef std::string TagName;
 
 /// \brief various types of a DICOM file (for internal use only)
 enum FileType {
+// note to developer : don't forget to add as well in vtkGdcmWriter.h !
    Unknown = 0,
    ExplicitVR, // DicomDir is in this case. Except when it's ImplicitVR !...
    ImplicitVR,
    ACR,
    ACR_LIBIDO,
+   /// \todo FIXME : an encapsulated JPEG file may be 
+   ///              either ExplicitVR or ImplicitVR, right?
    JPEG
 };
 
@@ -126,6 +129,25 @@ enum LodModeType
                                 // (*exclusive* from LD_NOSEQ and LD_NOSHADOW)
 };
 
+/// \brief Only user knows what kind of image he is going to write  !
+///
+/// -1) user created ex nihilo his own image and wants to write it as a Dicom image.
+///    USER_OWN_IMAGE
+/// -2) user modified the pixels of an existing image.
+///    FILTERED_IMAGE
+/// -3) user created a new image, using existing images (eg MIP, MPR, cartography image)
+///   CREATED_IMAGE
+/// -4) user modified/added some tags *without processing* the pixels (anonymization...
+///   UNMODIFIED_PIXELS_IMAGE
+enum ImageContentType
+{
+// note to developer : don't forget to add as well in vtkGdcmWriter.h !
+      USER_OWN_IMAGE = 1,
+      FILTERED_IMAGE,
+      CREATED_IMAGE,      
+      UNMODIFIED_PIXELS_IMAGE            
+}; 
+  
 /**
  * \brief structure, for internal use only
  */  
@@ -135,6 +157,8 @@ struct DicomElement
    unsigned short int Group;
    /// Dicom Element number
    unsigned short int Elem;
+   /// Value Representation
+   VRKey VR;
    /// value (coded as a std::string) of the Element
    std::string Value;
 };