ImFusion C++ SDK 4.4.0
ImFusion::SeekableStream< T, StreamType > Class Template Referenceabstract
Inheritance diagram for ImFusion::SeekableStream< T, StreamType >:

Public Member Functions

 SeekableStream (const Seekable< T > &s, const std::string &name="", bool busyMode=false)
 SeekableStream (std::unique_ptr< Seekable< T > > s, const std::string &name="", bool busyMode=false)
const Seekable< T > * source () const
void setSource (const Seekable< T > &source)
 Set the seekable source of the stream.
bool openImpl () override
bool startImpl () override
bool stopImpl () override
 Stop stream After stopping the stream updateListenersStopped must be called.
bool closeImpl () override
 Close stream.
bool supportsPausing () const override
bool pauseImpl () override
 Pause stream (not required to be supported).
bool resumeImpl () override
 Resume stream from pause.
bool reset () override
std::optional< Stream::WorkContinuationdoWork () override
void setFps (double fps)
 Set the frame rate at which the seekable elements are displayed.
double getFps () const
 Get the frame rate at which the seekable elements are displayed. Returns the mean frame rate for seekables with timestamps.
void setUseFps (bool in)
 Set the value of m_useFps. if m_useFps is true then the streams plays at the requested frame rate.
bool getUseFps () const
 Get whether the stream plays the elements of its seekable at a given frame rate or at the timestamps of the seekable.
double sizeInSeconds () const
std::size_t getLostFrames () const

Protected Attributes

double m_firstTimestamp = 0
std::optional< std::chrono::time_point< std::chrono::system_clock > > m_timeAtStart
int m_indexAtStart = -1
std::unique_ptr< Seekable< T > > m_ownedSource = nullptr
const Seekable< T > * m_source = nullptr
double m_fps = 30.0
bool m_busyMode = true
bool m_useFps = false
 Reduces the chance of dropping frames at the cost of higher CPU usage.
std::size_t m_lostFrames = 0

The documentation for this class was generated from the following file:
  • ImFusion/Stream/SeekableStream.h
Search Tab / S to search, Esc to close