KWStyle - itkPathToPathFilter.h
 
Matrix View
Description

1 /*=========================================================================
2
3   Program:   Insight Segmentation & Registration Toolkit
4   Module:    $RCSfile: itkPathToPathFilter.h.html,v $
5   Language:  C++
6   Date:      $Date: 2006/01/17 19:15:43 $
7   Version:   $Revision: 1.4 $
8
9   Copyright (c) Insight Software Consortium. All rights reserved.
10   See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
11
12      This software is distributed WITHOUT ANY WARRANTY; without even 
13      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
14      PURPOSE.  See the above copyright notices for more information.
15
16 =========================================================================*/
17
18 DEF #ifndef _itkPathToPathFilter_h
19 DEF #define _itkPathToPathFilter_h
20
21 #include "itkPathSource.h"
22 #include "itkPath.h"
23
24 namespace itk
25 {
26   
27 /** \class PathToPathFilter
28 LEN  * \brief Base class for filters that take a path as input and produce a path as output.
29  *
30  * PathToPathFilter is the base class for all process objects that output
31  * path data and require path data as input. Specifically, this class
32  * defines the SetInput() method for defining the input to a filter.
33  *
34  * \ingroup PathFilters
35  */
36
37 template <class TInputPath, class TOutputPath>
38 class ITK_EXPORT PathToPathFilter : public PathSource<TOutputPath>
39 {
40 public:
41   /** Standard class typedefs. */
42   typedef PathToPathFilter  Self;
43 TDA   typedef PathSource<TOutputPath>  Superclass;
44 TDA   typedef SmartPointer<Self>  Pointer;
45 TDA   typedef SmartPointer<const Self>  ConstPointer;
46   
47   /** Method for creation through the object factory. */
48   itkNewMacro(Self);
49   
50   /** Run-time type information (and related methods). */
51   itkTypeMacro(PathToPathFilter,PathSource);
52
53   /** Some convenient typedefs. */
54   typedef TInputPath InputPathType;
55 TDA   typedef typename InputPathType::Pointer InputPathPointer;
56 TDA   typedef typename InputPathType::ConstPointer InputPathConstPointer;
57   
58   /** Set/Get the path input of this process object.  */
59   virtual void SetInput( const InputPathType *path);
60   virtual void SetInput( unsigned int, const TInputPath * path);
61   const InputPathType * GetInput(void);
62   const InputPathType * GetInput(unsigned int idx);
63
64 protected:
65   PathToPathFilter();
66   ~PathToPathFilter() {}
67   
68   virtual void PrintSelf(std::ostream& os, Indent indent) const;
69   
70   /** What is the input requested region that is required to produce the output
71    * requested region?  Up till and including now, the base assumption is that
72    * the largest possible region will be requested of the input.  If this method
73    * is overridden, the new method should call its superclass' implementation as
74    * its first step.
75    *
76    * \sa ProcessObject::GenerateInputRequestedRegion() */
77   virtual void GenerateInputRequestedRegion();
78
79
80 private:
81   PathToPathFilter(const Self&); //purposely not implemented
82   void operator=(const Self&);   //purposely not implemented
83 };
84
85 // end namespace itk
86
87 #ifndef ITK_MANUAL_INSTANTIATION
88 #include "itkPathToPathFilter.txx"
89 #endif
90
91 #endif
92

Generated by KWStyle 1.0b on Tuesday January,17 at 02:14:38PM
© Kitware Inc.