X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vtk%2FvtkGdcmWriter.h;h=4d25c828466b27b0549b6eb8703ffb6aa4403bfd;hb=fb1db702e2e94adb9c04387604dbe635726db898;hp=305aede70d7bb13cb48d5c6bfb8cb63ae468746f;hpb=d735b22c6656c1b5d05d560ff9773a016a8514f9;p=gdcm.git diff --git a/vtk/vtkGdcmWriter.h b/vtk/vtkGdcmWriter.h index 305aede7..4d25c828 100644 --- a/vtk/vtkGdcmWriter.h +++ b/vtk/vtkGdcmWriter.h @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: vtkGdcmWriter.h,v $ Language: C++ - Date: $Date: 2006/05/02 10:09:43 $ - Version: $Revision: 1.8 $ + Date: $Date: 2007/06/21 14:47:16 $ + Version: $Revision: 1.12 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -20,7 +20,7 @@ #define __vtkGdcmWriter_h #include "gdcmCommon.h" // To avoid warnings concerning the std -#include "gdcmFile.h" // for gdcm::File +#include "gdcmFile.h" // for GDCM_NAME_SPACE::File #include #include @@ -54,15 +54,29 @@ public: virtual void SetLookupTable(vtkLookupTable*); vtkGetObjectMacro(LookupTable, vtkLookupTable); - void SetWriteTypeToDcmImplVR(){SetWriteType(VTK_GDCM_WRITE_TYPE_EXPLICIT_VR);}; - void SetWriteTypeToDcmExplVR(){SetWriteType(VTK_GDCM_WRITE_TYPE_IMPLICIT_VR);}; - void SetWriteTypeToAcr() {SetWriteType(VTK_GDCM_WRITE_TYPE_ACR); }; - void SetWriteTypeToAcrLibido(){SetWriteType(VTK_GDCM_WRITE_TYPE_ACR_LIBIDO); }; + void SetWriteTypeToDcmImplVR(){SetWriteType(VTK_GDCM_WRITE_TYPE_EXPLICIT_VR);} + void SetWriteTypeToDcmExplVR(){SetWriteType(VTK_GDCM_WRITE_TYPE_IMPLICIT_VR);} + void SetWriteTypeToAcr() {SetWriteType(VTK_GDCM_WRITE_TYPE_ACR); } + void SetWriteTypeToAcrLibido(){SetWriteType(VTK_GDCM_WRITE_TYPE_ACR_LIBIDO); } - void SetContentTypeToUserOwnImage() {SetContentType(VTK_GDCM_WRITE_TYPE_USER_OWN_IMAGE);}; - void SetContentTypeToFilteredImage() {SetContentType(VTK_GDCM_WRITE_TYPE_FILTERED_IMAGE);}; - void SetContentTypeToUserCreatedImage() {SetContentType(VTK_GDCM_WRITE_TYPE_CREATED_IMAGE);}; - void SetContentTypeToUnmodifiedPixelsImage(){SetContentType(VTK_GDCM_WRITE_TYPE_UNMODIFIED_PIXELS_IMAGE);}; + + // gdcm cannot guess how user built his image (and therefore cannot be clever about some Dicom fields) + // It's up to the user to tell gdcm what he did. + // -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 a set of images (eg MIP, MPR, cartography image) + // CREATED_IMAGE + // -4) user modified/added some tags *without processing* the pixels (anonymization.. + // UNMODIFIED_PIXELS_IMAGE + // -Probabely some more to be added + //(see gdcmFileHelper.h for more explanations) + + void SetContentTypeToUserOwnImage() {SetContentType(VTK_GDCM_WRITE_TYPE_USER_OWN_IMAGE);} + void SetContentTypeToFilteredImage() {SetContentType(VTK_GDCM_WRITE_TYPE_FILTERED_IMAGE);} + void SetContentTypeToUserCreatedImage() {SetContentType(VTK_GDCM_WRITE_TYPE_CREATED_IMAGE);} + void SetContentTypeToUnmodifiedPixelsImage(){SetContentType(VTK_GDCM_WRITE_TYPE_UNMODIFIED_PIXELS_IMAGE);} vtkSetMacro(WriteType, int); vtkGetMacro(WriteType, int); @@ -70,8 +84,13 @@ public: //BTX - vtkSetMacro(GdcmFile, gdcm::File *); - vtkGetMacro(GdcmFile, gdcm::File *); + // Description: + // Aware user is allowed to pass his own GDCM_NAME_SPACE::File *, so he may set *any Dicom field* he wants. + // (including his own Shadow Elements, or any GDCM_NAME_SPACE::SeqEntry) + // GDCM_NAME_SPACE::FileHelper::CheckMandatoryElements() will check inconsistencies, as far as it knows how. + // Sorry, not yet available under Python. + vtkSetMacro(GdcmFile, GDCM_NAME_SPACE::File *); + vtkGetMacro(GdcmFile, GDCM_NAME_SPACE::File *); //ETX vtkSetMacro(ContentType, int); @@ -101,7 +120,7 @@ private: vtkMedicalImageProperties *MedicalImageProperties; int WriteType; //BTX - gdcm::File *GdcmFile; + GDCM_NAME_SPACE::File *GdcmFile; //ETX int ContentType;