#include <stdio.h>#include <string.h>#include <math.h>#include <stdlib.h>#include <time.h>#include <unistd.h>#include "swap.h"#include "substitutions.h"#include "include/analyze.h"
Go to the source code of this file.
Functions | |
| int | anaExists (const char *dbname) |
| int | anaReadHeader (char *filename, ANALYZE_DSR *h) |
| int | anaWriteHeader (char *filename, ANALYZE_DSR *h) |
| int | anaPrintHeader (ANALYZE_DSR *h, FILE *fp) |
| int | anaReadImagedata (FILE *fp, ANALYZE_DSR *h, int frame, float *data) |
| int | anaFlipping () |
| int | anaRemove (const char *dbname) |
| void | anaRemoveFNameExtension (char *fname) |
| int | anaDatabaseExists (const char *dbname, char *hdrfile, char *imgfile, char *siffile) |
| int | anaMakeSIFName (const char *dbname, char *siffile) |
| int anaDatabaseExists | ( | const char * | dbname, |
| char * | hdrfile, | ||
| char * | imgfile, | ||
| char * | siffile | ||
| ) |
Check if Analyze database files exist (*.hdr, *.img, and optionally *.sif).
| dbname | analyze database name that is tested. String may contain standard extensions .hdr, .img or .sif. |
| hdrfile | pointer to an allocated string, where existing header filename is written. If not found, then set to "". NULL can be entered, if not needed. |
| imgfile | pointer to an allocated string, where existing image filename is written. If not found, then set to "". NULL can be entered, if not needed. |
| siffile | pointer to an allocated string, where existing sif filename is written. If not found, then set to "". NULL can be entered, if not needed. |
Definition at line 619 of file analyze.c.
References ANALYZE_TEST, anaMakeSIFName(), and anaRemoveFNameExtension().
Referenced by anaRemove(), imgReadAnalyzeFrame(), imgReadAnalyzeHeader(), imgReadHeader(), and imgWriteAnalyzeFrame().

| int anaExists | ( | const char * | dbname | ) |
Check if Analyze files exist.
| dbname | basename of Analyze7.5 file. |
Definition at line 75 of file analyze.c.
Referenced by imgRead(), and imgReadAnalyze().
| int anaFlipping | ( | ) |
Check whether Analyze image is flipped in z-direction when it is read from/written to file (x,y-flipping is done always)
Definition at line 545 of file analyze.c.
References ANALYZE_FLIP_DEFAULT, and ANALYZE_TEST.
Referenced by imgReadAnalyze(), imgReadAnalyzeFrame(), imgWriteAnalyze(), and imgWriteAnalyzeFrame().
| int anaMakeSIFName | ( | const char * | dbname, |
| char * | siffile | ||
| ) |
Make SIF filename from Analyze 7.5 database name.
| dbname | analyze 7.5 database name (including possible path but not extension |
| siffile | pointer to allocated space for SIF filename |
Definition at line 667 of file analyze.c.
Referenced by anaDatabaseExists().
| int anaPrintHeader | ( | ANALYZE_DSR * | h, |
| FILE * | fp | ||
| ) |
Print the contents of Analyze header to specified file pointer.
| h | analyze header stucture |
| fp | file pointer |
Definition at line 307 of file analyze.c.
References ANALYZE_HEADER_HISTORY::aux_file, ANALYZE_HEADER_IMGDIM::bitpix, ANALYZE_HEADER_IMGDIM::cal_max, ANALYZE_HEADER_IMGDIM::cal_min, ANALYZE_HEADER_IMGDIM::compressed, ANALYZE_HEADER_KEY::data_type, ANALYZE_HEADER_IMGDIM::datatype, ANALYZE_HEADER_KEY::db_name, ANALYZE_HEADER_HISTORY::descrip, ANALYZE_HEADER_IMGDIM::dim, ANALYZE_HEADER_IMGDIM::dim_un0, ANALYZE_DSR::dime, ANALYZE_HEADER_HISTORY::exp_date, ANALYZE_HEADER_HISTORY::exp_time, ANALYZE_HEADER_KEY::extents, ANALYZE_HEADER_HISTORY::field_skip, ANALYZE_HEADER_IMGDIM::funused1, ANALYZE_HEADER_IMGDIM::funused2, ANALYZE_HEADER_IMGDIM::funused3, ANALYZE_HEADER_HISTORY::generated, ANALYZE_HEADER_IMGDIM::glmax, ANALYZE_HEADER_IMGDIM::glmin, ANALYZE_DSR::hist, ANALYZE_HEADER_HISTORY::hist_un0, ANALYZE_DSR::hk, ANALYZE_HEADER_KEY::hkey_un0, ANALYZE_DSR::little, ANALYZE_HEADER_HISTORY::omax, ANALYZE_HEADER_HISTORY::omin, ANALYZE_HEADER_HISTORY::orient, ANALYZE_HEADER_HISTORY::originator, ANALYZE_HEADER_HISTORY::patient_id, ANALYZE_HEADER_IMGDIM::pixdim, ANALYZE_HEADER_KEY::regular, ANALYZE_HEADER_HISTORY::scannum, ANALYZE_HEADER_KEY::session_error, ANALYZE_HEADER_KEY::sizeof_hdr, ANALYZE_HEADER_HISTORY::smax, ANALYZE_HEADER_HISTORY::smin, ANALYZE_HEADER_HISTORY::start_field, ANALYZE_HEADER_IMGDIM::unused10, ANALYZE_HEADER_IMGDIM::unused11, ANALYZE_HEADER_IMGDIM::unused12, ANALYZE_HEADER_IMGDIM::unused13, ANALYZE_HEADER_IMGDIM::unused14, ANALYZE_HEADER_IMGDIM::unused8, ANALYZE_HEADER_IMGDIM::unused9, ANALYZE_HEADER_IMGDIM::verified, ANALYZE_HEADER_HISTORY::views, ANALYZE_HEADER_HISTORY::vols_added, and ANALYZE_HEADER_IMGDIM::vox_offset.
Referenced by imgReadAnalyze().
| int anaReadHeader | ( | char * | filename, |
| ANALYZE_DSR * | h | ||
| ) |
Read analyze header contents.
| filename | name of file to read (including path and extension) |
| h | Pointer to previously allocated header structure |
Definition at line 102 of file analyze.c.
References ANALYZE_HEADER_HISTORY_SIZE, ANALYZE_HEADER_IMGDIM_SIZE, ANALYZE_HEADER_KEY_SIZE, ANALYZE_TEST, ANALYZE_HEADER_HISTORY::aux_file, ANALYZE_HEADER_IMGDIM::bitpix, ANALYZE_HEADER_IMGDIM::cal_max, ANALYZE_HEADER_IMGDIM::cal_min, ANALYZE_HEADER_IMGDIM::compressed, ANALYZE_HEADER_KEY::data_type, ANALYZE_HEADER_IMGDIM::datatype, ANALYZE_HEADER_KEY::db_name, ANALYZE_HEADER_HISTORY::descrip, ANALYZE_HEADER_IMGDIM::dim, ANALYZE_HEADER_IMGDIM::dim_un0, ANALYZE_DSR::dime, ANALYZE_HEADER_HISTORY::exp_date, ANALYZE_HEADER_HISTORY::exp_time, ANALYZE_HEADER_KEY::extents, ANALYZE_HEADER_HISTORY::field_skip, ANALYZE_HEADER_IMGDIM::funused1, ANALYZE_HEADER_IMGDIM::funused2, ANALYZE_HEADER_IMGDIM::funused3, ANALYZE_HEADER_HISTORY::generated, ANALYZE_HEADER_IMGDIM::glmax, ANALYZE_HEADER_IMGDIM::glmin, ANALYZE_DSR::hist, ANALYZE_HEADER_HISTORY::hist_un0, ANALYZE_DSR::hk, ANALYZE_HEADER_KEY::hkey_un0, ANALYZE_DSR::little, ANALYZE_HEADER_HISTORY::omax, ANALYZE_HEADER_HISTORY::omin, ANALYZE_HEADER_HISTORY::orient, ANALYZE_HEADER_HISTORY::originator, ANALYZE_HEADER_HISTORY::patient_id, ANALYZE_HEADER_IMGDIM::pixdim, ANALYZE_HEADER_KEY::regular, ANALYZE_HEADER_HISTORY::scannum, ANALYZE_HEADER_KEY::session_error, ANALYZE_HEADER_KEY::sizeof_hdr, ANALYZE_HEADER_HISTORY::smax, ANALYZE_HEADER_HISTORY::smin, ANALYZE_HEADER_HISTORY::start_field, ANALYZE_HEADER_IMGDIM::unused10, ANALYZE_HEADER_IMGDIM::unused11, ANALYZE_HEADER_IMGDIM::unused12, ANALYZE_HEADER_IMGDIM::unused13, ANALYZE_HEADER_IMGDIM::unused14, ANALYZE_HEADER_IMGDIM::unused8, ANALYZE_HEADER_IMGDIM::unused9, ANALYZE_HEADER_IMGDIM::verified, ANALYZE_HEADER_HISTORY::views, ANALYZE_HEADER_HISTORY::vols_added, and ANALYZE_HEADER_IMGDIM::vox_offset.
Referenced by imgReadAnalyze(), imgReadAnalyzeFrame(), imgReadAnalyzeHeader(), and imgWriteAnalyzeFrame().
| int anaReadImagedata | ( | FILE * | fp, |
| ANALYZE_DSR * | h, | ||
| int | frame, | ||
| float * | data | ||
| ) |
Read Analyze 7.5 image data, convert byte order if necessary, and scale values to floats. Reads only one frame at a time!
| fp | file opened previously in binary mode |
| h | analyze header read previously |
| frame | frame number to read [1..number of frames] |
| data | pointer to image float data allocated previously |
Definition at line 381 of file analyze.c.
References ANALYZE_DT_COMPLEX, ANALYZE_DT_DOUBLE, ANALYZE_DT_FLOAT, ANALYZE_DT_SIGNED_INT, ANALYZE_DT_SIGNED_SHORT, ANALYZE_DT_UNSIGNED_CHAR, ANALYZE_TEST, ANALYZE_HEADER_IMGDIM::bitpix, ANALYZE_HEADER_IMGDIM::datatype, ANALYZE_HEADER_IMGDIM::dim, ANALYZE_DSR::dime, ANALYZE_HEADER_IMGDIM::funused1, ANALYZE_DSR::little, and ANALYZE_HEADER_IMGDIM::vox_offset.
Referenced by imgReadAnalyze(), and imgReadAnalyzeFrame().
| int anaRemove | ( | const char * | dbname | ) |
Remove header and data files belonging to specified Analyze 7.5 database. SIF is not deleted in any case.
Definition at line 576 of file analyze.c.
References anaDatabaseExists(), and ANALYZE_TEST.

| void anaRemoveFNameExtension | ( | char * | fname | ) |
Check if Analyze 7.5 filename was given accidentally with extension. Remove the extension if necessary
| fname | full name of file |
Definition at line 595 of file analyze.c.
Referenced by anaDatabaseExists().
| int anaWriteHeader | ( | char * | filename, |
| ANALYZE_DSR * | h | ||
| ) |
Write analyze header contents. Header field 'little' is used to determine the required byte order.
| filename | name of file to read (including path and extension) |
| h | pointer to Analyze header structure |
Definition at line 209 of file analyze.c.
References ANALYZE_HEADER_HISTORY_SIZE, ANALYZE_HEADER_IMGDIM_SIZE, ANALYZE_HEADER_KEY_SIZE, ANALYZE_TEST, ANALYZE_HEADER_HISTORY::aux_file, ANALYZE_HEADER_IMGDIM::bitpix, ANALYZE_HEADER_IMGDIM::cal_max, ANALYZE_HEADER_IMGDIM::cal_min, ANALYZE_HEADER_IMGDIM::compressed, ANALYZE_HEADER_KEY::data_type, ANALYZE_HEADER_IMGDIM::datatype, ANALYZE_HEADER_KEY::db_name, ANALYZE_HEADER_HISTORY::descrip, ANALYZE_HEADER_IMGDIM::dim, ANALYZE_HEADER_IMGDIM::dim_un0, ANALYZE_DSR::dime, ANALYZE_HEADER_HISTORY::exp_date, ANALYZE_HEADER_HISTORY::exp_time, ANALYZE_HEADER_KEY::extents, ANALYZE_HEADER_HISTORY::field_skip, ANALYZE_HEADER_IMGDIM::funused1, ANALYZE_HEADER_IMGDIM::funused2, ANALYZE_HEADER_IMGDIM::funused3, ANALYZE_HEADER_HISTORY::generated, ANALYZE_HEADER_IMGDIM::glmax, ANALYZE_HEADER_IMGDIM::glmin, ANALYZE_DSR::hist, ANALYZE_HEADER_HISTORY::hist_un0, ANALYZE_DSR::hk, ANALYZE_HEADER_KEY::hkey_un0, ANALYZE_DSR::little, ANALYZE_HEADER_HISTORY::omax, ANALYZE_HEADER_HISTORY::omin, ANALYZE_HEADER_HISTORY::orient, ANALYZE_HEADER_HISTORY::originator, ANALYZE_HEADER_HISTORY::patient_id, ANALYZE_HEADER_IMGDIM::pixdim, ANALYZE_HEADER_KEY::regular, ANALYZE_HEADER_HISTORY::scannum, ANALYZE_HEADER_KEY::session_error, ANALYZE_HEADER_KEY::sizeof_hdr, ANALYZE_HEADER_HISTORY::smax, ANALYZE_HEADER_HISTORY::smin, ANALYZE_HEADER_HISTORY::start_field, ANALYZE_HEADER_IMGDIM::unused10, ANALYZE_HEADER_IMGDIM::unused11, ANALYZE_HEADER_IMGDIM::unused12, ANALYZE_HEADER_IMGDIM::unused13, ANALYZE_HEADER_IMGDIM::unused14, ANALYZE_HEADER_IMGDIM::unused8, ANALYZE_HEADER_IMGDIM::unused9, ANALYZE_HEADER_IMGDIM::verified, ANALYZE_HEADER_HISTORY::views, ANALYZE_HEADER_HISTORY::vols_added, and ANALYZE_HEADER_IMGDIM::vox_offset.
Referenced by imgWriteAnalyze(), and imgWriteAnalyzeFrame().
1.8.11