nifti1_io
Loading...
Searching...
No Matches
fslio.c File Reference

Main collection of FSL i/o routines, written by Mark Jenkinson, FMRIB. More...

#include "fslio.h"
#include "assert.h"
Include dependency graph for fslio.c:

Macros

#define FSLIOERR(x)

Functions

const char * FslFileTypeString (int filetype)
 Return a string describing the format of the dataset.
int FslIsValidFileType (int filetype)
int FslBaseFileType (int filetype)
int FslGetFileType2 (const FSLIO *fslio, int quiet)
int FslGetFileType (const FSLIO *fslio)
void FslSetFileType (FSLIO *fslio, int filetype)
int FslIsSingleFileType (int filetype)
int FslIsCompressedFileType (int filetype)
int FslGetWriteMode (const FSLIO *fslio)
void FslSetWriteMode (FSLIO *fslio, int mode)
int FslGetEnvOutputType (void)
int FslFileType (const char *fname)
int FslGetReadFileType (const FSLIO *fslio)
 return the best estimate of the true file type
int FslFileExists (const char *filename)
char * FslMakeBaseName (const char *fname)
void FslGetHdrImgNames (const char *filename, const FSLIO *fslio, char **hdrname, char **imgname)
FSLIOFslInit (void)
 allocate space for the FSLIO struct and set some sensible defaults
void FslSetInit (FSLIO *fslio)
void FslInit4Write (FSLIO *fslio, const char *filename, int ft)
void FslInitHeader (FSLIO *fslio, short t, size_t x, size_t y, size_t z, size_t v, float vx, float vy, float vz, float tr, size_t dim)
void FslCloneHeader (FSLIO *dest, const FSLIO *src)
int fsl_fileexists (const char *fname)
int FslCheckForMultipleFileNames (const char *filename)
int check_for_multiple_filenames (const char *filename)
FSLIOFslOpen (const char *filename, const char *opts)
 Opens a file for either reading or writing.
FSLIOFslXOpen (const char *filename, const char *opts, int filetype)
 Opens a file for either reading or writing.
void * FslReadAllVolumes (FSLIO *fslio, char *filename)
 Read the header and all data into the FSLIO structure.
size_t FslReadVolumes (FSLIO *fslio, void *buffer, size_t nvols)
 Read the first nvols Volumes from a 4D dataset.
void FslWriteAllVolumes (FSLIO *fslio, const void *buffer)
 Writes all data from buffer (using size info from fslio) to file.
size_t FslWriteVolumes (FSLIO *fslio, const void *buffer, size_t nvols)
 Write the first nvols volumes in buffer to disk.
void FslWriteHeader (FSLIO *fslio)
 Writes nifti/anz header and opens img file ready for writing.
size_t FslReadSliceSeries (FSLIO *fslio, void *buffer, short slice, size_t nvols)
 Read one slice from each of the first nvols volumes in the dataset, ie get an xyt buffer.
size_t FslReadRowSeries (FSLIO *fslio, void *buffer, short row, short slice, size_t nvols)
 Read one row from one slice for first nvols volumes in dataset; ie get an xt buffer.
size_t FslReadTimeSeries (FSLIO *fslio, void *buffer, short xVox, short yVox, short zVox, size_t nvols)
 Read one voxel (xyz location) from first nvols volumes in dataset; ie get a t dim buffer.
int FslSeekVolume (FSLIO *fslio, size_t vols)
size_t FslGetVolSize (FSLIO *fslio)
void FslSetDim (FSLIO *fslio, short x, short y, short z, short v)
void FslGetDim (FSLIO *fslio, short *x, short *y, short *z, short *v)
void FslSetDimensionality (FSLIO *fslio, size_t dim)
void FslGetDimensionality (FSLIO *fslio, size_t *dim)
void FslSetVoxDim (FSLIO *fslio, float x, float y, float z, float tr)
void FslGetVoxDim (FSLIO *fslio, float *x, float *y, float *z, float *tr)
void FslGetCalMinMax (FSLIO *fslio, float *min, float *max)
void FslSetCalMinMax (FSLIO *fslio, float min, float max)
void FslGetAuxFile (FSLIO *fslio, char *aux_file)
void FslSetAuxFile (FSLIO *fslio, const char *aux_file)
void FslSetVoxUnits (FSLIO *fslio, const char *units)
void FslGetVoxUnits (FSLIO *fslio, char *units)
void FslSetTimeUnits (FSLIO *fslio, const char *units)
void FslGetTimeUnits (FSLIO *fslio, char *units)
void FslSetDataType (FSLIO *fslio, short t)
size_t FslGetDataType (FSLIO *fslio, short *t)
void FslGetMMCoord (mat44 stdmat, float voxx, float voxy, float voxz, float *mmx, float *mmy, float *mmz)
void FslGetVoxCoord (mat44 stdmat, float mmx, float mmy, float mmz, float *voxx, float *voxy, float *voxz)
void FslSetStdXform (FSLIO *fslio, short sform_code, mat44 stdmat)
short FslGetStdXform (FSLIO *fslio, mat44 *stdmat)
void FslSetRigidXform (FSLIO *fslio, short qform_code, mat44 rigidmat)
short FslGetRigidXform (FSLIO *fslio, mat44 *rigidmat)
void FslSetIntent (FSLIO *fslio, short intent_code, float p1, float p2, float p3)
short FslGetIntent (FSLIO *fslio, short *intent_code, float *p1, float *p2, float *p3)
void FslSetIntensityScaling (FSLIO *fslio, float slope, float intercept)
int FslGetIntensityScaling (FSLIO *fslio, float *slope, float *intercept)
mat33 mat44_to_mat33 (mat44 x)
int FslGetLeftRightOrder (FSLIO *fslio)
void FslSetAnalyzeSform (FSLIO *fslio, const short *orig, float dx, float dy, float dz)
void FslGetAnalyzeOrigin (FSLIO *fslio, short orig[5])
int FslClose (FSLIO *fslio)
 Write header and image data if this dataset was open for writing. Close the dataset header and data files.
void AvwSwapHeader (struct dsr *avw)
int FslReadRawHeader (void *buffer, const char *filename)
void FslSetOverrideOutputType (int type)
int FslGetOverrideOutputType (void)
void FslSetIgnoreMFQ (int flag)
int FslGetIgnoreMFQ (void)
FSLIOFslReadHeader (char *fname)
 Reads nifti/anz header, no data is read.
double *** FslGetVolumeAsScaledDouble (FSLIO *fslio, int vol)
 Return volume #vol (0-based) as a 3D array of scaled doubles.
double **** FslGetBufferAsScaledDouble (FSLIO *fslio)
 Return the fslio data buffer of a 1-4D dataset as a 4D array of scaled doubles.
int convertBufferToScaledDouble (double *outbuf, void *inbuf, long len, float slope, float inter, int nifti_datatype)
 allocate a 4D buffer, use 1 contiguous buffer for the data
double *** d3matrix (int zh, int yh, int xh)
 allocate a 3D buffer, use 1 contiguous buffer for the data
double **** d4matrix (int th, int zh, int yh, int xh)
 allocate a 4D buffer, use 1 contiguous buffer for the data

Detailed Description

Main collection of FSL i/o routines, written by Mark Jenkinson, FMRIB.

  • updates by Rick Reynolds, SSCC, NIMH

Macro Definition Documentation

◆ FSLIOERR

#define FSLIOERR ( x)
Value:
{ fprintf(stderr,"Error:: %s\n",(x)); fflush(stderr); exit(EXIT_FAILURE); }

Function Documentation

◆ FslGetReadFileType()

int FslGetReadFileType ( const FSLIO * fslio)

return the best estimate of the true file type

This function is used to return the best estimate of the true file type once a simple open has occurred - for now it is used after a nifti open call is made

Parameters
fsliodata structure
Returns
FSL_TYPE filetype code
See also
FSL_TYPE