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>
33#undef itkExceptionMacro
34#define itkExceptionMacro(x) \
36 ::std::ostringstream message; \
37 message << "itk::ERROR: " << this->GetNameOfClass() << "(" << this << "): "; \
38 std::cout << message.str().c_str() << std::endl; \
41#undef itkGenericExceptionMacro
42#define itkGenericExceptionMacro(x) \
44 ::std::ostringstream message; \
45 message << "itk::ERROR: " x; \
46 std::cout << message.str() << std::endl; \
58#ifdef VTK_HAS_INITIALIZE_OBJECT_BASE
59 result->InitializeObjectBase();
66 void PrintSelf(ostream& os, vtkIndent indent)
override
68 Superclass::PrintSelf(os, indent);
80 t1 = this->Superclass::GetMTime();
98 this->Superclass::Modified();
138 virtual vtkDataObject*
GetInput() {
return (vtkDataObject::SafeDownCast(this->
vtkCast->GetInput())); };
142 using vtkAlgorithm::Update;
157 this->UpdateProgress(
m_Process->GetProgress());
167 void ExecuteData(vtkDataObject*)
override { vtkWarningMacro(<<
"This filter does not respond to Update(). Doing a GetOutput->Update() instead."); }
173 this->
vtkCast = vtkImageCast::New();
187 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()