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

◆ Logic() [5/6]

MayaFlux::Nodes::Generator::Logic::Logic ( SequentialFunction  function,
size_t  history_size 
)

Constructs a Logic node for state-based evaluation.

Parameters
functionFunction implementing sequential boolean logic
history_sizeSize of the state history buffer

Creates a Logic node that maintains a history of previous states and evaluates new inputs in the context of this history. This enables implementation of sequential logic circuits, pattern detectors, and finite state machines.

Definition at line 76 of file Logic.cpp.

79 , m_sequential_function(std::move(function))
80 , m_history_size(history_size)
81 , m_input_count(1)
82 , m_threshold(0.5)
83 , m_low_threshold(0.45)
84 , m_high_threshold(0.5)
86 , m_history_ring(history_size, false)
87 , m_history_linear(history_size, false)
90{
91}
SequentialFunction m_sequential_function
Function for sequential mode.
Definition Logic.hpp:570
std::vector< uint8_t > m_history_linear
Linear view of history for easy access.
Definition Logic.hpp:587
size_t m_history_size
Maximum size of the history buffer.
Definition Logic.hpp:574
EdgeType m_edge_type
Type of edge to detect.
Definition Logic.hpp:579
double m_threshold
Threshold for boolean conversion.
Definition Logic.hpp:576
double m_high_threshold
High threshold for hysteresis.
Definition Logic.hpp:578
std::vector< double > m_input_buffer
Definition Logic.hpp:584
LogicOperator m_operator
Current logic operator.
Definition Logic.hpp:567
double m_low_threshold
Low threshold for hysteresis.
Definition Logic.hpp:577
bool m_edge_detected
Whether an edge was detected in the last processing.
Definition Logic.hpp:580
std::vector< uint8_t > m_history_ring
Ring buffer for history storage.
Definition Logic.hpp:586
LogicMode m_mode
Current processing mode.
Definition Logic.hpp:566
size_t m_input_count
Expected number of inputs for multi-input mode.
Definition Logic.hpp:575
std::span< const float > get_gpu_data_buffer() const
Provides access to the GPU data buffer.
Definition Node.cpp:78
@ SEQUENTIAL
State-based evaluation using history of inputs (sequential logic)
@ CUSTOM
User-defined boolean function.