STIR 6.5.0
stir::InterfilePDFSHeader Class Reference

a class for Interfile keywords (and parsing) specific to projection data (i.e. ProjDataFromStream) More...

#include "stir/IO/InterfileHeader.h"

Inheritance diagram for stir::InterfilePDFSHeader:

Public Attributes

std::vector< int > segment_sequence
std::vector< int > min_ring_difference
std::vector< int > max_ring_difference
std::vector< int > num_rings_per_segment
std::vector< int > timing_poss_sequence
std::vector< std::string > applied_corrections
int num_timing_poss
int num_segments
int num_views
int num_bins
ProjDataFromStream::StorageOrder storage_order
shared_ptr< ProjDataInfo > data_info_sptr
Public Attributes inherited from stir::InterfileHeader
ASCIIlist_type type_of_data_values
int type_of_data_index
ASCIIlist_type PET_data_type_values
int PET_data_type_index
ASCIIlist_type process_status_values
int process_status_index
std::string data_file_name
DateTimeStrings study_date_time
NumericType type_of_numbers
 This will be determined from number_format_index and bytes_per_pixel.
ByteOrder file_byte_order
 This will be determined from byte_order_index, or just keep its default value;.
int num_dimensions
int num_energy_windows
std::vector< std::string > matrix_labels
std::vector< std::vector< int > > matrix_size
std::vector< float > pixel_sizes
std::vector< std::vector< double > > image_scaling_factors
std::vector< unsigned long > data_offset_each_dataset
std::vector< float > lower_en_window_thresholds
 lower_en_window_thresholds
std::vector< float > upper_en_window_thresholds
 upper_en_window_thresholds
Public Attributes inherited from stir::MinimalInterfileHeader
std::string version_of_keys
std::string siemens_mi_version

Protected Member Functions

bool post_processing () override
 Returns false if OK, true if not.
Protected Member Functions inherited from stir::InterfileHeader
void set_version_specific_keys () override
 Overload with specifics for STIR3.0 for backwards compatibility.
virtual void read_matrix_info ()
virtual void read_num_energy_windows ()
void read_frames_info ()
virtual int get_num_datasets () const
 Get the number of datasets.
Protected Member Functions inherited from stir::KeyParser
virtual std::string standardise_keyword (const std::string &keyword) const
 convert 'rough' keyword into a standardised form
virtual std::string get_keyword (const std::string &) const
 gets a keyword from a string
void add_key (const std::string &keyword, KeyArgument::type t, KeywordProcessor function, void *variable=0, const ASCIIlist_type *const list=0)
 add a keyword to the list, together with its call_back function
void add_key (const std::string &keyword, KeyArgument::type t, KeywordProcessor function, void *variable, const int vectorised_key_level, const ASCIIlist_type *const list=0)
 add a keyword to the list, together with its call_back function
void add_key (const std::string &keyword, KeyArgument::type t, void *variable, const ASCIIlist_type *const list=0)
 version that defaults 'function' to set_variable
void add_key (const std::string &keyword, KeyArgument::type t, void *variable, const int vectorised_key_level, const ASCIIlist_type *const list=0)
 version that defaults 'function' to set_variable

Additional Inherited Members

Public Member Functions inherited from stir::MinimalInterfileHeader
shared_ptr< const ExamInfo > get_exam_info_sptr () const
 Get a shared pointer to the exam information.
const ExamInfo & get_exam_info () const
 Get the exam information.
Public Member Functions inherited from stir::KeyParser
bool parse (std::istream &f, const bool write_warnings=true)
 parse() returns false if there is some error, true otherwise
bool parse (const char *const filename, const bool write_warnings=true)
 parse() returns false if there is some error, true otherwise
bool parse (const std::string &, const bool write_warnings=true)
void add_key (const std::string &keyword, float *variable_ptr)
 add a keyword. When parsing, parse its value as a float and put it in *variable_ptr
void add_vectorised_key (const std::string &keyword, std::vector< float > *variable_ptr)
 add a vectorised keyword. When parsing, parse its value as a float and put it in (*variable_ptr)[current_index]
void add_key (const std::string &keyword, double *variable_ptr)
 add a keyword. When parsing, parse its value as a double and put it in *variable_ptr
void add_vectorised_key (const std::string &keyword, std::vector< double > *variable_ptr)
 add a vectorised keyword. When parsing, parse its value as a double and put it in (*variable_ptr)[current_index]
void add_vectorised_key (const std::string &keyword, std::vector< std::vector< double > > *variable_ptr)
 add a vectorised keyword. When parsing, parse its value as a list of doubles and put it in (*variable_ptr)[current_index]
void add_key (const std::string &keyword, int *variable_ptr)
 add a keyword. When parsing, parse its value as a int and put it in *variable_ptr
void add_key (const std::string &keyword, std::vector< int > *variable_ptr)
 add a keyword. When parsing, parse its value as a int and put it in *variable_ptr
void add_vectorised_key (const std::string &keyword, std::vector< int > *variable_ptr)
 add a vectorised keyword. When parsing, parse its value as a int and put it in (*variable_ptr)[current_index]
void add_vectorised_key (const std::string &keyword, std::vector< std::vector< int > > *variable_ptr)
 add a vectorised keyword. When parsing, parse its value as a list of ints and put it in (*variable_ptr)[current_index]
void add_key (const std::string &keyword, long int *variable_ptr)
 add a keyword. When parsing, parse its value as a int and put it in *variable_ptr
void add_key (const std::string &keyword, unsigned int *variable_ptr)
 add a keyword. When parsing, parse its value as a int and put it in *variable_ptr
void add_vectorised_key (const std::string &keyword, std::vector< unsigned int > *variable)
 add a vectorised keyword. When parsing, parse its value as an unsigned int and put it in (*variable_ptr)[current_index]
void add_key (const std::string &keyword, unsigned long *variable_ptr)
 add a keyword. When parsing, parse its value as an unsigned long and put it in *variable_ptr
void add_vectorised_key (const std::string &keyword, std::vector< unsigned long > *variable_ptr)
 add a vectorised keyword. When parsing, parse its value as an unsigned long and put it in (*variable_ptr)[current_index]
void add_key (const std::string &keyword, bool *variable_ptr)
 add a keyword. When parsing, parse its value as a int and put the bool value in *variable_ptr
void add_key (const std::string &keyword, std::vector< double > *variable_ptr)
 add a keyword. When parsing, parse its value as a list of doubles and put its value in *variable_ptr
void add_key (const std::string &keyword, std::vector< std::string > *variable_ptr)
 add a keyword. When parsing, parse its value as a list of comma-separated strings and put its value in *variable_ptr
void add_key (const std::string &keyword, Array< 2, float > *variable_ptr)
 add a keyword. When parsing, parse its value as a 2d array of floats and put its value in *variable_ptr
void add_key (const std::string &keyword, Array< 3, float > *variable_ptr)
 add a keyword. When parsing, parse its value as a 3d array of floats and put its value in *variable_ptr
void add_key (const std::string &keyword, BasicCoordinate< 3, float > *variable_ptr)
 add a keyword. When parsing, parse its value as a 3d BasicCoordinate of floats and put its value in *variable_ptr
void add_key (const std::string &keyword, BasicCoordinate< 3, Array< 3, float > > *variable_ptr)
 add a keyword. When parsing, parse its value as a 3d BasicCoordinate of a 3d array of floats and put its value in *variable_ptr
void add_key (const std::string &keyword, std::string *variable_ptr)
void add_vectorised_key (const std::string &keyword, std::vector< std::string > *variable_ptr)
 add a vectorised keyword. When parsing, parse its value as a string and put it in (*variable_ptr)[current_index]
void add_key (const std::string &keyword, int *variable_ptr, const ASCIIlist_type *const list_of_values)
 add a keyword. When parsing, its string value is checked against a list of strings. The corresponding index is stored in variable_ptr.
void ignore_key (const std::string &keyword)
 Add keyword this is just ignored by the parser.
void add_start_key (const std::string &keyword)
 add keyword that has to occur before all others
void add_stop_key (const std::string &keyword)
 add a keyword that when encountered, will stop the parsing
template<typename ParsingClass>
void add_parsing_key (const std::string &keyword, ParsingClass **parsed_object_ptr_ptr)
 add keyword corresponding to an object that will parse the next keys itself
template<typename ParsingClass>
void add_parsing_key (const std::string &keyword, shared_ptr< ParsingClass > *parsed_object_ptr_ptr)
 add keyword corresponding to an object that will parse the next keys itself
bool remove_key (const std::string &keyword)
 Removes a key from the kep map.
void add_alias_key (const std::string &keyword, const std::string &alias, bool deprecated_key=true)
 Add an alias for keyword.
void print_keywords_to_stream (std::ostream &) const
 Prints all keywords (in random order) to the stream.
virtual std::string parameter_info () const
 Returns a string with keywords and their values.
virtual void ask_parameters ()
 Ask interactively for values for all keywords.
int find_in_ASCIIlist (const std::string &, const ASCIIlist_type &list_of_values)
 returns the index of a string in 'list_of_values', -1 if not found
void start_parsing ()
 callback function to start parsing, has to be set by first keyword
void stop_parsing ()
 to stop parsing
void do_nothing ()
 callback function for keys which do not do anything
void set_variable ()
 callback function that sets the variable to the value given as the value of the keyword
void set_parsing_object ()
 callback function that sets the variable by calling the parser (as stored by add_parsing_key()), with argument the value of the keyword
void set_shared_parsing_object ()
 callback function that sets the shared_ptr variable by calling the parser (as stored by add_parsing_key()), with argument the value of the keyword
Static Public Attributes inherited from stir::MinimalInterfileHeader
static const double double_value_not_set = -12345.60789
 A value that can be used to signify that a variable has not been set during parsing.
Protected Types inherited from stir::KeyParser
typedef void(KeyParser::*) KeywordProcessor()
Protected Attributes inherited from stir::InterfileHeader
int num_time_frames
std::vector< double > image_relative_start_times
std::vector< double > image_durations
int bytes_per_pixel
std::string isotope_name
std::vector< std::string > radionuclide_name
std::vector< float > radionuclide_half_life
std::vector< float > radionuclide_branching_ratio
float calibration_factor
unsigned long data_offset
float bed_position_horizontal
float bed_position_vertical
Protected Attributes inherited from stir::MinimalInterfileHeader
shared_ptr< ExamInfo > exam_info_sptr

Detailed Description

a class for Interfile keywords (and parsing) specific to projection data (i.e. ProjDataFromStream)

Member Function Documentation

◆ post_processing()


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