]> Creatis software - bbtk.git/blob - packages/itk/src/bbitkImageSeriesReader.h
*** empty log message ***
[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/07/23 12:02:15 $
7   Version:   $Revision: 1.7 $
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 /**
20  * \file 
21  * \brief class ITKImageSeriesReader : generic ITKImage reader
22  */
23 /**
24  * \class bbtk::ITKImageSeriesReader
25  * \brief Generic ITKImage reader
26  */
27 #ifdef _USE_ITK_
28
29 #ifndef __bbitkImageSeriesReader_h_INCLUDED__
30 #define __bbitkImageSeriesReader_h_INCLUDED__
31
32 #include "bbtkAtomicBlackBox.h"
33 #include "bbitkImage.h"
34
35 namespace bbitk
36 {
37
38   //=================================================================
39   // BlackBox declaration
40   class ImageSeriesReader : public bbtk::AtomicBlackBox  
41   {
42     
43     BBTK_BLACK_BOX_INTERFACE(ImageSeriesReader,
44                              bbtk::AtomicBlackBox);
45
46     BBTK_DECLARE_INPUT(FileNames,std::vector<std::string>);
47     BBTK_DECLARE_OUTPUT(Out,anyImagePointer);
48     BBTK_PROCESS(Read);
49     void Read();
50
51   private:
52     // Template read method 
53     template<class T> void Read();
54   };
55   //=================================================================
56   
57
58   //=================================================================
59   // BlackBox description
60   BBTK_BEGIN_DESCRIBE_BLACK_BOX(ImageSeriesReader,bbtk::AtomicBlackBox);
61   BBTK_NAME("ImageSeriesReader");
62   BBTK_AUTHOR("laurent.guigues at creatis.insa-lyon.fr");
63   BBTK_DESCRIPTION("Generic itk image series reader");
64   BBTK_CATEGORY("image;read/write");
65   typedef std::vector<std::string> vectorofstring;
66   BBTK_INPUT(ImageSeriesReader,FileNames,
67              "vector of file names with complete paths",vectorofstring,"file names list");
68   BBTK_OUTPUT(ImageSeriesReader,Out,"Output itk::image<T,D> with type T and dimension D determined by the content of the files",anyImagePointer,"");
69   
70   BBTK_END_DESCRIBE_BLACK_BOX(ImageSeriesReader);
71   //=================================================================
72   
73
74 }
75 //namespace bbtk
76 #endif
77
78 #endif