Public Member Functions | Protected Attributes

ISignalData Class Reference

Generic Interface for signal data. More...

#include <ISignalData.h>

Inheritance diagram for ISignalData:
NrrdData NrrdData

List of all members.

Public Member Functions

 ISignalData (double sigma_signal, double sigma_mask)
virtual ~ISignalData ()
virtual void Interp3Signal (const vec_t &pos, std::vector< double > &signal) const =0
virtual double Interp3ScalarMask (const vec_t &pos) const =0
virtual void GetSeeds (const std::vector< int > &labels, std::vector< vec_t > &seeds) const =0
virtual const std::vector
< vec_t > & 
gradients () const =0
virtual const std::vector
< double > & 
GetBValues () const =0
virtual int GetSignalDimension () const =0
virtual bool LoadData (const std::string &data_file, const std::string &seed_file, const std::string &mask_file, const bool normalizedDWIData, const bool outputNormalizedDWIData)=0
 Load all Data.
virtual bool LoadSignal (const std::string &data_file, const bool normalizedDWIData)=0
vec_t voxel () const
virtual vec_t dim () const =0
const vnl_matrix< double > i2r () const
const vnl_matrix< double > r2i () const

Protected Attributes

const double _sigma_signal
const double _sigma_mask
vec_t _voxel
vnl_matrix< double > _r2i
vnl_matrix< double > _i2r

Detailed Description

Generic Interface for signal data.

Contains the function definitions for working with the diffusion and label data on which the rest of the code relies. It's current implementation is NrrdData.*


Constructor & Destructor Documentation

ISignalData::ISignalData ( double  sigma_signal,
double  sigma_mask 
) [inline]

Constructor

Parameters:
[in] sigma_signal the interpolation 'factor' for the signal
[in] sigma_mask the interpolation 'factor' for the mask
virtual ISignalData::~ISignalData (  )  [inline, virtual]

Deconstructor


Member Function Documentation

virtual vec_t ISignalData::dim (  )  const [pure virtual]

Returns the dimensions of the image

Implemented in NrrdData.

virtual const std::vector<double>& ISignalData::GetBValues (  )  const [pure virtual]

Returns the vector of b values

Implemented in NrrdData.

virtual void ISignalData::GetSeeds ( const std::vector< int > &  labels,
std::vector< vec_t > &  seeds 
) const [pure virtual]

Get all the seed points.

Implemented in NrrdData.

virtual int ISignalData::GetSignalDimension (  )  const [pure virtual]

Return the size of the signal vector

Implemented in NrrdData.

virtual const std::vector<vec_t>& ISignalData::gradients (  )  const [pure virtual]

Returns the gradients.

Implemented in NrrdData.

const vnl_matrix<double> ISignalData::i2r (  )  const [inline]

Returns the ijk-to-RAS matrix

virtual double ISignalData::Interp3ScalarMask ( const vec_t pos  )  const [pure virtual]

Checks if a certian position is still within the brain mask.

Implemented in NrrdData.

virtual void ISignalData::Interp3Signal ( const vec_t pos,
std::vector< double > &  signal 
) const [pure virtual]

Gets the signal values at a specified position.

Implemented in NrrdData.

virtual bool ISignalData::LoadData ( const std::string &  data_file,
const std::string &  seed_file,
const std::string &  mask_file,
const bool  normalizedDWIData,
const bool  outputNormalizedDWIData 
) [pure virtual]

Load all Data.

Parameters:
[in] data_file The path of the diffusion image
[in] seed_file The path of the seeds, a binary label map containing the starting points
[in] mask_file The path of the non-optional brain mask
[in] normalizedDWIData If set to 'true', the data will not be normalized
[in] outputNormalizedDWIData If set to 'true' the result of the normalization will be saved

Loads all the data necessary to perform tractography

Implemented in NrrdData.

virtual bool ISignalData::LoadSignal ( const std::string &  data_file,
const bool  normalizedDWIData 
) [pure virtual]

Loading the Signal

Todo:
this shouldn't be in the interface, because it is only used in the implementation, make it a private function of NrrdData

Implemented in NrrdData.

const vnl_matrix<double> ISignalData::r2i (  )  const [inline]

Returns the RAS-to-ijk matrix

vec_t ISignalData::voxel (  )  const [inline]

Returns the voxel spacing


Member Data Documentation

vnl_matrix<double> ISignalData::_i2r [protected]

matrix for ijk to RAS conversion

vnl_matrix<double> ISignalData::_r2i [protected]

matrix for RAS to ijk conversion

const double ISignalData::_sigma_mask [protected]

sigma for gaussian interpolation of mask

const double ISignalData::_sigma_signal [protected]

sigma for gaussian interpolation of signal

voxel size


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Defines