C3DRegTimeStep Class Referenceabstract
Image Registration and Transformation

The time-step part of time-marching registration algorithms. More...

`#include <mia/3d/timestep.hh>`

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

## Public Types

typedef C3DImage | plugin_data
| plugin hanlder helper
typedef timestep_type | plugin_type
| plugin hanlder helper
Public Types inherited from CPropertyFlagHolder
typedef std::set< const char * > | Set
| define the type of the set of flags

## Public Member Functions

void | apply (const C3DFVectorfield &infield, C3DFVectorfield &outfield, float scale)
| C3DRegTimeStep (float min, float max)
float | calculate_pertuberation (C3DFVectorfield &io, const C3DFVectorfield &shift) const
bool | decrease ()
float | get_delta (float maxshift) const
bool | has_regrid () const
void | increase ()
bool | regrid_requested (const C3DFVectorfield &b, const C3DFVectorfield &v, float delta) const
virtual | ~C3DRegTimeStep ()
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 ()

## Detailed Description

The time-step part of time-marching registration algorithms.

Definition at line 38 of file 3d/timestep.hh.

## Member Typedef Documentation

## plugin_data

typedef C3DImage C3DRegTimeStep::plugin_data

plugin hanlder helper

Definition at line 42 of file 3d/timestep.hh.

## plugin_type

typedef timestep_type C3DRegTimeStep::plugin_type

plugin hanlder helper

Definition at line 44 of file 3d/timestep.hh.

## Constructor & Destructor Documentation

## C3DRegTimeStep()

C3DRegTimeStep::C3DRegTimeStep | ( | float | min,
|  | float | max )

Contructor to initialize the time setep with the range of possible time step length

Parameters

  min |
  max |

## ~C3DRegTimeStep()

virtual C3DRegTimeStep::~C3DRegTimeStep | ( |  | ) |

virtual

## Member Function Documentation

## apply()

void C3DRegTimeStep::apply | ( | const C3DFVectorfield & | infield,
|  | C3DFVectorfield & | outfield,
|  | float | scale )

Apply the time step based on an input vector field to an output transformation

Parameters

  | infield | input vector field to add
  [in,out] | outfield | at input: vector field that is to be changed, at output: updated field
  | scale | a scaling to apply to the input field prior to applying it

## calculate_pertuberation()

float C3DRegTimeStep::calculate_pertuberation | ( | C3DFVectorfield & | io,
|  | const C3DFVectorfield & | shift ) const

Evaluate the pertuberation related to the time step type and transformation

Parameters

  [in,out] | io | at input: the field to pertoperate, output: pertuperated field
  | shift | related current transformation to base the pertuberation on

## decrease()

bool C3DRegTimeStep::decrease | ( |  | ) |

Decrease the current time step

Returns
  true if decreasing time-step was sucessfull, otherwise false

## get_delta()

float C3DRegTimeStep::get_delta | ( | float | maxshift | ) | const

Evaluate the delta for the application of the time step based on the maxium allowed transformation

Parameters

  maxshift | maximum hypothetical transfornmation to be applied

Returns
  the delta value corresponding to the current time step

## has_regrid()

bool C3DRegTimeStep::has_regrid | ( |  | ) | const

Returns
  true if the time-step requires regridding

## increase()

void C3DRegTimeStep::increase | ( |  | ) |

Increase time step (at most to its maximum)

## regrid_requested()

bool C3DRegTimeStep::regrid_requested | ( | const C3DFVectorfield & | b,
|  | const C3DFVectorfield & | v,
|  | float | delta ) const

For a fluid-dynamic like registration evaluate whether a regridding is needed. For other time-steps it always should return false

Parameters

  b | current force field
  v | velocity field
  delta | time step value to be applied

Returns
  true if regridding is to be applied

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

- 3d/timestep.hh