[Insight-users] "pushing" data downstream

Daniel Faken dfaken at coventor.com
Fri Oct 31 10:32:43 EDT 2008


Hello ITK folks,

  I would like my filter to 'push' regions downstream when it is 
finished processing them.
  The order it finishes cannot be predicted, so I can't just have the 
downstream objects request a known region sequence.
  Any thoughts on how to do this?
  All I can think is having my filter communicate with a 
further-downstream object to 'pull' the data by requesting the regions 
the filter tells it about.
  Or, equivalently converting the filter to an object taking a 
'postprocess pipeline' as a parameter.

  From the docs, it seems another possibility would be overriding 
GenerateOutputRequestedRegion() to completely ignore the 'Requested' 
region and output whichever region the filter thinks best.  But this 
does not seem to be in-line with the ITK design (!), so I'm not sure how 
well this would work.

  This is for a streaming-capable FastMarchingImageFilter -- it computes 
a moving front through a data set, and when the front has moved past a 
given region, that region can be processed.  The existing 
FastMarchingImageFilter just processes the LargestPossibleRegion all at 
once.
  My data is too large (e.g. 10000^3) to remain in memory all-at-once, 
which is why I need to stream it.

thanks,
Daniel Faken
Coventor, Inc.



More information about the Insight-users mailing list