At least the following checks and conversions need to be performed in case of reading c.q. converting a NIfTI-1 file correctly.
These conversions are performed automatically when using the *nifti_image_read( char *hname , int read_data ) method as provided by R.W. Cox in the nifti1_io.c code.
1. Check filetype: single file (*.nii) or dual (*.hdr/*.img): use int is_nifti_file( char *hname ) in nifti1_io
1. Convert to world coordinates
2. Compute or extract quaternion
3. Compute or extract slice acquisition and timing parameters
4. Swap bytes in case of incongruent endianness