Loading...
Searching...
No Matches
fslio.h File Reference

Data structures for using the fslio API. Written by Mark Jenkinson, FMRIB. More...

`#include <stdio.h>`
`#include <nifti1_io.h>`
`#include <znzlib.h>`
`#include "dbh.h"`
Include dependency graph for fslio.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes

struct | FSLIO
| High level data structure for open datasets in the fslio API. More...

## Macros

#define | FSL_TYPE_ANALYZE 0
#define | FSL_TYPE_NIFTI 1
#define | FSL_TYPE_NIFTI_PAIR 2
#define | FSL_TYPE_MINC 4
#define | FSL_TYPE_ANALYZE_GZ 100
#define | FSL_TYPE_NIFTI_GZ 101
#define | FSL_TYPE_NIFTI_PAIR_GZ 102
#define | FSL_TYPE_MINC_GZ 104
#define | FSL_RADIOLOGICAL -1
#define | FSL_NEUROLOGICAL 1

## Typedefs

typedef unsigned char | THIS_UINT8
typedef char | THIS_INT8
typedef unsigned short | THIS_UINT16
typedef short | THIS_INT16
typedef unsigned int | THIS_UINT32
typedef int | THIS_INT32
typedef unsigned long | THIS_UINT64
typedef long | THIS_INT64
typedef float | THIS_FLOAT32
typedef double | THIS_FLOAT64

## Functions

FSLIO * | FslOpen (const char *filename, const char *opts)
| Opens a file for either reading or writing.
FSLIO * | FslXOpen (const char *filename, const char *opts, int filetype)
| Opens a file for either reading or writing.
int | FslSeekVolume (FSLIO *fslio, size_t vols)
int | FslClose (FSLIO *fslio)
| Write header and image data if this dataset was open for writing. Close the dataset header and data files.
void * | FslReadAllVolumes (FSLIO *fslio, char *filename)
| Read the header and all data into the FSLIO structure.
void | FslWriteAllVolumes (FSLIO *fslio, const void *buffer)
| Writes all data from buffer (using size info from fslio) to file.
size_t | FslReadVolumes (FSLIO *fslio, void *buffer, size_t nvols)
| Read the first nvols Volumes from a 4D dataset.
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.
int | FslFileExists (const char *filename)
char * | FslMakeBaseName (const char *fname)
int | FslCheckForMultipleFileNames (const char *filename)
int | FslGetEnvOutputType (void)
void | FslSetIgnoreMFQ (int flag)
int | FslGetIgnoreMFQ (void)
void | FslSetOverrideOutputType (int type)
int | FslGetOverrideOutputType (void)
int | FslGetFileType (const FSLIO *fslio)
void | FslSetFileType (FSLIO *fslio, int filetype)
int | FslIsSingleFileType (int filetype)
int | FslIsCompressedFileType (int filetype)
int | FslBaseFileType (int filetype)
const char * | FslFileTypeString (int filetype)
| Return a string describing the format of the dataset.
int | FslGetWriteMode (const FSLIO *fslio)
void | FslSetWriteMode (FSLIO *fslio, int mode)
void | AvwSwapHeader (struct dsr *avw)
int | FslReadRawHeader (void *buffer, const char *filename)
FSLIO * | FslInit (void)
| allocate space for the FSLIO struct and set some sensible defaults
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 | FslSetInit (FSLIO *fslio)
void | FslCloneHeader (FSLIO *dest, const FSLIO *src)
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 | 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)
int | FslGetIntensityScaling (FSLIO *fslio, float *slope, float *intercept)
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)
short | FslGetStdXform (FSLIO *fslio, mat44 *stdmat)
void | FslSetStdXform (FSLIO *fslio, short sform_code, mat44 stdmat)
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)
short | FslGetRigidXform (FSLIO *fslio, mat44 *rigidmat)
void | FslSetRigidXform (FSLIO *fslio, short qform_code, mat44 rigidmat)
int | FslGetLeftRightOrder (FSLIO *fslio)
void | FslSetAnalyzeSform (FSLIO *fslio, const short *orig, float dx, float dy, float dz)
void | FslGetAnalyzeOrigin (FSLIO *fslio, short orig[5])
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.
mat33 | mat44_to_mat33 (mat44 x)
FSLIO * | FslReadHeader (char *fname)
| Reads nifti/anz header, no data is read.
double **** | FslGetBufferAsScaledDouble (FSLIO *fslio)
| Return the fslio data buffer of a 1-4D dataset as a 4D array of scaled doubles.
double *** | FslGetVolumeAsScaledDouble (FSLIO *fslio, int vol)
| Return volume #vol (0-based) as a 3D 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 **** | d4matrix (int th, int zh, int yh, int xh)
| 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

## Detailed Description

Data structures for using the fslio API. Written by Mark Jenkinson, FMRIB.