1 #ifndef _MRI_PROCESS_SIEMENS_H_ 2 #define _MRI_PROCESS_SIEMENS_H_ 3 4 /* typedefs and functions common to libmri and Dimon */ 5 6 typedef struct { 7 int good ; /* data in here is good? */ 8 int have_data[3] ; /* do we have slices 0 and 1 in * 9 * each dimension to determine z-spacing? * 10 * added 25 Feb 2003 KRH */ 11 int mos_ix, mos_nx, mos_ny; /* mosaic properties */ 12 int mosaic_num ; /* how many slices in 1 'image' */ 13 float slice_xyz[NMOMAX][3] ; /* Sag, Cor, Tra coordinates */ 14 int ImageNumbSag, ImageNumbTra, ImageNumbCor; /* reverse the slices */ 15 } Siemens_extra_info ; 16 17 int process_siemens_mosaic( 18 Siemens_extra_info * Sinfo, char ** Sstr, char ** epos, 19 char * fname, int assume, int nx, int ny, int nz); 20 21 int get_siemens_extra_info(char *str, Siemens_extra_info *mi, char ** epos) ; 22 23 24 int read_mosaic_data(FILE *fp, MRI_IMAGE *im, MRI_IMARR *imar, 25 int *flip_slices, Siemens_extra_info *mi, int datum, int bpp, int kor, 26 int swap, float dx, float dy, float dz, float dt); 27 28 int flip_slices_mosaic (Siemens_extra_info *mi, int kor); 29 int apply_z_orient(Siemens_extra_info * Sinfo, char * orients, int * kor, 30 float * zoff); 31 32 33 #endif /* ifndef _MRI_PROCESS_SIEMENS_H_ */ 34