go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkVectorContainerSource.h
Go to the documentation of this file.
1 /*======================================================================
2 
3  This file is part of the elastix software.
4 
5  Copyright (c) University Medical Center Utrecht. All rights reserved.
6  See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for
7  details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notices for more information.
12 
13 ======================================================================*/
14 #ifndef __itkVectorContainerSource_h
15 #define __itkVectorContainerSource_h
16 
17 #include "itkProcessObject.h"
18 #include "itkDataObjectDecorator.h"
19 
20 namespace itk
21 {
27 template< class TOutputVectorContainer >
29  public ProcessObject
30 {
31 public:
32 
35  typedef ProcessObject Superclass;
36  typedef SmartPointer< Self > Pointer;
37  typedef SmartPointer< const Self > ConstPointer;
38 
40  itkNewMacro( Self );
41 
43  itkTypeMacro( VectorContainerSource, ProcessObject );
44 
46  typedef typename Superclass::DataObjectPointer DataObjectPointer;
47  typedef TOutputVectorContainer OutputVectorContainerType;
49 
52 
54  OutputVectorContainerType * GetOutput( unsigned int idx );
55 
57  virtual void GraftOutput( DataObject * output );
58 
60  virtual void GraftNthOutput( unsigned int idx, DataObject * output );
61 
63  virtual DataObjectPointer MakeOutput( unsigned int idx );
64 
65 protected:
66 
71 
73  void PrintSelf( std::ostream & os, Indent indent ) const;
74 
75 private:
76 
78  VectorContainerSource( const Self & ); // purposely not implemented
80  void operator=( const Self & ); // purposely not implemented
81 
85 
86 };
87 
88 } // end namespace itk
89 
90 #ifndef ITK_MANUAL_INSTANTIATION
91 #include "itkVectorContainerSource.hxx"
92 #endif
93 
94 #endif // end #ifndef __itkVectorContainerSource_h
TOutputVectorContainer OutputVectorContainerType
A base class for creating an ImageToVectorContainerFilter.
Define a front-end to the STL "vector" container that conforms to the IndexedContainerInterface.
virtual DataObjectPointer MakeOutput(unsigned int idx)
SmartPointer< Self > Pointer
virtual void GraftOutput(DataObject *output)
SmartPointer< const Self > ConstPointer
virtual void GraftNthOutput(unsigned int idx, DataObject *output)
OutputVectorContainerType::Pointer OutputVectorContainerPointer
void PrintSelf(std::ostream &os, Indent indent) const
void operator=(const Self &)
OutputVectorContainerType * GetOutput(void)
Superclass::DataObjectPointer DataObjectPointer


Generated on 27-04-2014 for elastix by doxygen 1.8.6 elastix logo