New: Annotation: Class for tracking segmentation edits in the forked version of VC GUI.
New: MemMap: utility functions for memory mapping files. Currently only supported on platforms which provide mmap.
TIFFIO: Add support for loading memory-mapped TIFF files (16-bit, single channel only for now).
Cache/LRUCache: Add optional, user-defined callback function which is called when items are about to be ejected. Useful for cleaning up managed memory like memory mapped files.
LRUCache: Add mutex for thread-safety. Mutex type is templated and must support std::unique_lock.
Volume: Add support for memory mapping slice images. This is enabled by default but requires that caching is also enabled. Attempting to modify a memory mapped TIFF will result in a segfault.
Volume: Improve thread safety.
VolumePkg: Add removeSegmentation() function.
Segmentation: Add Annotation related member functions.
Testing: Add KilledByAnyOfSignal which checks that any of the given signals are triggered.
Merges, reviews, and cleans up
volcart/core
features from spacegaier/volume-cartographer. Changes are as follows:mmap
.std::unique_lock
.removeSegmentation()
function.Annotation
related member functions.KilledByAnyOfSignal
which checks that any of the given signals are triggered.