STIR 6.5.0
stir::PlasmaData Class Reference

A class for storing plasma and blood samples of a single study. More...

#include "stir/modelling/PlasmaData.h"

Public Types

typedef plot_type::const_iterator const_iterator

Public Member Functions

 PlasmaData (const std::vector< PlasmaSample > &plasma_blood_plot)
 constructor giving a vector
 PlasmaData ()
 default constructor
 ~PlasmaData ()
 default constructor
void read_plasma_data (const std::string input_string)
 Implementation to read the input function from ONLY a 3-columns data file (Time-InputFunctionRadioactivity-WholeBloodRadioactivity).
void set_plot (const std::vector< PlasmaSample > &plasma_blood_plot)
 Function to set the plasma_blood_plot.
PlasmaData get_sample_data_in_frames (TimeFrameDefinitions time_frame_def)
 Sorts the plasma_data into frames.
void decay_correct_PlasmaData ()
 Function to decay correct the data.
Functions to get parameters

Function to shift the time data This is useful if the start time of the scan and the start time of the plasma are not precisely correct. This can be measured by the plasma peak and the very first frames of the dynamic images.

Note
This cannot be estimated in the current implementation of the direct reconstructions. Thus, it is given externally.
double get_time_shift ()
 Function to get the time shift.
bool get_is_decay_corrected () const
double get_isotope_halflife () const
 Function to get the isotope halflife.
TimeFrameDefinitions get_time_frame_definitions () const
Functions to set parameters
void set_time_frame_definitions (const TimeFrameDefinitions &plasma_fdef)
void set_is_decay_corrected (const bool is_decay_corrected)
void set_isotope_halflife (const double isotope_halflife)
 Function to set the isotope halflife.
void shift_time (const double time_shift)
 Function to shift the time data.
const_iterator begin () const
 begin() and end() iterators for the plasma curve and the size() function
const_iterator end () const
unsigned int size () const

Detailed Description

A class for storing plasma and blood samples of a single study.

See also
PlasmaSample

Constructor & Destructor Documentation

◆ PlasmaData() [1/2]

stir::PlasmaData::PlasmaData ( const std::vector< PlasmaSample > & plasma_blood_plot)
inline

constructor giving a vector

Todo
Better to use iterators

References PlasmaData().

Referenced by get_sample_data_in_frames(), PlasmaData(), and PlasmaData().

◆ PlasmaData() [2/2]

stir::PlasmaData::PlasmaData ( )
inline

default constructor

References PlasmaData().

◆ ~PlasmaData()

stir::PlasmaData::~PlasmaData ( )
inline

default constructor

default destructor

References ~PlasmaData().

Referenced by ~PlasmaData().

Member Function Documentation

◆ read_plasma_data()

void stir::PlasmaData::read_plasma_data ( const std::string input_string)
inline

Implementation to read the input function from ONLY a 3-columns data file (Time-InputFunctionRadioactivity-WholeBloodRadioactivity).

Todo
Implementation to set the input units.

Implementation to read the input function from ONLY a 3-columns data file (Time-InputFunctionRadioactivity-TotalBloodRadioactivity).

Warning
Assumes that the input function is not corrected for decay.

References stir::error(), and read_plasma_data().

Referenced by read_plasma_data(), and stir::modellingTests::run_tests().

◆ set_plot()

void stir::PlasmaData::set_plot ( const std::vector< PlasmaSample > & plasma_blood_plot)
inline

Function to set the plasma_blood_plot.

References set_plot().

Referenced by stir::modellingTests::run_tests(), and set_plot().

◆ get_sample_data_in_frames()

PlasmaData stir::PlasmaData::get_sample_data_in_frames ( TimeFrameDefinitions time_frame_def)
inline

Sorts the plasma_data into frames.

Sorts the plasma_data into frames

Warning
It corrects for decay if the data are not decay corrected.
Returns
PlasmaData are in start-end frames time mode.

References begin(), decay_correct_PlasmaData(), stir::TimeFrameDefinitions::get_num_frames(), get_sample_data_in_frames(), stir::integrate_discrete_function(), PlasmaData(), set_isotope_halflife(), set_time_frame_definitions(), and stir::warning().

Referenced by get_sample_data_in_frames(), and stir::modellingTests::run_tests().

◆ get_time_shift()

double stir::PlasmaData::get_time_shift ( )
inline

Function to get the time shift.

References get_time_shift().

Referenced by get_time_shift().

◆ get_isotope_halflife()

double stir::PlasmaData::get_isotope_halflife ( ) const
inline

Function to get the isotope halflife.

References get_isotope_halflife().

Referenced by get_isotope_halflife().

◆ set_time_frame_definitions()

void stir::PlasmaData::set_time_frame_definitions ( const TimeFrameDefinitions & plasma_fdef)
inline
Note
The set_time_frame_definitions() is prefered than giving directly the Scan TimeFrameDefinitions since the sample may not be measured for all the frames
For example at the beginning or at the end of the scan.

References set_time_frame_definitions().

Referenced by get_sample_data_in_frames(), and set_time_frame_definitions().

◆ set_isotope_halflife()

void stir::PlasmaData::set_isotope_halflife ( const double isotope_halflife)
inline

Function to set the isotope halflife.

References set_isotope_halflife().

Referenced by get_sample_data_in_frames(), stir::modellingTests::run_tests(), and set_isotope_halflife().

◆ shift_time()

void stir::PlasmaData::shift_time ( const double time_shift)
inline

Function to shift the time data.

References shift_time().

Referenced by shift_time().

◆ decay_correct_PlasmaData()

void stir::PlasmaData::decay_correct_PlasmaData ( )
inline

◆ begin()

PlasmaData::const_iterator stir::PlasmaData::begin ( ) const
inline

begin() and end() iterators for the plasma curve and the size() function

References begin().

Referenced by begin(), get_sample_data_in_frames(), and stir::modellingTests::run_tests().


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