Doxygen Source Code Documentation
mri_image.h File Reference
Go to the source code of this file.
| Data Structures | |
| struct | complex | 
| union | MRI_DATA | 
| struct | MRI_IMAGE | 
| struct | rgba | 
| struct | rgbyte | 
| Defines | |
| #define | LOAD_rgba(s, rr, gg, bb, aa) ((s).r=(rr),(s).g=(gg),(s).b=(bb),(s).a=(bb)) | 
| #define | UNLOAD_rgba(s, rr, gg, bb, aa) ((rr)=(s).r,(gg)=(s).g,(bb)=(s).b,(aa)=(s).a) | 
| #define | MRI_KIND MRI_TYPE ; | 
| #define | MRI_type MRI_TYPE ; | 
| #define | MRI_kind MRI_TYPE ; | 
| #define | MRI_rgbyte MRI_rgb | 
| #define | LAST_MRI_TYPE 7 | 
| #define | MRI_maxbyte 255 | 
| #define | MRI_maxshort 32767 | 
| #define | MRI_maxint 2147483647 | 
| #define | MRI_IS_INT_TYPE(typ) ((typ) < 3) | 
| #define | USE_MRI_DELAY | 
| #define | INPUT_DELAY 1 | 
| #define | BSWAP_DELAY 2 | 
| #define | MRI_COPY_AUX(nn, oo) | 
| #define | MRI_IS_1D(iq) ((iq)->ny == 1) | 
| #define | MRI_IS_2D(iq) ((iq)->ny > 1 && (iq)->nz == 1) | 
| #define | MRI_IS_3D(iq) ((iq)->nz > 1 && (iq)->nt == 1) | 
| #define | MRI_IS_4D(iq) ((iq)->nt > 1 && (iq)->nu == 1) | 
| #define | MRI_DIMENSIONALITY(iq) | 
| #define | MRI_BYTE_PTR(iq) ((iq)->im.byte_data) | 
| #define | MRI_SHORT_PTR(iq) ((iq)->im.short_data) | 
| #define | MRI_INT_PTR(iq) ((iq)->im.int_data) | 
| #define | MRI_FLOAT_PTR(iq) ((iq)->im.float_data) | 
| #define | MRI_DOUBLE_PTR(iq) ((iq)->im.double_data) | 
| #define | MRI_COMPLEX_PTR(iq) ((iq)->im.complex_data) | 
| #define | MRI_RGB_PTR(iq) ((iq)->im.rgb_data) | 
| #define | MRI_RGBA_PTR(iq) ((iq)->im.rgba_data) | 
| #define | MRI_BYTE_2D(iq, ix, jy) MRI_BYTE_PTR(iq)[(ix)+(jy)*(iq)->nx] | 
| #define | MRI_SHORT_2D(iq, ix, jy) MRI_SHORT_PTR(iq)[(ix)+(jy)*(iq)->nx] | 
| #define | MRI_INT_2D(iq, ix, jy) MRI_INT_PTR(iq)[(ix)+(jy)*(iq)->nx] | 
| #define | MRI_FLOAT_2D(iq, ix, jy) MRI_FLOAT_PTR(iq)[(ix)+(jy)*(iq)->nx] | 
| #define | MRI_DOUBLE_2D(iq, ix, jy) MRI_DOUBLE_PTR(iq)[(ix)+(jy)*(iq)->nx] | 
| #define | MRI_COMPLEX_2D(iq, ix, jy) MRI_COMPLEX_PTR(iq)[(ix)+(jy)*(iq)->nx] | 
| Typedefs | |
| typedef unsigned char | byte | 
| typedef enum MRI_TYPE | MRI_TYPE | 
| typedef complex | complex | 
| typedef rgbyte | rgbyte | 
| typedef MRI_DATA | MRI_DATA | 
| typedef MRI_IMAGE | MRI_IMAGE | 
| Enumerations | |
| enum | MRI_TYPE { MRI_byte, MRI_short, MRI_int, MRI_float, MRI_double, MRI_complex, MRI_rgb, MRI_rgba } | 
Define Documentation
| 
 | 
| 
 Definition at line 109 of file mri_image.h. | 
| 
 | 
| 
 Definition at line 108 of file mri_image.h. | 
| 
 | 
| The last MRI_TYPE yet defined. Definition at line 43 of file mri_image.h. | 
| 
 | 
| 
 Definition at line 26 of file mri_image.h. | 
| 
 | 
| 
 Definition at line 225 of file mri_image.h. Referenced by AFNI_set_valabel(). | 
| 
 | 
| 
 | 
| 
 Definition at line 230 of file mri_image.h. Referenced by AFNI_set_valabel(). | 
| 
 | 
| 
 Definition at line 221 of file mri_image.h. Referenced by cx_scramble(), FD_brick_to_mri(), FD_brick_to_series(), ISQ_process_mri(), main(), mri_cat2D(), mri_complex_to_pair(), mri_fft2D(), mri_flippo(), mri_pair_to_complex(), mri_threshold(), mri_to_complex(), mri_to_mri_scl(), mri_transpose_complex(), mri_write_ascii(), mri_zeropad_2D(), and T3D_read_images(). | 
| 
 | 
| 
 | 
| Value: ( ((iq)->ny == 1) ? 1 : ((iq)->nz == 1) ? 2 : \ ((iq)->nt == 1) ? 3 : ((iq)->nu == 1) ? 4 : \ ((iq)->nv == 1) ? 5 : ((iq)->nw == 1) ? 6 : 7 ) Definition at line 211 of file mri_image.h. Referenced by mri_write_7D(), and mri_write_analyze(). | 
| 
 | 
| 
 Definition at line 229 of file mri_image.h. | 
| 
 | 
| 
 Definition at line 220 of file mri_image.h. Referenced by FD_brick_to_mri(), FD_brick_to_series(), mri_cat2D(), mri_flippo(), mri_threshold(), mri_write_ascii(), and mri_zeropad_2D(). | 
| 
 | 
| 
 Definition at line 228 of file mri_image.h. Referenced by AFNI_set_valabel(). | 
| 
 | 
| 
 | 
| 
 Definition at line 227 of file mri_image.h. Referenced by AFNI_set_valabel(). | 
| 
 | 
| 
 Definition at line 218 of file mri_image.h. Referenced by FD_brick_to_mri(), FD_brick_to_series(), main(), mri_cat2D(), mri_flatten(), mri_flippo(), mri_quantize(), mri_threshold(), mri_transpose_int(), mri_warp3D_align_fitim(), mri_warp3d_align_one(), mri_warp3D_align_setup(), mri_write_ascii(), and mri_zeropad_2D(). | 
| 
 | 
| Check if MRI_IMAGE is 1D (ny=1) Definition at line 199 of file mri_image.h. Referenced by custom_filter(). | 
| 
 | 
| Check if MRI_IMAGE is 2D (nz=1) Definition at line 202 of file mri_image.h. Referenced by main(), mri_2dalign_setup(), mri_aff2d_byte(), mri_aff2d_rgb(), mri_affine_bicubic(), mri_align_dfspace(), mri_fft_complex(), mri_filt_fft(), mri_flippo(), mri_nsize(), mri_rota(), mri_rota_bilinear(), mri_rota_shear(), mri_shift2D_bilinear(), mri_sobel(), mri_stat_seq(), mri_to_complex_ext(), mri_write(), and REG_command_line(). | 
| 
 | 
| Check if MRI_IMAGE is 3D (nt=1) Definition at line 205 of file mri_image.h. Referenced by mri_3dalign_setup(), mri_zeropad_3D(), THD_rota3D(), and THD_rota3D_matvec(). | 
| 
 | 
| Check if MRI_IMAGE is 4D (nu=1) Definition at line 208 of file mri_image.h. | 
| 
 | 
| Determine if a MRI_TYPE is an integer type. Definition at line 59 of file mri_image.h. Referenced by EDIT_coerce_autoscale(), EDIT_coerce_autoscale_new(), main(), mri_scalize(), PR_type_scale(), s2v_nodes2volume(), THD_load_minc(), and THD_warp3D(). | 
| 
 | 
| 
 Definition at line 37 of file mri_image.h. | 
| 
 | 
| 
 Definition at line 35 of file mri_image.h. | 
| 
 | 
| Max value of a byte. Definition at line 47 of file mri_image.h. | 
| 
 | 
| Max value of an int. Definition at line 55 of file mri_image.h. | 
| 
 | 
| Max value of a short. Definition at line 51 of file mri_image.h. | 
| 
 | 
| 
 | 
| 
 Definition at line 223 of file mri_image.h. Referenced by FD_brick_to_series(), mri_flippo(), mri_rgba_composite_array(), mri_scale_to_float(), mri_to_float(), and mri_to_rgba(). | 
| 
 | 
| 
 Definition at line 39 of file mri_image.h. | 
| 
 | 
| 
 Definition at line 226 of file mri_image.h. Referenced by AFNI_set_valabel(). | 
| 
 | 
| 
 | 
| 
 Definition at line 36 of file mri_image.h. | 
| 
 | 
| 
 Definition at line 27 of file mri_image.h. | 
| 
 | 
| Mar 1996: Extended to images up to 7D; Not all routines work with images > 2D -- check top of file for "7D SAFE" comments * Definition at line 106 of file mri_image.h. | 
Typedef Documentation
| 
 | 
| The MRI_byte data type. Definition at line 16 of file mri_image.h. | 
| 
 | 
| I suppose that the next C makes this pleonastic. | 
| 
 | 
| A union type to hold all possible MRI_IMAGE types. This was created before I really understood how to use void *. | 
| 
 | 
| Stores one image (1D to 7D). Why 7D, you ask? Well, I originally only had 2D images here. When extending AFNI from 3D to 3D+time and buckets, I thought that I might use 4D images (x,y,z,t) as the basic element. Instead, I decided to use an array of 3D images (in a THD_datablock), but by then I'd extended this typedef to allow (x,y,z,t,u,v,w) dimensioned arrays. I don't think anyplace ever uses more than 3D images, though. | 
| 
 | 
| Integer flags for different image types. Sometimes called the "datum". | 
| 
 | 
| Triple to hold RGB bytes. | 
Enumeration Type Documentation
| 
 | 
| Integer flags for different image types. Sometimes called the "datum". Definition at line 31 of file mri_image.h. 
 00031                       {
00032          MRI_byte , MRI_short  , MRI_int  ,
00033         MRI_float , MRI_double , MRI_complex , MRI_rgb , MRI_rgba } MRI_TYPE ;
 | 
 
                             
                             
                             
                             
                             
                             
                             
                             
                             
                             
                             
                             
 
 
 
 
       
	   
	   
	   
	  