STIR  6.2.0
Classes | Namespaces | Functions

Declaration of routines which convert ECAT6 things into our building blocks and vice versa. More...

#include "stir/IO/stir_ecat_common.h"
#include "stir/IO/ecat6_types.h"
#include <string>
#include <stdio.h>
#include "stir/shared_ptr.h"

Go to the source code of this file.

Classes

class  stir::DiscretisedDensity< num_dimensions, elemT >
 This abstract class is the basis for all image representations. More...
 
class  stir::VoxelsOnCartesianGrid< elemT >
 This class is used to represent voxelised densities on a cuboid grid (3D). More...
 
class  stir::Sinogram< elemT >
 A class for 2d projection data. More...
 

Namespaces

 stir
 Namespace for the STIR library (and some/most of its applications)
 
 stir::ecat
 Namespace for the ECAT IO part of the STIR library (and some/most of its applications)
 
 stir::ecat::ecat6
 Namespace for the ECAT6 IO part of the STIR library (and some/most of its applications)
 

Functions

bool stir::ecat::ecat6::is_ECAT6_file (const std::string &filename)
 checks if the file is in ECAT6 formatAs ECAT6 doesn't have a 'magic number' this check is somewhat heuristic. Checks are only on the main header. Current checks are: More...
 
bool stir::ecat::ecat6::is_ECAT6_image_file (const std::string &filename)
 checks if the file is in ECAT6 format and if the file contains images
 
bool stir::ecat::ecat6::is_ECAT6_emission_file (const std::string &filename)
 checks if the file is in ECAT6 format and if the file contains emission sinograms (or blank/transmision)
 
bool stir::ecat::ecat6::is_ECAT6_attenuation_file (const std::string &filename)
 checks if the file is in ECAT6 format and if the file contains attenuation correction factors
 
VoxelsOnCartesianGrid< float > * stir::ecat::ecat6::ECAT6_to_VoxelsOnCartesianGrid (const int frame_num, const int gate_num, const int data_num, const int bed_num, FILE *cti_fptr, const ECAT6_Main_header &mhead)
 
void stir::ecat::ecat6::ECAT6_to_PDFS (const int frame_num, const int gate_num, const int data_num, const int bed_num, int max_ring_diff, bool arccorrected, const std::string &output_file_name, FILE *cti_fptr, const ECAT6_Main_header &mhead)
 
Scanner * stir::ecat::ecat6::find_scanner_from_ECAT6_Main_header (const ECAT6_Main_header &mhead)
 determine scanner type from the ECAT6_Main_header More...
 
Succeeded stir::ecat::ecat6::DiscretisedDensity_to_ECAT6 (DiscretisedDensity< 3, float > const &density, std::string const &cti_name, std::string const &orig_name, const Scanner &scanner, const int frame_num=1, const int gate_num=1, const int data_num=0, const int bed_num=0)
 Create a new ECAT6 image file and write the data in there. More...
 
Succeeded stir::ecat::ecat6::DiscretisedDensity_to_ECAT6 (FILE *fptr, DiscretisedDensity< 3, float > const &density, const ECAT6_Main_header &mhead, const int frame_num=1, const int gate_num=1, const int data_num=0, const int bed_num=0)
 Write an (extra) image to an existing ECAT6 file. More...
 
Succeeded stir::ecat::ecat6::ProjData_to_ECAT6 (ProjData const &proj_data, std::string const &cti_name, std::string const &orig_name, const int frame_num=1, const int gate_num=1, const int data_num=0, const int bed_num=0, const bool write_2D_sinograms=false)
 Create a new ECAT6 sinogram file and write the data in there. More...
 
Succeeded stir::ecat::ecat6::ProjData_to_ECAT6 (FILE *fptr, ProjData const &proj_data, const ECAT6_Main_header &mhead, const int frame_num=1, const int gate_num=1, const int data_num=0, const int bed_num=0, const bool write_2D_sinograms=false)
 Write an (extra) set of sinograms to an existing ECAT6 file. More...
 
void stir::ecat::ecat6::make_ECAT6_Main_header (ECAT6_Main_header &, const Scanner &, const std::string &orig_name, ExamInfo const &exam_info)
 Fill in most of the main header given a Scanner object and orig_name.
 
void stir::ecat::ecat6::make_ECAT6_Main_header (ECAT6_Main_header &mhead, Scanner const &scanner, const std::string &orig_name, DiscretisedDensity< 3, float > const &density)
 Fill in most of the main header given a Scanner object and orig_name and an image. More...
 
void stir::ecat::ecat6::make_ECAT6_Main_header (ECAT6_Main_header &mhead, const std::string &orig_name, ProjDataInfo const &proj_data_info)
 Fill in most of the main header given an orig_name and a proj_data_info. More...
 

Detailed Description

Declaration of routines which convert ECAT6 things into our building blocks and vice versa.

Deprecated:
Author
Kris Thielemans
PARAPET project