ODIN
Public Member Functions | List of all members
RecoController Class Reference

#include <controller.h>

Public Member Functions

 RecoController (LDRblock &parblock)
 
bool init (RecoReaderInterface *reader, LDRblock &opts, int argc, char *argv[])
 
bool start ()
 
dvector dim_values (recoDim dim) const
 
TinyVector< float, 3 > reloffset () const
 
STD_string image_proc () const
 
TinyVector< int, 3 > image_size () const
 
TinyVector< float, 3 > kspace_extent () const
 
const Protocolprotocol () const
 
void announce_data (const STD_string &label)
 
void post_data (const STD_string &label, const RecoData &data)
 
bool data_announced (const STD_string &label)
 
bool inquire_data (const RecoStep &caller, const STD_string &label, RecoData &data)
 
const CoordCountMapcreate_count_map (const RecoCoord &mask) const
 
bool create_numof (const RecoCoord &mask, unsigned short numof[n_recoDims], STD_string &printed) const
 
RecoStepcreate_pipeline (const STD_string &rec, const RecoCoord *initial_coord=0, int argc=0, char *argv[]=0) const
 
STD_string stepmanual () const
 

Detailed Description

Class to manage reconstruction process.

Definition at line 51 of file controller.h.

Constructor & Destructor Documentation

◆ RecoController()

RecoController::RecoController ( LDRblock parblock)

Creates uninitialized reconstruction controller. Appends parameters to 'parblock'.

Member Function Documentation

◆ announce_data()

void RecoController::announce_data ( const STD_string &  label)
inline

Announces to blackboard that data with identifier 'label' will become available during pipeline execution.

Definition at line 111 of file controller.h.

◆ create_count_map()

const CoordCountMap* RecoController::create_count_map ( const RecoCoord mask) const

Returns a map where the key are k-space coordinates (except those not in 'mask') and the value of the map is a count of ADC indices with this particular k-space coordinate.

◆ create_numof()

bool RecoController::create_numof ( const RecoCoord mask,
unsigned short  numof[n_recoDims],
STD_string &  printed 
) const

Creates the maximum extent of reco dimension in 'numof' using all coordinates except those not in 'mask'. In addition, returns a printed version of the result in 'printed'.

◆ create_pipeline()

RecoStep* RecoController::create_pipeline ( const STD_string &  rec,
const RecoCoord initial_coord = 0,
int  argc = 0,
char *  argv[] = 0 
) const

Creates a pipeline and returns its 1st functor according to the recipe (pieline layout) given in 'rec'. Checking of input/output dimension match starts with 'initial_coord', if non-zero. Returns zero if the pipeline could not be created because of input/output dimension mismatches.

◆ data_announced()

bool RecoController::data_announced ( const STD_string &  label)
inline

Returns whether data with 'label' will become available during pipeline execution.

Definition at line 121 of file controller.h.

◆ dim_values()

dvector RecoController::dim_values ( recoDim  dim) const

Returns vector of values associated with a certain dimension.

◆ image_proc()

STD_string RecoController::image_proc ( ) const

Extra command-line arguments for processing of final images.

◆ image_size()

TinyVector<int,3> RecoController::image_size ( ) const

Returns the image size, will be used if it cannot be determined from the k-space coordinates (i.e. when gridding).

◆ init()

bool RecoController::init ( RecoReaderInterface reader,
LDRblock opts,
int  argc,
char *  argv[] 
)

Initializes reconstruction process controller to use reco input 'reader' and option block 'opts'. Returns 'true' only if sucessful.

◆ inquire_data()

bool RecoController::inquire_data ( const RecoStep caller,
const STD_string &  label,
RecoData data 
)

Returns 'data' with identifier 'label' for k-space coordinate set in 'data' from blackboard. The requesting step 'caller' is passed for debugging. Waits until data becomes available. Returns 'true' if data is available, otherwise returns 'false' if all data was processed and the requested data was not available.

◆ kspace_extent()

TinyVector<float,3> RecoController::kspace_extent ( ) const

Returns the extent of the k-space in each direction (in rad/mm)

◆ post_data()

void RecoController::post_data ( const STD_string &  label,
const RecoData data 
)
inline

Posts 'data' with identifier 'label' on blackboard, it will be indexed according to the k-space coordinate in 'data'.

Definition at line 116 of file controller.h.

◆ protocol()

const Protocol& RecoController::protocol ( ) const
inline

Returns the scan protocol.

Definition at line 105 of file controller.h.

◆ reloffset()

TinyVector<float,3> RecoController::reloffset ( ) const

Returns the relative spatial offset the image should be shifted after reconstruction. The result contains the offsets in (phase3d,phase,read) direction.

◆ start()

bool RecoController::start ( )

Starts reconstruction process using 'firststep' as the start of the reconstruction pipeline. Returns 'true' only if sucessful.

◆ stepmanual()

STD_string RecoController::stepmanual ( ) const

Returns documention 'code' of steps for doxygen.


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