STIR  6.2.0
Classes | Functions
stir::detail Namespace Reference

Namespace for the implementation details of the STIR library. More...

Classes

struct  is_1d
 a class used to signify it's a 1D array More...
 
struct  is_not_1d
 a class used to signify it's not a 1D array More...
 
class  ParallelprojHelper
 Helper class for Parallelproj's projectors. More...
 
struct  test_if_1d
 a templated class used to check if it's a 1D array or not This class only exists to allow a work-around for older compilers (such as VC 6.0) that do not implement partial ordering of function templates or partial template specialisation. More...
 
struct  test_if_1d< 1 >
 1D specialisation of a templated class used to check if it's a 1D array or not More...
 

Functions

template<class Value >
void linear_regression_compute_fit_from_S (Value &constant, Value &scale, Value &chi_square, Value &variance_of_constant, Value &variance_of_scale, Value &covariance_of_constant_with_scale, const double S, const double Sx, const double Sy, const double Syy, const double Stt, const double Sty, const std::size_t data_size, const bool use_estimated_variance)
 
template void linear_regression_compute_fit_from_S (float &constant, float &scale, float &chi_square, float &variance_of_constant, float &variance_of_scale, float &covariance_of_constant_with_scale, const double S, const double Sx, const double Sy, const double Syy, const double Stt, const double Sty, const std::size_t data_size, const bool use_estimated_variance)
 
template void linear_regression_compute_fit_from_S (double &constant, double &scale, double &chi_square, double &variance_of_constant, double &variance_of_scale, double &covariance_of_constant_with_scale, const double S, const double Sx, const double Sy, const double Syy, const double Stt, const double Sty, const std::size_t data_size, const bool use_estimated_variance)
 
template<int num_dimensions>
void copy_data_from_buffer (const Array< 1, float > &buffer, Array< num_dimensions, float > &array, std::streamoff offset)
 
template<int num_dimensions>
void copy_data_to_buffer (Array< 1, float > &buffer, const Array< num_dimensions, float > &array, std::streamoff offset)
 
template<int num_dimensions, typename T >
BasicCoordinate< num_dimensions, int > get_min_indices_help (is_not_1d, const Array< num_dimensions, T > &a)
 
template<typename T >
BasicCoordinate< 1, int > get_min_indices_help (is_1d, const Array< 1, T > &a)
 
template<int num_dimensions2, typename T >
bool next_help (is_1d, BasicCoordinate< 1, int > &index, const Array< num_dimensions2, T > &a)
 
template<typename T , int num_dimensions, int num_dimensions2>
bool next_help (is_not_1d, BasicCoordinate< num_dimensions, int > &index, const Array< num_dimensions2, T > &a)
 
template<class coordT >
bool coordinate_less_than_help (is_1d, const BasicCoordinate< 1, coordT > &c1, const BasicCoordinate< 1, coordT > &c2)
 
template<class coordT >
bool coordinate_less_than_help (is_not_1d, const BasicCoordinate< 2, coordT > &c1, const BasicCoordinate< 2, coordT > &c2)
 
template<class coordT >
bool coordinate_less_than_help (is_not_1d, const BasicCoordinate< 3, coordT > &c1, const BasicCoordinate< 3, coordT > &c2)
 
template<int num_dimensions, class coordT >
bool coordinate_less_than_help (is_not_1d, const BasicCoordinate< num_dimensions, coordT > &c1, const BasicCoordinate< num_dimensions, coordT > &c2)
 
template<int num_dimensions, class IStreamT , class elemT >
Succeeded read_data_help (is_not_1d, IStreamT &s, Array< num_dimensions, elemT > &data, const ByteOrder byte_order)
 
template<class IStreamT , class elemT >
Succeeded read_data_help (is_1d, IStreamT &s, Array< 1, elemT > &data, const ByteOrder byte_order)
 
template<int num_dimensions, class elemT >
Succeeded read_data_1d (std::istream &s, Array< num_dimensions, elemT > &data, const ByteOrder byte_order)
 This is an internal function called by read_data(). It does the actual reading to std::istream. More...
 
template<int num_dimensions, class elemT >
Succeeded read_data_1d (FILE *&, Array< num_dimensions, elemT > &data, const ByteOrder byte_order)
 
template<int num_dimensions, class OStreamT , class elemT , class OutputType , class ScaleT >
Succeeded write_data_with_fixed_scale_factor_help (is_not_1d, OStreamT &s, const Array< num_dimensions, elemT > &data, NumericInfo< OutputType > output_type, const ScaleT scale_factor, const ByteOrder byte_order, const bool can_corrupt_data)
 
template<class OStreamT , class elemT , class OutputType , class ScaleT >
Succeeded write_data_with_fixed_scale_factor_help (is_1d, OStreamT &s, const Array< 1, elemT > &data, NumericInfo< OutputType >, const ScaleT scale_factor, const ByteOrder byte_order, const bool can_corrupt_data)
 
template<int num_dimensions, class elemT >
Succeeded write_data_1d (std::ostream &s, const Array< num_dimensions, elemT > &data, const ByteOrder byte_order, const bool can_corrupt_data)
 This is an internal function called by write_data(). It does the actual writing to std::ostream. More...
 
template<int num_dimensions, class elemT >
Succeeded write_data_1d (FILE *&fptr_ref, const Array< num_dimensions, elemT > &data, const ByteOrder byte_order, const bool can_corrupt_data)
 This is an internal function called by write_data(). It does the actual writing to FILE* using stdio functions. More...
 
template<class DataIter , class CoordinatesIter , class WeightsIter >
void linear_regression_compute_S (double &S, double &Sx, double &Sy, double &Syy, double &Stt, double &Sty, const DataIter data_begin, const DataIter data_end, const CoordinatesIter coords_begin, const WeightsIter weights_begin)
 
template<class elemT , class vecT >
void matrix_multiply_help (vecT &retval, const Array< 2, elemT > &m, const vecT &vec)
 
std::vector< ViewSegmentNumbersfind_basic_vs_nums_in_subset (const ProjDataInfo &proj_data_info, const DataSymmetriesForViewSegmentNumbers &symmetries, const int min_segment_num, const int max_segment_num, const int subset_num, const int num_subsets)
 a helper function to find which view/segments are in a subsetThis function is used by projectors and distributable_computation etc to construct a list of view/segments that are in a subset, and which are "basic" w.r.t the symmetries.
 

Detailed Description

Namespace for the implementation details of the STIR library.

You should never have to call one of these routines.