]> Creatis software - bbtk.git/blob - packages/itk/src/bbitkImageSeriesReader.h
3bbac20f3618fe6241042fbf78f611d4a4cf7b2e
[bbtk.git] / packages / itk / src / bbitkImageSeriesReader.h
1 /*=========================================================================
2                                                                                 
3   Program:   bbtk
4   Module:    $RCSfile: bbitkImageSeriesReader.h,v $
5   Language:  C++
6   Date:      $Date: 2008/02/05 12:11:51 $
7   Version:   $Revision: 1.2 $
8                                                                                 
9   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
10   l'Image). All rights reserved. See Doc/License.txt or
11   http://www.creatis.insa-lyon.fr/Public/bbtk/License.html for details.
12                                                                                 
13      This software is distributed WITHOUT ANY WARRANTY; without even
14      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15      PURPOSE.  See the above copyright notices for more information.
16                                                                                 
17 =========================================================================*//**
18 /**
19  * \file 
20  * \brief class ITKImageSeriesReader : generic ITKImage reader
21  */
22 /**
23  * \class bbtk::ITKImageSeriesReader
24  * \brief Generic ITKImage reader
25  */
26 #ifdef _USE_ITK_
27
28 #ifndef __bbitkImageSeriesReader_h_INCLUDED__
29 #define __bbitkImageSeriesReader_h_INCLUDED__
30
31 #include "bbtkUserBlackBox.h"
32 #include "bbitkImage.h"
33
34 namespace bbitk
35 {
36
37   class ImageSeriesReader : public bbtk::UserBlackBox  
38   {
39     
40     BBTK_USER_BLACK_BOX_INTERFACE(ImageSeriesReader,
41                                   bbtk::UserBlackBox);
42
43     BBTK_DECLARE_INPUT(FileNames,std::vector<std::string>);
44     BBTK_DECLARE_OUTPUT(Out,anyImagePointer);
45     BBTK_PROCESS(Read);
46     void Read();
47
48   private:
49     // Template read method 
50     template<class T> void Read();
51   };
52   
53
54   //=================================================================
55   // UserBlackBox description
56   BBTK_BEGIN_DESCRIBE_BLACK_BOX(ImageSeriesReader,bbtk::UserBlackBox);
57   BBTK_NAME("ImageSeriesReader");
58   BBTK_AUTHOR("laurent.guigues at creatis.insa-lyon.fr");
59   BBTK_DESCRIPTION("Generic itk image series reader");
60   BBTK_CATEGORY("image;read/write");
61   typedef std::vector<std::string> vectorofstring;
62   BBTK_INPUT(ImageSeriesReader,FileNames,
63              "vector of file names with complete paths",vectorofstring);
64   BBTK_OUTPUT(ImageSeriesReader,Out,"Output itk::image<T,D> with type T and dimension D determined by the content of the files",anyImagePointer);
65   BBTK_END_DESCRIBE_BLACK_BOX(ImageSeriesReader);
66   //=================================================================
67   
68
69 }
70 //namespace bbtk
71 #endif
72
73 #endif