Fast R and C++ access to NIfTI images
niftiHeader()
function gains an "unused" argument. If TRUE
, the
function's return value includes those legacy ANALYZE-7.5 fields that are
formally unused by the NIfTI-1 standard (or the last few bytes of a NIfTI-2
header). These fields cannot be set, however, as the niftilib
I/O functions
discard them, and the core nifti_image
structure does not represent them.
They also cannot be accessed with the $
operator shorthand. The option is
therefore only useful to inspect file headers created by other software.NiftiImage
class now has constructors taking a NIfTI header structure.NiftiImageData::Iterator
inner class now holds a pointer, not a
reference, to its parent. This doesn't really change the API, but ensures
that iterator objects are mutable, which is formally required by the C++
standard. (Prompted by Timothy Anderson, issue #31.)nmake
-compatible makefile, and this is now tested
as part of package CI. The package also no longer includes symlinks, for
better portability. (Prompted by Timothy Anderson, issue #31.)zlib
is now version 1.3. The included zlib
headers are no
longer exposed to client packages if the system zlib
is used for linkage,
as the two may be incompatible.printf
-style format
strings have been resolved.writeNifti()
and writeAnalyze()
functions gain a "compression"
argument to control the compression level used when writing gzipped images.RNifti.d4vectors
option is TRUE
. This is off by default (following the
previous behaviour) as it's less explicit than an image with a vector intent.niftiHeader()
function will no longer call asNifti()
on an argument
that looks like a path, as this will wastefully read in the pixel data when
only the metadata is needed.MriImage
objects with complex or RGB types has been added.cfloat
and cdouble
are now additionally accepted as datatypes for 32-bit
and 64-bit floating-point complex types, respectively.