|
TPCCLIB
|
Functions for reading ECAT 7.x format. More...
#include "libtpcimgio.h"Go to the source code of this file.
Functions | |
| int | ecat7ReadMainheader (FILE *fp, ECAT7_mainheader *h) |
| int | ecat7ReadImageheader (FILE *fp, int blk, ECAT7_imageheader *h) |
| int | ecat7ReadAttenheader (FILE *fp, int blk, ECAT7_attenheader *h) |
| int | ecat7ReadPolmapheader (FILE *fp, int blk, ECAT7_polmapheader *h) |
| int | ecat7ReadNormheader (FILE *fp, int blk, ECAT7_normheader *h) |
| int | ecat7ReadScanheader (FILE *fp, int blk, ECAT7_scanheader *h) |
| int | ecat7Read2DScanheader (FILE *fp, int blk, ECAT7_2Dscanheader *h) |
| int | ecat7Read2DNormheader (FILE *fp, int blk, ECAT7_2Dnormheader *h) |
| int | ecat7ReadMatrixdata (FILE *fp, int start_block, int block_nr, char *data, int dtype) |
| int | ecat7ReadImageMatrix (FILE *fp, int first_block, int last_block, ECAT7_imageheader *h, float **fdata) |
| int | ecat7Read2DScanMatrix (FILE *fp, int first_block, int last_block, ECAT7_2Dscanheader *h, float **fdata) |
| int | ecat7ReadScanMatrix (FILE *fp, int first_block, int last_block, ECAT7_scanheader *h, float **fdata) |
| int | ecat7ReadPolarmapMatrix (FILE *fp, int first_block, int last_block, ECAT7_polmapheader *h, float **fdata) |
| float | ecat7rFloat (void *bufi, int isvax, int islittle) |
| int | ecat7rInt (void *bufi, int isvax, int islittle) |
| int | ecat7pxlbytes (short int data_type) |
Functions for reading ECAT 7.x format.
Definition in file ecat7r.c.
| int ecat7pxlbytes | ( | short int | data_type | ) |
Returns the nr of bytes required for storage of one pixel of specified data_type
| data_type | defined value for data type |
Definition at line 1274 of file ecat7r.c.
Referenced by ecat7ReadScanMatrix(), ecat7Write2DScanMatrix(), ecat7WriteImageMatrix(), ecat7WritePolarmapMatrix(), and ecat7WriteScanMatrix().
| int ecat7Read2DNormheader | ( | FILE * | fp, |
| int | blk, | ||
| ECAT7_2Dnormheader * | h ) |
Read ECAT 7.x 2D normalization header
| fp | input file pointer |
| blk | block number [1..number of blocks] |
| h | Ecat7 normalization header |
Definition at line 725 of file ecat7r.c.
Referenced by ecat7PrintSubheader(), ecat7ReadSubheaderToIFT(), and ecat7WriteSubheaderFromIFT().
| int ecat7Read2DScanheader | ( | FILE * | fp, |
| int | blk, | ||
| ECAT7_2Dscanheader * | h ) |
Read ECAT 7.x 2D scan header
| fp | input file pointer |
| blk | block number [1..number of blocks] |
| h | Ecat7 2D scan header |
Definition at line 631 of file ecat7r.c.
Referenced by ecat7PrintSubheader(), ecat7Read2DScanMatrix(), ecat7ReadSubheaderToIFT(), ecat7WriteSubheaderFromIFT(), imgReadEcat7(), and imgReadEcat7Header().
| int ecat7Read2DScanMatrix | ( | FILE * | fp, |
| int | first_block, | ||
| int | last_block, | ||
| ECAT7_2Dscanheader * | h, | ||
| float ** | fdata ) |
Read ECAT7 2D sinogram matrix header and data Memory for fdata[] is allocated here, remember to free memory after usage. Note: data is not calibrated with factor in main header. Note: data is not multiplied with deadtime_correction_factor.
| fp | ECAT file pointer |
| first_block | Subheader record number |
| last_block | Last data block number |
| h | Ptr to subheader data which is filled |
| fdata | Ptr to the address of the matrix data |
Definition at line 959 of file ecat7r.c.
Referenced by imgReadEcat7(), and imgReadEcat7Frame().
| int ecat7ReadAttenheader | ( | FILE * | fp, |
| int | blk, | ||
| ECAT7_attenheader * | h ) |
Read ECAT 7.x attenuation header
| fp | input file pointer |
| blk | block number [1..number of blocks] |
| h | Ecat7 attenuation header |
Definition at line 311 of file ecat7r.c.
Referenced by ecat7PrintSubheader(), ecat7ReadSubheaderToIFT(), and ecat7WriteSubheaderFromIFT().
| int ecat7ReadImageheader | ( | FILE * | fp, |
| int | blk, | ||
| ECAT7_imageheader * | h ) |
Read ECAT 7.x image header
| fp | input file pointer |
| blk | block number [1..number of blocks] |
| h | Ecat7 image header |
Definition at line 162 of file ecat7r.c.
Referenced by ecat7GetNums(), ecat7PrintSubheader(), ecat7ReadImageMatrix(), ecat7ReadSubheaderToIFT(), ecat7WriteSubheaderFromIFT(), imgReadEcat7(), and imgReadEcat7Header().
| int ecat7ReadImageMatrix | ( | FILE * | fp, |
| int | first_block, | ||
| int | last_block, | ||
| ECAT7_imageheader * | h, | ||
| float ** | fdata ) |
Read ECAT7 image matrix header and data. If only header is to be read, set last_block=first_block. Note: data is not calibrated with factor in main header.
| fp | ECAT file pointer |
| first_block | Subheader record number |
| last_block | Last data block number |
| h | Ptr to subheader data which is filled |
| fdata | Ptr to the address of the matrix data |
Definition at line 858 of file ecat7r.c.
Referenced by imgReadEcat7(), and imgReadEcat7Frame().
| int ecat7ReadMainheader | ( | FILE * | fp, |
| ECAT7_mainheader * | h ) |
Read ECAT 7.x main header
| fp | input file pointer |
| h | Ecat7 main header |
Definition at line 15 of file ecat7r.c.
Referenced by ecat7ReadHeaders(), ecat7WriteHeaders(), ecatFixMatrixlist(), imgRead(), imgReadEcat7(), imgReadEcat7Frame(), imgReadEcat7Header(), and imgWriteEcat7Frame().
| int ecat7ReadMatrixdata | ( | FILE * | fp, |
| int | start_block, | ||
| int | block_nr, | ||
| char * | data, | ||
| int | dtype ) |
Read ECAT7 matrix data and convert byte order if necessary Remember to allocate memory for full blocks! There are differences here when compared to ecat63.c
| fp | input file pointer |
| start_block | starting block index |
| block_nr | number of blocks to be read |
| data | target buffer |
| dtype | data type of target buffer |
Definition at line 791 of file ecat7r.c.
Referenced by ecat7Read2DScanMatrix(), ecat7ReadImageMatrix(), ecat7ReadPolarmapMatrix(), and ecat7ReadScanMatrix().
| int ecat7ReadNormheader | ( | FILE * | fp, |
| int | blk, | ||
| ECAT7_normheader * | h ) |
Read ECAT 7.x 3D normalization header
| fp | input file pointer |
| blk | block number [1..number of blocks] |
| h | Ecat7 normalization header |
Definition at line 472 of file ecat7r.c.
Referenced by ecat7PrintSubheader(), ecat7ReadSubheaderToIFT(), and ecat7WriteSubheaderFromIFT().
| int ecat7ReadPolarmapMatrix | ( | FILE * | fp, |
| int | first_block, | ||
| int | last_block, | ||
| ECAT7_polmapheader * | h, | ||
| float ** | fdata ) |
Read ECAT7 polar map matrix header and data. If only header is to be read, set last_block=first_block. Note: data is not calibrated with factor in main header.
| fp | ECAT file pointer |
| first_block | Subheader record number |
| last_block | Last data block number |
| h | Ptr to subheader data which is filled |
| fdata | Ptr to the address of the matrix data |
Definition at line 1154 of file ecat7r.c.
Referenced by imgReadEcat7(), and imgReadEcat7Frame().
| int ecat7ReadPolmapheader | ( | FILE * | fp, |
| int | blk, | ||
| ECAT7_polmapheader * | h ) |
Read ECAT 7.x polar map header
| fp | input file pointer |
| blk | block number [1..number of blocks] |
| h | Ecat7 polar map header |
Definition at line 397 of file ecat7r.c.
Referenced by ecat7PrintSubheader(), ecat7ReadPolarmapMatrix(), ecat7ReadSubheaderToIFT(), ecat7WriteSubheaderFromIFT(), imgReadEcat7(), and imgReadEcat7Header().
| int ecat7ReadScanheader | ( | FILE * | fp, |
| int | blk, | ||
| ECAT7_scanheader * | h ) |
Read ECAT 7.x 3D scan header (512 bytes)
| fp | input file pointer |
| blk | block number [1..number of blocks] |
| h | Ecat7 scan header |
Definition at line 536 of file ecat7r.c.
Referenced by ecat7GetNums(), ecat7PrintSubheader(), ecat7ReadScanMatrix(), ecat7ReadSubheaderToIFT(), ecat7WriteSubheaderFromIFT(), imgReadEcat7(), and imgReadEcat7Header().
| int ecat7ReadScanMatrix | ( | FILE * | fp, |
| int | first_block, | ||
| int | last_block, | ||
| ECAT7_scanheader * | h, | ||
| float ** | fdata ) |
Read ECAT7 3D sinogram matrix header and data. Memory for fdata[] is allocated here, remember to free memory after usage. Note: data is converted to floats with scale_factor in the scan matrix header. Note: data is not calibrated with ecat_calibration_factor in main header. Note: data is not multiplied with deadtime_correction_factor.
| fp | ECAT file pointer |
| first_block | Subheader record number |
| last_block | Last data block number |
| h | Ptr to subheader data which is filled |
| fdata | Ptr to the address of the matrix data |
Definition at line 1055 of file ecat7r.c.
Referenced by imgReadEcat7(), and imgReadEcat7Frame().
| float ecat7rFloat | ( | void * | bufi, |
| int | isvax, | ||
| int | islittle ) |
Read ECAT7 floats
| bufi | pointer to 32-bit data block |
| isvax | != 0 for VAX format |
| islittle | != 0 for little endian conversion |
Definition at line 1233 of file ecat7r.c.
Referenced by ecat7ReadMatrixdata().
| int ecat7rInt | ( | void * | bufi, |
| int | isvax, | ||
| int | islittle ) |
Reading and writing ECAT7 32-bit ints 32-bit int format is same in VAX and i386
| bufi | pointer to one 32-bit data block |
| isvax | ignored |
| islittle | != 0 for little endian conversion |
Definition at line 1256 of file ecat7r.c.
Referenced by ecat7ReadMatrixdata().