Class PipelineEventDispatcherInterface

Nested Relationships

Nested Types

Inheritance Relationships

Derived Type

Class Documentation

class PipelineEventDispatcherInterface

Subclassed by dai::utility::PipelineEventDispatcher

Public Functions

virtual ~PipelineEventDispatcherInterface()
virtual void startEvent(PipelineEvent::Type type, const std::string &source, std::optional<uint32_t> queueSize = std::nullopt) = 0
virtual void startInputEvent(const std::string &source, std::optional<uint32_t> queueSize = std::nullopt) = 0
virtual void startOutputEvent(const std::string &source) = 0
virtual void startCustomEvent(const std::string &source) = 0
virtual void endEvent(PipelineEvent::Type type, const std::string &source, std::optional<uint32_t> queueSize = std::nullopt) = 0
virtual void endInputEvent(const std::string &source, std::optional<uint32_t> queueSize = std::nullopt) = 0
virtual void endOutputEvent(const std::string &source) = 0
virtual void endCustomEvent(const std::string &source) = 0
virtual void startTrackedEvent(PipelineEvent event, std::optional<std::chrono::time_point<std::chrono::steady_clock>> ts = std::nullopt) = 0
virtual void startTrackedEvent(PipelineEvent::Type type, const std::string &source, int64_t sequenceNum, std::optional<std::chrono::time_point<std::chrono::steady_clock>> ts = std::nullopt) = 0
virtual void endTrackedEvent(PipelineEvent event, std::optional<std::chrono::time_point<std::chrono::steady_clock>> ts = std::nullopt) = 0
virtual void endTrackedEvent(PipelineEvent::Type type, const std::string &source, int64_t sequenceNum, std::optional<std::chrono::time_point<std::chrono::steady_clock>> ts = std::nullopt) = 0
virtual void pingEvent(PipelineEvent::Type type, const std::string &source) = 0
virtual void pingMainLoopEvent() = 0
virtual void pingCustomEvent(const std::string &source) = 0
virtual void pingInputEvent(const std::string &source, PipelineEvent::Status status, std::optional<uint32_t> queueSize = std::nullopt) = 0
virtual BlockPipelineEvent blockEvent(PipelineEvent::Type type, const std::string &source, std::optional<std::chrono::time_point<std::chrono::steady_clock>> ts = std::nullopt, bool startNow = true) = 0
virtual BlockPipelineEvent inputBlockEvent(bool startNow = true) = 0
virtual BlockPipelineEvent outputBlockEvent(bool startNow = true) = 0
virtual BlockPipelineEvent customBlockEvent(const std::string &source, bool startNow = true) = 0

Public Members

bool sendEvents = true
class BlockPipelineEvent

Public Functions

inline void start(std::optional<std::chrono::time_point<std::chrono::steady_clock>> ts = std::nullopt)
inline BlockPipelineEvent(PipelineEventDispatcherInterface &dispatcher, PipelineEvent::Type type, const std::string &source, std::optional<std::chrono::time_point<std::chrono::steady_clock>> ts = std::nullopt, bool startNow = true)
inline void end()
inline void cancel()
inline void setQueueSize(uint32_t qs)
inline void setEndTimestamp(std::chrono::time_point<std::chrono::steady_clock> ts)
inline ~BlockPipelineEvent()