STIR 6.4.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()

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()

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().

◆ 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().

◆ 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().


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