function is_ieee_big ;+ ; NAME: ; IS_IEEE_BIG ; PURPOSE: ; Determine if the current machine is use IEEE, big-endian numbers. ; (This implies that byteorder conversions are no-ops). ; CALLING SEQUENCE: ; flag = is_ieee_big() ; INPUT PARAMETERS: ; None ; RETURNS: ; 1 if the machine appears to be IEEE-compliant, 0 if not. ; COMMON BLOCKS: ; None. ; SIDE EFFECTS: ; None ; RESTRICTIONS: ; PROCEDURE: ; A sample int, long, float and double are converted using ; byteorder and compared with the original. If there is no ; change, the machine is assumed to be IEEE compliant and ; big-endian. ; MODIFICATION HISTORY: ; Written 15-April-1996 by T. McGlynn for use in MRDFITS. ;- itest = 512 ltest = 102580L ftest = 1.23e10 dtest = 1.23d10 it2 = itest lt2 = ltest ft2 = ftest dt2 = dtest byteorder, it2, /htons byteorder, lt2, /htonl byteorder, ft2, /ftoxdr byteorder, dt2, /dtoxdr if itest eq it2 and ltest eq lt2 and ftest eq ft2 and dtest eq dt2 then begin return, 1 endif else begin return, 0 endelse end