X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=packages%2Fgdcmvtk%2Fsrc%2FbbgdcmvtkGetXCoherentInfoGdcmReader.h;h=f0b3c2134f78e455b5feaa81c6b2dfc5d73a2547;hb=fef49cf06296bb65a839585dba63f282a89d91fc;hp=d8a09e8d6b2a73e6a246b03d6ef444c18cf05ded;hpb=871fd8609dc04c99003add6f8477a25789e41cc8;p=bbtk.git diff --git a/packages/gdcmvtk/src/bbgdcmvtkGetXCoherentInfoGdcmReader.h b/packages/gdcmvtk/src/bbgdcmvtkGetXCoherentInfoGdcmReader.h index d8a09e8..f0b3c21 100644 --- a/packages/gdcmvtk/src/bbgdcmvtkGetXCoherentInfoGdcmReader.h +++ b/packages/gdcmvtk/src/bbgdcmvtkGetXCoherentInfoGdcmReader.h @@ -1,3 +1,29 @@ +/* +# --------------------------------------------------------------------- +# +# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image +# pour la SantÈ) +# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton +# Previous Authors : Laurent Guigues, Jean-Pierre Roux +# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil +# +# This software is governed by the CeCILL-B license under French law and +# abiding by the rules of distribution of free software. You can use, +# modify and/ or redistribute the software under the terms of the CeCILL-B +# license as circulated by CEA, CNRS and INRIA at the following URL +# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +# or in the file LICENSE.txt. +# +# As a counterpart to the access to the source code and rights to copy, +# modify and redistribute granted by the license, users are provided only +# with a limited warranty and the software's author, the holder of the +# economic rights, and the successive licensors have only limited +# liability. +# +# The fact that you are presently reading this means that you have had +# knowledge of the CeCILL-B license and that you accept its terms. +# ------------------------------------------------------------------------ */ + #ifdef _USE_VTK_ #ifndef __bbgdcmvtkGetXCoherentInfoGdcmReader_h_INCLUDED__ @@ -21,24 +47,32 @@ #include "vtkImageData.h" namespace bbgdcmvtk { + typedef std::map MapInfoDicom; + typedef std::vector< MapInfoDicom > VectorMapInfoDicom; class bbgdcmvtk_EXPORT GetXCoherentInfoGdcmReader : public bbtk::AtomicBlackBox { + BBTK_BLACK_BOX_INTERFACE(GetXCoherentInfoGdcmReader,bbtk::AtomicBlackBox); - BBTK_DECLARE_INPUT(In, std::vector); - BBTK_DECLARE_INPUT(IPPSort, bool); + BBTK_DECLARE_INPUT(In , std::vector); + BBTK_DECLARE_INPUT(IPPSort , bool); + BBTK_DECLARE_INPUT(DicomTags , std::vector); - BBTK_DECLARE_OUTPUT(Out, vtkImageData *); - BBTK_DECLARE_OUTPUT(IPP, std::vector); - BBTK_DECLARE_OUTPUT(IOP, std::vector); - BBTK_DECLARE_OUTPUT(PixelSpacing, std::vector); + BBTK_DECLARE_OUTPUT(Out , vtkImageData *); + BBTK_DECLARE_OUTPUT(IPP , std::vector); + BBTK_DECLARE_OUTPUT(IOP , std::vector); + BBTK_DECLARE_OUTPUT(PixelSpacing , std::vector); + BBTK_DECLARE_OUTPUT(DicomInfo , VectorMapInfoDicom); BBTK_PROCESS(Process); void Process(); + vtkImageData* CreateDefaultImage(); + + private: #if defined USE_GDCM @@ -54,18 +88,20 @@ class bbgdcmvtk_EXPORT GetXCoherentInfoGdcmReader //================================================================= // UserBlackBox description BBTK_BEGIN_DESCRIBE_BLACK_BOX(GetXCoherentInfoGdcmReader,bbtk::AtomicBlackBox); -BBTK_NAME("GetXCoherentInfoGdcmReader"); -BBTK_AUTHOR("jpr, eduardo"); -BBTK_DESCRIPTION("Get Dicom info from a File Set (a list of Dicom image file names) and read (as a vtkImageData)"); -BBTK_CATEGORY(""); - -BBTK_INPUT(GetXCoherentInfoGdcmReader,In, "List of Dicom image file names", std::vector,""); -BBTK_INPUT(GetXCoherentInfoGdcmReader,IPPSort,"Sort on Image Position Patient",bool,""); - -BBTK_OUTPUT(GetXCoherentInfoGdcmReader,Out, "Output image", vtkImageData *,""); -BBTK_OUTPUT(GetXCoherentInfoGdcmReader,IPP, "Image Position (Patient)", std::vector,""); -BBTK_OUTPUT(GetXCoherentInfoGdcmReader,IOP, "Image Orientation (Patient)", std::vector,""); -BBTK_OUTPUT(GetXCoherentInfoGdcmReader,PixelSpacing,"Pixel Spacing", std::vector,""); + BBTK_NAME("GetXCoherentInfoGdcmReader"); + BBTK_AUTHOR("jpr, eduardo"); + BBTK_DESCRIPTION("Get Dicom info from a File Set (a list of Dicom image file names) and read (as a vtkImageData)"); + BBTK_CATEGORY(""); + + BBTK_INPUT(GetXCoherentInfoGdcmReader,In ,"List of Dicom image file names", std::vector,""); + BBTK_INPUT(GetXCoherentInfoGdcmReader,IPPSort ,"Sort on Image Position Patient", bool,""); + BBTK_INPUT(GetXCoherentInfoGdcmReader,DicomTags ,"Dicom Tags (vector of Dicom tags ex: D0028_0030 D0020_0037)", std::vector,""); + + BBTK_OUTPUT(GetXCoherentInfoGdcmReader,Out ,"Output image" , vtkImageData *,""); + BBTK_OUTPUT(GetXCoherentInfoGdcmReader,IPP ,"Image Position (Patient)" , std::vector,""); + BBTK_OUTPUT(GetXCoherentInfoGdcmReader,IOP ,"Image Orientation (Patient)" , std::vector,""); + BBTK_OUTPUT(GetXCoherentInfoGdcmReader,PixelSpacing ,"Pixel Spacing" , std::vector,""); + BBTK_OUTPUT(GetXCoherentInfoGdcmReader,DicomInfo ,"vector of maps of Dicom tags" , VectorMapInfoDicom,""); BBTK_END_DESCRIBE_BLACK_BOX(GetXCoherentInfoGdcmReader); } // EO namespace bbgdcmvtk