Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
mirtk::IndexExtrapolateImageFunction< TImage > Class Template Referenceabstract

#include <ExtrapolateImageFunction.h>

Inheritance diagram for mirtk::IndexExtrapolateImageFunction< TImage >:
Inheritance graph
Collaboration diagram for mirtk::IndexExtrapolateImageFunction< TImage >:
Collaboration graph

Public Types

typedef TImage ImageType
 Input image type.
 
typedef ImageType::RealType RealType
 Compatible floating-point type.
 
typedef ImageType::VoxelType VoxelType
 Input voxel type.
 
- Public Types inherited from mirtk::GenericExtrapolateImageFunction< TImage >
typedef TImage ImageType
 Input image type.
 
typedef ImageType::RealType RealType
 Compatible floating-point type.
 
typedef ImageType::VoxelType VoxelType
 Input voxel type.
 

Public Member Functions

virtual VoxelType Get (int, int, int=0, int=0) const
 Get image value at an arbitrary discrete image location.
 
virtual void Initialize ()
 Initialize image function.
 
virtual bool IsForeground (int, int, int=0, int=0) const
 Whether voxel whose value is used is inside the foreground.
 
void Transform (int &, int &) const
 Transform 2D voxel index.
 
void Transform (int &, int &, int &) const
 Transform 3D voxel index.
 
void Transform (int &, int &, int &, int &) const
 Transform 4D voxel index.
 
virtual void TransformIndex (int &idx, int max) const =0
 
virtual void TransformT (int &l) const
 Transform voxel index in t dimension.
 
virtual void TransformT (int &l, int c) const
 Transform voxel index in t dimension.
 
void TransformX (int &) const
 Transform voxel index in x dimension.
 
void TransformX (int &, int) const
 Transform voxel index in x dimension.
 
void TransformY (int &) const
 Transform voxel index in y dimension.
 
void TransformY (int &, int) const
 Transform voxel index in y dimension.
 
void TransformZ (int &) const
 Transform voxel index in z dimension.
 
void TransformZ (int &, int) const
 Transform voxel index in z dimension.
 
virtual ~IndexExtrapolateImageFunction ()
 Destructor.
 
- Public Member Functions inherited from mirtk::GenericExtrapolateImageFunction< TImage >
VoxelType Get (int) const
 Get image value at an arbitrary discrete image location.
 
double GetAsDouble (int, int, int=0, int=0) const
 Get scalar image value at an arbitrary discrete image location.
 
void GetAsVector (Vector &, int, int, int=0, int=0) const
 Get vector image value at an arbitrary discrete image location.
 
virtual void Input (const BaseImage *)
 Set input image.
 
const ImageTypeInput () const
 Get input image.
 
VoxelType operator() (int) const
 Get image value at an arbitrary discrete image location.
 
VoxelType operator() (int, int, int=0, int=0) const
 Get image value at an arbitrary discrete image location.
 
virtual ~GenericExtrapolateImageFunction ()
 Destructor.
 
- Public Member Functions inherited from mirtk::ExtrapolateImageFunction
const ImageAttributesAttributes () const
 Attributes of input image.
 
double Evaluate (double, double, double=0, double=0) const
 Get scalar image value at the nearest discrete image location.
 
virtual double Evaluate (double, double, double=0, double=0)
 Get scalar image value at the nearest discrete image location.
 
virtual enum ExtrapolationMode ExtrapolationMode () const =0
 Get extrapolation mode corresponding to this extrapolator.
 
double GetAsDouble (int) const
 Get scalar image value at an arbitrary discrete image location.
 
Vector GetAsVector (int) const
 Get vector image value at an arbitrary discrete image location.
 
Vector GetAsVector (int, int, int=0, int=0) const
 Get vector image value at an arbitrary discrete image location.
 
void GetAsVector (Vector &, int) const
 Get vector image value at an arbitrary discrete image location.
 
int N () const
 Number of vector components per image voxel.
 
int T () const
 Size of input image in t dimension.
 
double TSize () const
 Voxel size of input image in t dimension.
 
int X () const
 Size of input image in x dimension.
 
double XSize () const
 Voxel size of input image in x dimension.
 
int Y () const
 Size of input image in y dimension.
 
double YSize () const
 Voxel size of input image in y dimension.
 
int Z () const
 Size of input image in z dimension.
 
double ZSize () const
 Voxel size of input image in z dimension.
 
virtual ~ExtrapolateImageFunction ()
 Destructor.
 
- Public Member Functions inherited from mirtk::ImageFunction
virtual ~ImageFunction ()
 Destructor.
 
- Public Member Functions inherited from mirtk::Object
virtual const char * NameOfClass () const =0
 Get name of class, which this object is an instance of.
 
virtual ParameterList Parameter () const
 Get parameter name/value pairs.
 
bool Parameter (const ParameterList &)
 Set parameters from name/value pairs.
 
virtual bool Set (const char *name, const char *value)
 
virtual ~Object ()
 Destructor.
 

Protected Member Functions

 IndexExtrapolateImageFunction ()
 Default constructor.
 
- Protected Member Functions inherited from mirtk::GenericExtrapolateImageFunction< TImage >
 GenericExtrapolateImageFunction ()
 Default constructor.
 
- Protected Member Functions inherited from mirtk::ExtrapolateImageFunction
 ExtrapolateImageFunction ()
 Default constructor.
 
- Protected Member Functions inherited from mirtk::ImageFunction
 ImageFunction ()
 Default constructor.
 
 ImageFunction (const ImageFunction &)
 Copy constructor.
 
- Protected Member Functions inherited from mirtk::Object
template<typename... Args>
void Throw (ErrorType err, const char *func, Args... args) const
 

Protected Attributes

int _tmax
 Maximum index in t dimension.
 
int _xmax
 Maximum index in x dimension.
 
int _ymax
 Maximum index in y dimension.
 
int _zmax
 Maximum index in z dimension.
 

Additional Inherited Members

- Static Public Member Functions inherited from mirtk::GenericExtrapolateImageFunction< TImage >
static GenericExtrapolateImageFunctionNew (enum ExtrapolationMode, const TImage *=NULL)
 Construct extrapolator or return NULL if mode is Extrapolation_None.
 
- Static Public Member Functions inherited from mirtk::ExtrapolateImageFunction
static ExtrapolateImageFunctionNew (ExtrapolationMode mode, const BaseImage *=NULL)
 Construct extrapolator or return NULL if mode is Extrapolation_None.
 
- Static Public Member Functions inherited from mirtk::Object
static const char * NameOfType ()
 Get name of this class type.
 
- Static Protected Member Functions inherited from mirtk::Object
template<typename... Args>
static void ThrowStatic (ErrorType err, const char *cls, const char *func, Args... args)
 

Detailed Description

template<class TImage>
class mirtk::IndexExtrapolateImageFunction< TImage >

Base class for generic voxel index extrapolation functions

This abstract class is the base for extrapolate image functions which map any given discrete voxel coordinate to one, which is inside the finite image domain. The extrapolation function assigns the image value at the resulting voxel coordinate to the initially mapped discrete voxel.

This base class is templated over the type of the input image to be extrapolated and thus subclasses can make use of image voxel type specific (non-virtual) getters to access the image data. No conversion of the voxel type to a uniform voxel type such as double scalar or vector type is required when the type of the image to be extrapolated is known. Otherwise, if the image type is unknown, use the abstract ExtrapolateImageFunction interface instead.

See also
ExtrapolateImageFunction

Definition at line 241 of file ExtrapolateImageFunction.h.

Member Function Documentation

§ TransformIndex()

template<class TImage>
virtual void mirtk::IndexExtrapolateImageFunction< TImage >::TransformIndex ( int &  idx,
int  max 
) const
pure virtual

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