X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=packages%2Fgdcmvtk%2Fsrc%2FbbgdcmvtkGetXCoherentInfoGdcmReader.h;h=a37304beca30d6ecb9562e799de41b3667abbd05;hb=724236f8156e84f206c497b755135fbdd2ccb889;hp=97064cd4c04d715c24d21b79cc533269f77d4fda;hpb=5ecfbf82eea9a965a11ae9f47377ad900b7253b7;p=bbtk.git diff --git a/packages/gdcmvtk/src/bbgdcmvtkGetXCoherentInfoGdcmReader.h b/packages/gdcmvtk/src/bbgdcmvtkGetXCoherentInfoGdcmReader.h index 97064cd..a37304b 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__ @@ -7,10 +33,18 @@ #include "bbtkAtomicBlackBox.h" #include "iostream" +#if defined(USE_GDCM) #include "vtkGdcmReader.h" +#endif + +#if defined(USE_GDCM2) +#include "vtkGDCMImageReader.h" +#endif + #include "gdcmFile.h" #include "gdcmSerieHelper.h" +#include "vtkImageData.h" namespace bbgdcmvtk { @@ -19,16 +53,10 @@ class bbgdcmvtk_EXPORT GetXCoherentInfoGdcmReader public bbtk::AtomicBlackBox { BBTK_BLACK_BOX_INTERFACE(GetXCoherentInfoGdcmReader,bbtk::AtomicBlackBox); -//================================================================== -/// User callback called in the box contructor -virtual void bbUserConstructor(); -/// User callback called in the box copy constructor -virtual void bbUserCopyConstructor(bbtk::BlackBox::Pointer); -/// User callback called in the box destructor -virtual void bbUserDestructor(); -//================================================================== BBTK_DECLARE_INPUT(In, std::vector); + BBTK_DECLARE_INPUT(IPPSort, bool); + BBTK_DECLARE_OUTPUT(Out, vtkImageData *); BBTK_DECLARE_OUTPUT(IPP, std::vector); BBTK_DECLARE_OUTPUT(IOP, std::vector); @@ -37,10 +65,19 @@ virtual void bbUserDestructor(); BBTK_PROCESS(Process); void Process(); + vtkImageData* CreateDefaultImage(); + + private: - GDCM_NAME_SPACE::File *f; - GDCM_NAME_SPACE::SerieHelper *sh; - vtkGdcmReader *reader; + +#if defined USE_GDCM + GDCM_NAME_SPACE::File *f; + GDCM_NAME_SPACE::SerieHelper *sh; + vtkGdcmReader *reader; +#endif +#if defined USE_GDCM2 + vtkGDCMImageReader *reader; +#endif }; //================================================================= @@ -48,10 +85,11 @@ virtual void bbUserDestructor(); BBTK_BEGIN_DESCRIBE_BLACK_BOX(GetXCoherentInfoGdcmReader,bbtk::AtomicBlackBox); BBTK_NAME("GetXCoherentInfoGdcmReader"); BBTK_AUTHOR("jpr, eduardo"); -BBTK_DESCRIPTION("Get Dicom info from a File Set and read (as a vtkImageData)"); +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,"Dicom image file name",std::vector,""); +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,"");