Medical Imaging Interaction Toolkit  2018.4.99-12ad79a3
Medical Imaging Interaction Toolkit
mitkSurfaceToSurfaceFilter.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef MITKSURFACETOSURFACEFILTER_H_HEADER_INCLUDED_C10B4740
14 #define MITKSURFACETOSURFACEFILTER_H_HEADER_INCLUDED_C10B4740
15 
16 #include "mitkSurfaceSource.h"
17 
18 namespace mitk
19 {
20  class Surface;
21  //##Documentation
22  //## @brief Superclass of all classes getting surfaces (instances of class
23  //## Surface) as input and generating surfaces as output.
24  //##
25  //## In itk and vtk the generated result of a ProcessObject is only guaranteed
26  //## to be up-to-date, when Update() of the ProcessObject or the generated
27  //## DataObject is called immediately before access of the data stored in the
28  //## DataObject. This is also true for subclasses of mitk::BaseProcess and thus
29  //## for mitk::mitkSurfaceToSurfaceFilter.
30  //## @ingroup Process
32  {
33  public:
35 
36  itkFactorylessNewMacro(Self) itkCloneMacro(Self)
37 
38  typedef itk::DataObject::Pointer DataObjectPointer;
39 
40  using itk::ProcessObject::SetInput;
41  virtual void SetInput(const mitk::Surface *surface);
42 
50  virtual void SetInput(unsigned int idx, const mitk::Surface *surface);
51 
52  virtual const mitk::Surface *GetInput();
53 
54  virtual const mitk::Surface *GetInput(unsigned int idx);
55 
60  virtual void CreateOutputForInput(unsigned int idx);
61 
66  virtual void CreateOutputsForAllInputs();
67 
68  virtual void RemoveInputs(mitk::Surface *surface);
69 
70  protected:
72 
73  ~SurfaceToSurfaceFilter() override;
74  };
75 
76 } // namespace mitk
77 
78 #endif /* MITKSURFACETOSURFACEFILTER_H_HEADER_INCLUDED_C10B4740 */
Superclass of all classes generating surfaces (instances of class Surface) as output.
Class for storing surfaces (vtkPolyData).
Definition: mitkSurface.h:28
#define MITKCORE_EXPORT
Superclass of all classes generating some kind of mitk::BaseData.
DataCollection - Class to facilitate loading/accessing structured data.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:40
itk::DataObject::Pointer DataObjectPointer
Superclass of all classes getting surfaces (instances of class Surface) as input and generating surfa...