fast::DicomMultiFrameStreamer class

Stream images from a dicom multi-frame image.

Output ports

Base classes

class RandomAccessStreamer
Abstract class of streamer in which any frame can be accessed at any time through an integer index and playbacked can be paused.

Constructors, destructors, conversion operators

~DicomMultiFrameStreamer()

Public functions

auto create(std::string filename, bool loop, bool useFramerate, int framerate, bool grayscale, bool cropToROI) -> std::shared_ptr<DicomMultiFrameStreamer>
Create instance.
auto getNrOfFrames() -> int override

Private functions

void execute() virtual
void generateStream() override

Function documentation

std::shared_ptr<DicomMultiFrameStreamer> fast::DicomMultiFrameStreamer::create(std::string filename, bool loop, bool useFramerate, int framerate, bool grayscale, bool cropToROI)

Create instance.

Parameters
filename Dicom file to open
loop Whether to loop or not
useFramerate Whether to use framerate from dicom file or not. If this is set to false, images will be streamed as fast as possible
framerate If framerate is > 0, this framerate will be used for streaming the images
grayscale Convert images to grayscale
cropToROI Try to extract ROI from dicom and crop the images to this ROI
Returns instance

void fast::DicomMultiFrameStreamer::generateStream() override private

The function producing the data stream