15#ifndef __vtkITKImageToImageFilter_h
16#define __vtkITKImageToImageFilter_h
21#include <itkCommand.h>
22#include <itkProcessObject.h>
25#include <vtkCommand.h>
26#include <vtkImageAlgorithm.h>
27#include <vtkImageCast.h>
28#include <vtkImageData.h>
29#include <vtkImageExport.h>
30#include <vtkImageImport.h>
31#include <vtkVersion.h>
36#undef itkExceptionMacro
37#define itkExceptionMacro(x) \
39 ::std::ostringstream message; \
40 message << "itk::ERROR: " << this->GetNameOfClass() << "(" << this << "): "; \
41 std::cout << message.str().c_str() << std::endl; \
44#undef itkGenericExceptionMacro
45#define itkGenericExceptionMacro(x) \
47 ::std::ostringstream message; \
48 message << "itk::ERROR: " x; \
49 std::cout << message.str() << std::endl; \
61#ifdef VTK_HAS_INITIALIZE_OBJECT_BASE
62 result->InitializeObjectBase();
69 void PrintSelf(ostream& os, vtkIndent indent)
override
71 Superclass::PrintSelf(os, indent);
83 t1 = this->Superclass::GetMTime();
101 this->Superclass::Modified();
141 virtual vtkDataObject*
GetInput() {
return (vtkDataObject::SafeDownCast(this->
vtkCast->GetInput())); };
145 using vtkAlgorithm::Update;
160 this->UpdateProgress(
m_Process->GetProgress());
170 void ExecuteData(vtkDataObject*)
override { vtkWarningMacro(<<
"This filter does not respond to Update(). Doing a GetOutput->Update() instead."); }
176 this->
vtkCast = vtkImageCast::New();
190 vtkDebugMacro(
"Destructing vtkITKImageToImageFilter");
vtkITKImageToImageFilter()
ETX.
void DebugOff() override
Pass DebugOff.
virtual vtkDataObject * GetInput()
Return the input to the filter.
MemberCommandPointer m_StartEventCommand
void HandleProgressEvent()
void DebugOn() override
Pass DebugOn.
void ExecuteData(vtkDataObject *) override
ETX.
void SetOutput(vtkDataObject *d) override
void Modified() override
Pass modified message to itk filter.
vtkImageExport * vtkExporter
void LinkITKProgressToVTKProgress(itk::ProcessObject *process)
BTX.
MemberCommandPointer m_EndEventCommand
void SetInputConnection(int port, vtkAlgorithmOutput *input) override
void SetInputConnection(vtkAlgorithmOutput *input) override
void PrintSelf(ostream &os, vtkIndent indent) override
itk::ProcessObject::Pointer m_Process
int GetNumberOfThreads()
Pass SetNumberOfThreads.
MemberCommand::Pointer MemberCommandPointer
void SetNumberOfThreads(int val)
Pass SetNumberOfThreads.
void Update(int port) override
vtkImageImport * vtkImporter
virtual void SetInput(vtkImageData *Input)
Set the Input of the filter.
vtkMTimeType GetMTime() override
itk::SimpleMemberCommand< vtkITKImageToImageFilter > MemberCommand
~vtkITKImageToImageFilter() override
virtual vtkImageData * GetOutput()
MemberCommandPointer m_ProgressCommand
virtual vtkImageData * GetOutput(int idx)
static vtkITKImageToImageFilter * New()