MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ ExecutionStrategy

enum class MayaFlux::Kriya::ExecutionStrategy : uint8_t
strong

Defines how operations in a pipeline are coordinated and executed.

Enumerator
PHASED 

PHASED: Traditional phased execution (default)

  • All CAPTURE operations complete first (capture phase)
  • Then all processing operations execute (process phase)
  • Best for: accumulation, windowed analysis, batch processing
  • Predictable data availability, clear phase boundaries
STREAMING 

STREAMING: Immediate flow-through execution.

  • Each capture iteration flows immediately through dependent operations
  • Minimal latency, data processed as it arrives
  • Best for: real-time effects, low-latency processing, modify_buffer chains
  • Natural for operations that modify state continuously
PARALLEL 

PARALLEL: Concurrent capture with synchronization.

  • Multiple capture operations can run concurrently
  • Explicit synchronization points coordinate data flow
  • Best for: multi-source capture, independent data streams
REACTIVE 

REACTIVE: Data-driven reactive execution.

  • Operations execute when input data becomes available
  • Dynamic dependency resolution
  • Best for: event-driven workflows, complex dependencies
  • Non-deterministic execution order

Definition at line 41 of file BufferOperation.hpp.

41 : uint8_t {
42 /**
43 * PHASED: Traditional phased execution (default)
44 * - All CAPTURE operations complete first (capture phase)
45 * - Then all processing operations execute (process phase)
46 * - Best for: accumulation, windowed analysis, batch processing
47 * - Predictable data availability, clear phase boundaries
48 */
49 PHASED,
50
51 /**
52 * STREAMING: Immediate flow-through execution
53 * - Each capture iteration flows immediately through dependent operations
54 * - Minimal latency, data processed as it arrives
55 * - Best for: real-time effects, low-latency processing, modify_buffer chains
56 * - Natural for operations that modify state continuously
57 */
58 STREAMING,
59
60 /**
61 * PARALLEL: Concurrent capture with synchronization
62 * - Multiple capture operations can run concurrently
63 * - Explicit synchronization points coordinate data flow
64 * - Best for: multi-source capture, independent data streams
65 */
66 PARALLEL,
67
68 /**
69 * REACTIVE: Data-driven reactive execution
70 * - Operations execute when input data becomes available
71 * - Dynamic dependency resolution
72 * - Best for: event-driven workflows, complex dependencies
73 * - Non-deterministic execution order
74 */
76 };
@ PHASED
PHASED: Traditional phased execution (default)
@ REACTIVE
REACTIVE: Data-driven reactive execution.