<div dir="ltr">I have spent several hours puzzling over this.<div><br></div><div style>There is a class vtkITKArchetypeImageSeriesReader that is part of Slicer.</div><div style><br></div><div style>In the process of converting BRAINSTools to be compatible with VTK6, I ran into this issue: vtkImageSource is gone, and vtkITKArchetypeImageSeriesReader derives from it.</div>
<div style><br></div><div style>As far as I can tell from reading the Pipeline migration guide, things that were once derived from vtkSource are now supposed to be derived from vtkAlgorithm.</div><div style><br></div><div style>
So I changed the superclass for vtkITKArchetypeImageSeriesReader to vtkImageAlgorithm.</div><div style><br></div><div style>This compiles OK but at runtime it has this error message:</div><div style><div><br></div><div>118: ERROR: In /scratch/kent/BRAINSTools/build/VTK/Common/ExecutionModel/vtkDemandDrivenPipeline.cxx, line 715</div>
<div>118: vtkCompositeDataPipeline (0x7f946c916190): Input port 0 of algorithm vtkITKArchetypeImageSeriesScalarReader(0x7f946c914990) has 0 connections but is not optional.</div><div><br></div><div style>Now something that is a source, doesn't need any inputs -- the input in this case is the name of the file or files to read to generate an image.</div>
<div style><br></div><div style>I don't understand the VTK pipeline in general, or this problem specifically, and frankly I was trying to do this conversion on a 'need to know' basis -- only learn what I need to know in order to get the conversion done.</div>
<div style><br></div><div style>So the question is -- if something was working fine before derived from vtkImageSource, what is the least-effort path to getting it functional in VTK6?</div></div></div>