Banuba SDK
Loading...
Searching...
No Matches
realtime_processor_mode.hpp
Go to the documentation of this file.
1/// \file
2/// \addtogroup EffectPlayer
3/// @{
4///
5// AUTOGENERATED FILE - DO NOT MODIFY!
6// This file was generated by Djinni from effect_player.djinni
7
8#pragma once
9
10#include <functional>
11
12namespace bnb { namespace interfaces {
13
14enum class realtime_processor_mode : int {
15 /** Synchronous mode. Frame drop not allowed, `pop` will block on processing. */
16 sync,
17 /**
18 * Synchronous mode when effect loaded. Frame drop not allowed.
19 * During effect loading `push` will forward frames to `pop`, `pop` will return SKIP.
20 * When effect loaded, `pop` will block on processing.
21 */
23 /**
24 * Asynchronous mode. Frame drop is allowed. `push` and `pop` do not block on processing.
25 * `push` can drop frames, if processor busy,
26 * `pop` can return EMPTY, if no processed frame data for now.
27 */
28 async,
29 /**
30 * Asynchronous mode. Frame drop is allowed. `push` and `pop` do not block on processing.
31 * During effect loading `push` will forward frames to `pop`, `pop` will return SKIP.
32 * When effect loaded, `push` can drop frames, if processor busy,
33 * `pop` can return EMPTY, if no processed frame data for now.
34 */
36};
37
38} } // namespace bnb::interfaces
39
40namespace std {
41
42template <>
44 size_t operator()(::bnb::interfaces::realtime_processor_mode type) const {
45 return std::hash<int>()(static_cast<int>(type));
46 }
47};
48
49} // namespace std
50/// @}
51
@ sync_when_effect_loaded
Synchronous mode when effect loaded.
@ async_when_effect_loaded
Asynchronous mode.