1 #include "mrilib.h" 2 3 /*! Test if 2 images are equal. 4 Returns 1 if they are, 0 if they are not. [30 Jun 2003] */ 5 mri_equal(MRI_IMAGE * aim,MRI_IMAGE * bim)6int mri_equal( MRI_IMAGE *aim , MRI_IMAGE *bim ) 7 { 8 char *aar , *bar ; 9 int nn ; 10 11 ENTRY("mri_equal") ; 12 13 if( aim == bim ) RETURN( 1 ); 14 if( aim == NULL || bim == NULL ) RETURN( 0 ); 15 16 if( aim->nvox != bim->nvox ) RETURN( 0 ); 17 if( aim->kind != bim->kind ) RETURN( 0 ); 18 19 aar = mri_data_pointer(aim) ; if( aar == NULL ) RETURN( 0 ); 20 bar = mri_data_pointer(bim) ; if( bar == NULL ) RETURN( 0 ); 21 22 nn = memcmp( aar , bar , aim->nvox * aim->pixel_size ) ; 23 if( nn != 0 ) nn = 0 ; 24 else nn = 1 ; 25 RETURN( nn); 26 } 27