47 #define MatBLKSIZE 512 49 #ifndef MatFirstDirBlk 50 #define MatFirstDirBlk 2 53 #define ECAT7V_MAGICNR "MATRIX72v" 54 #define ECAT7S_MAGICNR "MATRIX7011" 55 #define ECAT7_SW_VERSION 72 62 #define ECAT7_IEEER4 5 67 #define ECAT7_UNKNOWN 0 68 #define ECAT7_2DSCAN 1 69 #define ECAT7_IMAGE16 2 71 #define ECAT7_2DNORM 4 72 #define ECAT7_POLARMAP 5 73 #define ECAT7_VOLUME8 6 74 #define ECAT7_VOLUME16 7 76 #define ECAT7_PROJ16 9 77 #define ECAT7_IMAGE8 10 78 #define ECAT7_3DSCAN 11 79 #define ECAT7_3DSCAN8 12 80 #define ECAT7_3DNORM 13 81 #define ECAT7_3DSCANFIT 14 84 #define ECAT7_Feet_First_Prone 0 85 #define ECAT7_Head_First_Prone 1 86 #define ECAT7_Feet_First_Supine 2 87 #define ECAT7_Head_First_Supine 3 88 #define ECAT7_Feet_First_Decubitus_Right 4 89 #define ECAT7_Head_First_Decubitus_Right 5 90 #define ECAT7_Feet_First_Decubitus_Left 6 91 #define ECAT7_Head_First_Decubitus_Left 7 92 #define ECAT7_Unknown_Orientation 8 95 #ifndef BACKUP_EXTENSION 96 #define BACKUP_EXTENSION ".bak" 630 char *data,
int dtype);
631 extern float ecat7rFloat(
void *bufi,
int isvax,
int islittle);
632 extern int ecat7rInt(
void *bufi,
int isvax,
int islittle);
649 extern int ecat7_val_to_id(
int frame,
int plane,
int gate,
int data,
int bed);
656 int *plane_nr,
int *frame_nr);
659 short int *num_planes,
short int *num_frames,
short int *num_gates,
660 short int *num_bed_pos);
662 short int do_frames,
short int do_gates,
short int do_beds);
676 int pxl_nr,
int pxl_size);
698 int plane,
int frame, FILE *ofp);
int ecat7ReadMainheader(FILE *fp, ECAT7_mainheader *h)
char * ecat7acquisitiontype(short int acquisition_type)
void ecat7_id_to_val(int matrix_id, ECAT7_Matval *matval)
short int calibration_units_label
float well_counter_corr_factor
int ecat7EditVHeader(ECAT7_imageheader *h, char *field, char *value)
short int compression_code
int ecat7GetMatrixBlockSize(ECAT7_MATRIXLIST *mlist, int *blk_nr)
int ecat7GetNums(ECAT7_MATRIXLIST *ml, ECAT7_mainheader *mh, FILE *fp, short int *num_planes, short int *num_frames, short int *num_gates, short int *num_bed_pos)
int ecat7WriteMatrixdata(FILE *fp, int start_block, char *data, int pxl_nr, int pxl_size)
void ecat7PrintPolmapheader(ECAT7_polmapheader *h, FILE *fp)
int ecat7DeleteLateFrames(ECAT7_MATRIXLIST *ml, int frame_nr)
int ecat7_val_to_id(int frame, int plane, int gate, int data, int bed)
float ecat_calibration_factor
struct ecat7_polmapheader ECAT7_polmapheader
short int patient_orientation
int ecat7PrintSubheader(ECAT7_mainheader mh, FILE *fp, int plane, int frame, FILE *ofp)
void ecat7PrintImageheader(ECAT7_imageheader *h, FILE *fp)
char original_file_name[32]
int ecat7ReadPolarmapMatrix(FILE *fp, int first_block, int last_block, ECAT7_polmapheader *h, float **fdata)
int ecat7pxlbytes(short int data_type)
struct ecat7_scanheader ECAT7_scanheader
int ecat7ReadScanheader(FILE *fp, int blk, ECAT7_scanheader *h)
struct ecat7_imageheader ECAT7_imageheader
int ecat7Write2DScanMatrix(FILE *fp, int matrix_id, ECAT7_2Dscanheader *h, float *fdata)
int ecat7rInt(void *bufi, int isvax, int islittle)
int ecat7ReadMatlist(FILE *fp, ECAT7_MATRIXLIST *ml)
FILE * ecat7Create(const char *fname, ECAT7_mainheader *h)
int ecat7GetPlaneAndFrameNr(ECAT7_MATRIXLIST *mlist, ECAT7_mainheader *h, int *plane_nr, int *frame_nr)
struct ecat7_2Dnormheader ECAT7_2Dnormheader
int ecat7Write2DNormheader(FILE *fp, int blk, ECAT7_2Dnormheader *h)
void ecat7PrintAttenheader(ECAT7_attenheader *h, FILE *fp)
int ecat7EditSHeader(ECAT7_scanheader *h, char *field, char *value)
int ecat7ReadAttenheader(FILE *fp, int blk, ECAT7_attenheader *h)
void ecat7Print2DScanheader(ECAT7_2Dscanheader *h, FILE *fp)
short int angular_compression
void ecat7Print2DNormheader(ECAT7_2Dnormheader *h, FILE *fp)
int ecat7EditMHeader(ECAT7_mainheader *h, char *field, char *value)
void ecat7EmptyMatlist(ECAT7_MATRIXLIST *mlist)
int ecat7ReadNormheader(FILE *fp, int blk, ECAT7_normheader *h)
short int calibration_units
int ecat7Read2DNormheader(FILE *fp, int blk, ECAT7_2Dnormheader *h)
void ecat7InitMatlist(ECAT7_MATRIXLIST *mlist)
int ecat7WriteImageheader(FILE *fp, int blk, ECAT7_imageheader *h)
int ecat7ReadScanMatrix(FILE *fp, int first_block, int last_block, ECAT7_scanheader *h, float **fdata)
int ecat7CheckMatlist(ECAT7_MATRIXLIST *ml)
void ecat7SortMatlistByPlane(ECAT7_MATRIXLIST *ml)
int ecat7WriteScanheader(FILE *fp, int blk, ECAT7_scanheader *h)
int ecat7WriteAttenheader(FILE *fp, int blk, ECAT7_attenheader *h)
float ecat7rFloat(void *bufi, int isvax, int islittle)
int ecat7WriteImageMatrix(FILE *fp, int matrix_id, ECAT7_imageheader *h, float *fdata)
int ecat7Read2DScanheader(FILE *fp, int blk, ECAT7_2Dscanheader *h)
int ecat7_is_scaling_needed(float amax, float *data, int nr)
struct ecat7_mainheader ECAT7_mainheader
void ecat7PrintNormheader(ECAT7_normheader *h, FILE *fp)
void ecat7PrintScanheader(ECAT7_scanheader *h, FILE *fp)
short int acquisition_mode
struct ecat7_2Dscanheader ECAT7_2Dscanheader
int ecat7ReadImageMatrix(FILE *fp, int first_block, int last_block, ECAT7_imageheader *h, float **fdata)
char * ecat7datatype(short int data_type)
int ecat7WriteScanMatrix(FILE *fp, int matrix_id, ECAT7_scanheader *h, float *fdata)
void ecat7PrintMatlist(ECAT7_MATRIXLIST *ml)
int ecat7WritePolmapheader(FILE *fp, int blk, ECAT7_polmapheader *h)
char user_process_code[10]
void ecat7SortMatlistByFrame(ECAT7_MATRIXLIST *ml)
int ecat7WriteNormheader(FILE *fp, int blk, ECAT7_normheader *h)
int ecat7WriteMainheader(FILE *fp, ECAT7_mainheader *h)
short int transm_source_type
int ecat7EnterMatrix(FILE *fp, int matrix_id, int block_nr)
char * ecat7filetype(short int file_type)
short int acquisition_type
int ecat7ReadPolmapheader(FILE *fp, int blk, ECAT7_polmapheader *h)
int ecat7Write2DScanheader(FILE *fp, int blk, ECAT7_2Dscanheader *h)
int ecat7GatherMatlist(ECAT7_MATRIXLIST *ml, short int do_planes, short int do_frames, short int do_gates, short int do_beds)
int ecat7ReadMatrixdata(FILE *fp, int start_block, int block_nr, char *data, int dtype)
char study_description[32]
int ecat7Read2DScanMatrix(FILE *fp, int first_block, int last_block, ECAT7_2Dscanheader *h, float **fdata)
short int axial_samp_mode
int ecat7WritePolarmapMatrix(FILE *fp, int matrix_id, ECAT7_polmapheader *h, float *fdata)
char radiopharmaceutical[32]
int ecat7ReadImageheader(FILE *fp, int blk, ECAT7_imageheader *h)
void ecat7PrintMainheader(ECAT7_mainheader *h, FILE *fp)
struct ecat7_normheader ECAT7_normheader
struct ecat7_attenheader ECAT7_attenheader