STIR
6.2.0
|
base class for all rebinning algorithms for 3D PET dataTODO describe what rebinning is and why you need it More...
#include "stir/recon_buildblock/ProjDataRebinning.h"
Public Member Functions | |
~ProjDataRebinning () override | |
virtual destructor | |
virtual std::string | method_info () const =0 |
gives method information | |
virtual Succeeded | rebin ()=0 |
executes the rebinning More... | |
void | set_input_proj_data_sptr (const shared_ptr< ProjData > &) |
set projection data that will be rebinned More... | |
shared_ptr< ProjData > | get_proj_data_sptr () |
virtual Succeeded | set_up () |
operations prior to the rebinning | |
get/set the number of segments to process | |
| |
void | set_max_segment_num_to_process (int ns) |
int | get_max_segment_num_to_process () const |
void | set_output_filename_prefix (const std::string &s) |
std::string | get_output_filename_prefix () const |
Public Member Functions inherited from stir::TimedObject | |
void | reset_timers () |
reset all timers kept by this object | |
void | stop_timers () const |
stop all timers kept by this object More... | |
void | start_timers (bool do_reset=false) const |
start all timers kept by this object More... | |
double | get_CPU_timer_value () const |
get current value of the CPU timer (since first use or last reset) | |
double | get_wall_clock_timer_value () const |
get current value of the wall-clock timer (since first use or last reset) | |
Public Member Functions inherited from stir::RegisteredObjectBase | |
virtual std::string | get_registered_name () const =0 |
Returns the name of the type of the object. More... | |
Public Member Functions inherited from stir::ParsingObject | |
ParsingObject (const ParsingObject &) | |
ParsingObject & | operator= (const ParsingObject &) |
void | ask_parameters () |
virtual std::string | parameter_info () |
bool | parse (std::istream &f) |
bool | parse (const char *const filename) |
Protected Member Functions | |
bool | post_processing () override |
used to check acceptable parameter ranges, etc... | |
void | set_defaults () override |
Set defaults before parsing. | |
void | initialise_keymap () override |
Initialise all keywords. | |
Protected Member Functions inherited from stir::ParsingObject | |
virtual void | set_key_values () |
This will be called before parsing or parameter_info is called. More... | |
Protected Attributes | |
std::string | output_filename_prefix |
file name for output projdata (should be without extension) | |
std::string | input_filename |
file name for input projdata | |
int | max_segment_num_to_process |
the maximum absolute segment number to use in the reconstruction More... | |
shared_ptr< ProjData > | proj_data_sptr |
Protected Attributes inherited from stir::ParsingObject | |
KeyParser | parser |
Additional Inherited Members | |
Static Public Member Functions inherited from stir::RegisteredObject< ProjDataRebinning > | |
static ProjDataRebinning * | read_registered_object (std::istream *in, const std::string ®istered_name) |
Construct a new object (of a type derived from Root, its actual type determined by the registered_name parameter) by parsing the istream. More... | |
static ProjDataRebinning * | ask_type_and_parameters () |
ask the user for the type, and then calls read_registered_object(0, type) More... | |
static void | list_registered_names (std::ostream &stream) |
List all possible registered names to the stream. More... | |
Protected Types inherited from stir::RegisteredObject< ProjDataRebinning > | |
typedef ProjDataRebinning *(* | RootFactory) (std::istream *) |
The type of a root factory is a function, taking an istream* as argument, and returning a Root*. | |
typedef FactoryRegistry< std::string, RootFactory, interfile_less > | RegistryType |
The type of the registry. | |
Static Protected Member Functions inherited from stir::RegisteredObject< ProjDataRebinning > | |
static RegistryType & | registry () |
Static function returning the registry. More... | |
base class for all rebinning algorithms for 3D PET data
TODO describe what rebinning is and why you need it
The utility rebin_projdata provides the user interface to this class. What follows is for developers.
Parameters need to be initialised somehow. This is usually done using the parse() member functions (see ParsingObject). For some parameters, set_some_parameter()
methods are provided.
Normal usage is for example as follows
For convenience, the class is derived from TimedObject. It is the responsibility of the derived class to run these timers though.
|
pure virtual |
executes the rebinning
At the end of the rebinning, the final 2D projection data are saved to file as given in output_filename_prefix.
Implemented in stir::FourierRebinning.
void stir::ProjDataRebinning::set_output_filename_prefix | ( | const std::string & | s | ) |
get/set file name for output projdata (should be without extension)
void stir::ProjDataRebinning::set_input_proj_data_sptr | ( | const shared_ptr< ProjData > & | new_proj_data_sptr | ) |
set projection data that will be rebinned
Usually this will be set via a call to parse()
|
protected |
the maximum absolute segment number to use in the reconstruction
convention: if -1, use get_max_segment_num()