RISA
risa::OfflineLoader Class Reference

The loader stage for offline data processing. More...

#include <OfflineLoader.h>

Collaboration diagram for risa::OfflineLoader:

Public Types

using manager_type = glados::cuda::HostMemoryManager< unsigned short, glados::cuda::async_copy_policy >
 

Public Member Functions

 OfflineLoader (const std::string &address, const std::string &configFile)
 
auto loadImage () -> glados::Image< manager_type >
 loadImage is called, when the software pipeline is able to process a new image More...
 

Protected Member Functions

 ~OfflineLoader ()
 

Private Member Functions

auto readInput () -> void
 
auto readConfig (const std::string &configFile) -> bool
 

Private Attributes

unsigned int memoryPoolIndex_
 stores the indeces received when registering in MemoryPool More...
 
std::queue< glados::Image< manager_type > > buffer_
 
double worstCaseTime_
 
double bestCaseTime_
 
Timer tmr_
 
std::string path_
 the input path of raw data More...
 
std::string fileName_
 the input filename More...
 
std::string fileEnding_
 the fileending of the input data More...
 
int numberOfDetectors_
 the number of detectors in the fan beam sinogram More...
 
int numberOfProjections_
 the number of projections in the fan beam sinogram More...
 
int numberOfDetectorModules_
 the number of detector modules More...
 
int numberOfPlanes_
 the number of planes More...
 
unsigned int numberOfFrames_
 the number of frames in the input data for one plane More...
 
int numberOfDetectorsPerModule_
 the number of detectors per module More...
 
std::size_t stopFrame_
 
std::size_t index_ {0u}
 
std::vector< std::unique_ptr< std::ifstream > > ifstreams_
 stores the input file streams during the lifetime of the stage More...
 

Detailed Description

The loader stage for offline data processing.

This stage gets the paths to the input files and loads data sinogram by sinogram. Hence, the the lower limit of the reconstruction speed is given by the bandwidth of the storage system. Furthermore, this method leads to low memory consumption.

Definition at line 52 of file OfflineLoader.h.

Member Typedef Documentation

Constructor & Destructor Documentation

risa::OfflineLoader::OfflineLoader ( const std::string &  address,
const std::string &  configFile 
)

Definition at line 35 of file OfflineLoader.cu.

risa::OfflineLoader::~OfflineLoader ( )
protected

Definition at line 51 of file OfflineLoader.cu.

Member Function Documentation

auto risa::OfflineLoader::loadImage ( ) -> glados::Image<manager_type>

loadImage is called, when the software pipeline is able to process a new image

Returns
the image that is pushed through the software pipeline

Definition at line 56 of file OfflineLoader.cu.

auto risa::OfflineLoader::readConfig ( const std::string &  configFile) -> bool
private

All values needed for setting up the class are read from the config file in this function.

Parameters
[in]configFilepath to config file
Returns
returns true, if configuration file could be read successfully, else false

Definition at line 105 of file OfflineLoader.cu.

auto risa::OfflineLoader::readInput ( ) -> void
private

Definition at line 80 of file OfflineLoader.cu.

Member Data Documentation

double risa::OfflineLoader::bestCaseTime_
private

Definition at line 75 of file OfflineLoader.h.

std::queue<glados::Image<manager_type> > risa::OfflineLoader::buffer_
private

Definition at line 72 of file OfflineLoader.h.

std::string risa::OfflineLoader::fileEnding_
private

the fileending of the input data

Definition at line 81 of file OfflineLoader.h.

std::string risa::OfflineLoader::fileName_
private

the input filename

Definition at line 80 of file OfflineLoader.h.

std::vector<std::unique_ptr<std::ifstream> > risa::OfflineLoader::ifstreams_
private

stores the input file streams during the lifetime of the stage

Definition at line 92 of file OfflineLoader.h.

std::size_t risa::OfflineLoader::index_ {0u}
private

Definition at line 90 of file OfflineLoader.h.

unsigned int risa::OfflineLoader::memoryPoolIndex_
private

stores the indeces received when registering in MemoryPool

Definition at line 71 of file OfflineLoader.h.

int risa::OfflineLoader::numberOfDetectorModules_
private

the number of detector modules

Definition at line 84 of file OfflineLoader.h.

int risa::OfflineLoader::numberOfDetectors_
private

the number of detectors in the fan beam sinogram

Definition at line 82 of file OfflineLoader.h.

int risa::OfflineLoader::numberOfDetectorsPerModule_
private

the number of detectors per module

Definition at line 87 of file OfflineLoader.h.

unsigned int risa::OfflineLoader::numberOfFrames_
private

the number of frames in the input data for one plane

Definition at line 86 of file OfflineLoader.h.

int risa::OfflineLoader::numberOfPlanes_
private

the number of planes

Definition at line 85 of file OfflineLoader.h.

int risa::OfflineLoader::numberOfProjections_
private

the number of projections in the fan beam sinogram

Definition at line 83 of file OfflineLoader.h.

std::string risa::OfflineLoader::path_
private

the input path of raw data

Definition at line 79 of file OfflineLoader.h.

std::size_t risa::OfflineLoader::stopFrame_
private

Definition at line 89 of file OfflineLoader.h.

Timer risa::OfflineLoader::tmr_
private

Definition at line 76 of file OfflineLoader.h.

double risa::OfflineLoader::worstCaseTime_
private

Definition at line 74 of file OfflineLoader.h.


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