1 #ifndef __stir_listmode_LmToProjData_H__ 2 #define __stir_listmode_LmToProjData_H__ 179 void set_template_proj_data_info_sptr(shared_ptr<const ProjDataInfo>);
180 shared_ptr<ProjDataInfo> get_template_proj_data_info_sptr();
184 virtual void set_input_data(
const shared_ptr<ExamData>&);
187 virtual void set_input_data(
const std::string& filename);
194 void set_output_filename_prefix(
const std::string&);
195 std::string get_output_filename_prefix()
const;
199 void set_output_projdata_sptr(shared_ptr<ProjData>&);
201 void set_store_prompts(
bool);
202 bool get_store_prompts()
const;
203 void set_store_delayeds(
bool);
204 bool get_store_delayeds()
const;
205 void set_num_segments_in_memory(
int);
206 int get_num_segments_in_memory()
const;
207 void set_num_events_to_store(
long int);
208 long int get_num_events_to_store()
const;
220 void process_data()
override;
223 void run_tof_test_function();
233 virtual void start_new_time_frame(
const unsigned int new_frame_num);
236 virtual void process_new_time_event(
const ListTime&);
244 virtual void get_bin_from_event(
Bin& bin,
const ListEvent&)
const;
250 int get_compression_count(
const Bin& bin)
const;
256 void do_post_normalisation(
Bin& bin)
const;
260 void set_defaults()
override;
261 void initialise_keymap()
override;
262 bool post_processing()
override;
267 std::string input_filename;
268 std::string output_filename_prefix;
269 std::string template_proj_data_name;
273 bool do_pre_normalisation;
277 int num_segments_in_memory;
278 int num_timing_poss_in_memory;
279 long int num_events_to_store;
280 int max_segment_num_to_process;
286 shared_ptr<ProjDataInfo> template_proj_data_info_ptr;
shared_ptr< const ProjDataInfo > proj_data_info_cyl_uncompressed_ptr
Internal variable that will be used for pre-normalisation.
Definition: LmToProjData.h:310
bool do_time_frame
variable that will be set according to if we are using time frames or num_events_to_store ...
Definition: LmToProjData.h:315
Class used for storing time frame durations.
Definition: TimeFrameDefinitions.h:38
This class is the abstract base class fir binning listmode data to projection data, i.e. (3d) sinograms.
Definition: LmToProjDataAbstract.h:38
bool interactive
Toggle readable output on stdout or actual projdata.
Definition: LmToProjData.h:284
Declaration of class stir::TimeFrameDefinitions.
This class is used to bin listmode data to projection data, i.e. (3d) sinograms.
Definition: LmToProjData.h:162
Declaration of class stir::ProjDataInfo.
Declaration of class stir::ParsingObject.
shared_ptr< BinNormalisation > post_normalisation_ptr
This will be used for post-normalisation.
Definition: LmToProjData.h:290
int delayed_increment
A variable that will be set to 1,0 or -1, according to store_prompts and store_delayeds.
Definition: LmToProjData.h:317
The base class for reading list mode data.
Definition: ListModeData.h:123
Declaration of class stir::BinNormalisation.
double current_time
stores the time (in secs) recorded in the previous timing event
Definition: LmToProjData.h:303
shared_ptr< BinNormalisation > normalisation_ptr
This will be used for pre-normalisation.
Definition: LmToProjData.h:288
Class for storing and using gamma events from a list mode file.
Definition: ListEvent.h:45
A class for storing coordinates and value of a single projection bin.
Definition: Bin.h:48
shared_ptr< ListModeData > lm_data_ptr
Pointer to the actual data.
Definition: LmToProjData.h:297
bool _already_setup
an internal bool variable to check if the object has been set-up or not
Definition: LmToProjData.h:320
std::string frame_definition_filename
frame definitions
Definition: LmToProjData.h:272
shared_ptr< ProjData > output_proj_data_sptr
This will be used to return the output directly, if set.
Definition: LmToProjData.h:292
Abstract base class for listmode to projection data conversion.
Declaration of class stir::ListModeData.
a class containing an enumeration type that can be used by functions to signal successful operation o...
Definition: Succeeded.h:43
TimeFrameDefinitions frame_defs
Time frames.
Definition: LmToProjData.h:300
A class for storing and using a timing record from a listmode file.
Definition: ListTime.h:46
unsigned int current_frame_num
stores the current frame number
Definition: LmToProjData.h:306