NPL
Neurological Programs and Libraries
npl::LanczosInterpNDView< T > Class Template Reference

The purpose of this class is to view an image as a continuous 3D+vector dimension image rather than a 4+D image. Therefore all dimensions above the third are cast as a vector and interpolation is only performed between 3D points, with the 4th dimension assumed to be non-spatial. The would be applicable if the upper dimensions are of a different type than the first 3. More...

#include <accessors.h>

Inherits npl::NDConstView< T >.

Public Member Functions

 LanczosInterpNDView (std::shared_ptr< const NDArray > in, BoundaryConditionT bound=ZEROFLUX)
 
 LanczosInterpNDView ()
 
void setRadius (size_t rad)
 
size_t getRadius ()
 
operator() (double x=0, double y=0, double z=0, double t=0, double u=0, double v=0, double w=0)
 Gets value at array index and then casts to T. More...
 
get (const std::vector< int64_t > &index)
 Gets value at array index and then casts to T. More...
 
get (size_t len, int64_t *index)
 Gets value at array index and then casts to T. More...
 
operator[] (const std::vector< int64_t > &index)
 Gets value at array index and then casts to T. More...
 
get (const std::vector< double > &incoord)
 Gets value at array index and then casts to T. More...
 
get (size_t len, const double *incoord)
 Gets value at array index and then casts to T. More...
 
void setArray (ptr< const NDArray > in)
 
int64_t tlen ()
 

Public Attributes

BoundaryConditionT m_boundmethod
 
bool m_ras
 if true, then this assumes the inputs are RAS coordinates rather than indexes. Default is false More...
 

Protected Member Functions

operator[] (int64_t index)
 Gets value linear position in array, then casts to T. More...
 

Static Protected Member Functions

template<typename U >
static T castgetStatic (void *ptr)
 This is a wrapper function that will be called to safely cast from the underlying type. More...
 

Protected Attributes

int64_t m_radius
 
std::shared_ptr< const NDArrayparent
 Where to get the dat a from. Also the shared_ptr prevents dealloc. More...
 
T(* castget )(void *ptr)
 Function pointer to the correct function for casting from the underlying type. More...
 

Detailed Description

template<typename T>
class npl::LanczosInterpNDView< T >

The purpose of this class is to view an image as a continuous 3D+vector dimension image rather than a 4+D image. Therefore all dimensions above the third are cast as a vector and interpolation is only performed between 3D points, with the 4th dimension assumed to be non-spatial. The would be applicable if the upper dimensions are of a different type than the first 3.

Template Parameters
TType of value to cast and return

Definition at line 1654 of file accessors.h.

Constructor & Destructor Documentation

template<typename T >
npl::LanczosInterpNDView< T >::LanczosInterpNDView ( std::shared_ptr< const NDArray in,
BoundaryConditionT  bound = ZEROFLUX 
)
inline

Definition at line 1657 of file accessors.h.

template<typename T >
npl::LanczosInterpNDView< T >::LanczosInterpNDView ( )
inline

Definition at line 1663 of file accessors.h.

Member Function Documentation

template<typename T>
template<typename U >
static T npl::NDConstView< T >::castgetStatic ( void *  ptr)
inlinestaticprotectedinherited

This is a wrapper function that will be called to safely cast from the underlying type.

Template Parameters
UUnderlying type of pixel, figured out in the constructor
Parameters
ptrPointer to memory where the pixel is.
Returns
Correctly cast value

Definition at line 467 of file accessors.h.

template<typename T >
T npl::LanczosInterpNDView< T >::get ( const std::vector< int64_t > &  index)
inline

Gets value at array index and then casts to T.

Parameters
indexn-d index to access
Returns
value

Definition at line 1687 of file accessors.h.

template<typename T >
T npl::LanczosInterpNDView< T >::get ( size_t  len,
int64_t *  index 
)
inline

Gets value at array index and then casts to T.

Parameters
lenlength of index array
indexn-d index to access
Returns
value

Definition at line 1705 of file accessors.h.

template<typename T >
T npl::LanczosInterpNDView< T >::get ( const std::vector< double > &  incoord)
inline

Gets value at array index and then casts to T.

Returns
value

Definition at line 1736 of file accessors.h.

template<typename T >
T npl::LanczosInterpNDView< T >::get ( size_t  len,
const double *  incoord 
)
inline

Gets value at array index and then casts to T.

Returns
value

Definition at line 1746 of file accessors.h.

template<typename T >
size_t npl::LanczosInterpNDView< T >::getRadius ( )
inline

Definition at line 1666 of file accessors.h.

template<typename T >
T npl::LanczosInterpNDView< T >::operator() ( double  x = 0,
double  y = 0,
double  z = 0,
double  t = 0,
double  u = 0,
double  v = 0,
double  w = 0 
)
inline

Gets value at array index and then casts to T.

Returns
value

Definition at line 1673 of file accessors.h.

template<typename T >
T npl::LanczosInterpNDView< T >::operator[] ( const std::vector< int64_t > &  index)
inline

Gets value at array index and then casts to T.

Parameters
indexn-d index to access
Returns
value

Definition at line 1721 of file accessors.h.

template<typename T >
T npl::LanczosInterpNDView< T >::operator[] ( int64_t  index)
inlineprotected

Gets value linear position in array, then casts to T.

Returns
value

Definition at line 1843 of file accessors.h.

template<typename T>
void npl::NDConstView< T >::setArray ( ptr< const NDArray in)
inlineinherited

Definition at line 334 of file accessors.h.

template<typename T >
void npl::LanczosInterpNDView< T >::setRadius ( size_t  rad)
inline

Definition at line 1665 of file accessors.h.

template<typename T>
int64_t npl::NDConstView< T >::tlen ( )
inlineinherited

Definition at line 453 of file accessors.h.

Member Data Documentation

template<typename T>
T(* npl::NDConstView< T >::castget) (void *ptr)
protectedinherited

Function pointer to the correct function for casting from the underlying type.

Parameters
ptrlocation in memory where the pixel is stored

Definition at line 483 of file accessors.h.

template<typename T >
BoundaryConditionT npl::LanczosInterpNDView< T >::m_boundmethod

Definition at line 1828 of file accessors.h.

template<typename T >
int64_t npl::LanczosInterpNDView< T >::m_radius
protected

Definition at line 1849 of file accessors.h.

template<typename T >
bool npl::LanczosInterpNDView< T >::m_ras

if true, then this assumes the inputs are RAS coordinates rather than indexes. Default is false

Definition at line 1834 of file accessors.h.

template<typename T>
std::shared_ptr<const NDArray> npl::NDConstView< T >::parent
protectedinherited

Where to get the dat a from. Also the shared_ptr prevents dealloc.

Definition at line 470 of file accessors.h.


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