C2DImageFifoFilter Class Reference
Filtering and combining

The class to provide filtering of series of 2D images as if they where 3D images. More...

`#include <mia/3d/2dimagefifofilter.hh>`

Inheritance diagram for C2DImageFifoFilter:
[legend]
Collaboration diagram for C2DImageFifoFilter:
[legend]

## Public Types

typedef image2d_stack | plugin_data
typedef filter_type | plugin_type
Public Types inherited from TFifoFilter< P2DImage >
typedef std::shared_ptr< TFifoFilter > | Pointer
| smart pointer representing this class
Public Types inherited from CPropertyFlagHolder
typedef std::set< const char * > | Set
| define the type of the set of flags

## Public Member Functions

| C2DImageFifoFilter (size_t filter_width, size_t min_fill, size_t read_start)
Public Member Functions inherited from TFifoFilter< P2DImage >
void | append_filter (Pointer last)
void | finalize ()
void | push (typename ::boost::call_traits< P2DImage >::param_type x)
| TFifoFilter (size_t width, size_t min_fill, size_t read_start)
Public Member Functions inherited from CProductBase
const char * | get_init_string () const
void | set_init_string (const char *init)
void | set_module (PPluginModule module)
Public Member Functions inherited from CPropertyFlagHolder
void | add (const char *property)
Set | get_missing_properties (const CPropertyFlagHolder &testset) const
bool | has (const char *property) const
bool | has_all_in (const CPropertyFlagHolder &testset) const
virtual | ~CPropertyFlagHolder ()

## Protected Member Functions

C3DImage * | create_buffer (const C2DBounds &slice_sice, size_t depth, EPixelType type)
Protected Member Functions inherited from TFifoFilter< P2DImage >
size_t | get_buffer_size () const
size_t | get_end () const
size_t | get_pos () const
size_t | get_start () const

## Detailed Description

The class to provide filtering of series of 2D images as if they where 3D images.

This class is the base class for filters that run on series of 2D images in a 3D manner offering out-of-core processing. Specifically, each derived filter should only hold as much data as abolutely neccessary to filter a block of 2D images in a 3D manner. Therefore, only spacial, non-iterative filter can be implementes to be used in this FIFO filtering framework. This base class takes care of the data handling needed for out-of-core processing.

Definition at line 69 of file 2dimagefifofilter.hh.

## Member Typedef Documentation

## plugin_data

typedef image2d_stack C2DImageFifoFilter::plugin_data

Definition at line 72 of file 2dimagefifofilter.hh.

## plugin_type

typedef filter_type C2DImageFifoFilter::plugin_type

Definition at line 73 of file 2dimagefifofilter.hh.

## Constructor & Destructor Documentation

## C2DImageFifoFilter()

C2DImageFifoFilter::C2DImageFifoFilter | ( | size_t | filter_width,
|  | size_t | min_fill,
|  | size_t | read_start )

Constructor of the FIFO filter. The given parameters describe what amount of memory is needed for the filter to work properly. Thes parameters are passed directly to the parent class.

Parameters

  filter_width | actual filter width in Z-direction (i.e. the number of slices used to evaluate the filter at a certain point.
  min_fill | minimum number of slices required before the filter does actual processing
  read_start | number of slices that have to be pushed into the filter before first results can be read.

## Member Function Documentation

## create_buffer()

C3DImage * C2DImageFifoFilter::create_buffer | ( | const C2DBounds & | slice_sice,
|  | size_t | depth,
|  | EPixelType | type )

protected

Create the 3D buffer that is needed to hold the amount of data required for the filter

Parameters

  slice_sice | size of the 2D images to be puhsed down the pipeline
  depth | number of slices to be hold for processing (this may be different from filter width
  type | pixel type to be used for the buffer

The documentation for this class was generated from the following file:

- 2dimagefifofilter.hh