MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
MayaFlux::Nodes::Input::OSCConfig Struct Reference

Configuration for OSC input node argument extraction. More...

#include <OSCNode.hpp>

+ Inheritance diagram for MayaFlux::Nodes::Input::OSCConfig:
+ Collaboration diagram for MayaFlux::Nodes::Input::OSCConfig:

Public Member Functions

OSCConfigat_index (size_t index)
 
OSCConfigwith_range (double min_val, double max_val)
 

Static Public Member Functions

static OSCConfig arg (size_t index)
 Extract a specific argument by index.
 
template<typename F >
static OSCConfig custom (F &&extractor)
 Use a custom extraction function.
 
static OSCConfig normalized (double min_val, double max_val, size_t index=0)
 Extract and normalize to [0, 1].
 
static OSCConfig value ()
 Extract first float argument (most common case)
 

Public Attributes

size_t argument_index { 0 }
 Which argument to extract (0-based)
 
std::function< double(const Core::InputValue::OSCArg &)> custom_extractor
 
bool normalize { false }
 Map [range_min, range_max] to [0.0, 1.0].
 
double range_max { 1.0 }
 Expected input maximum (for normalization)
 
double range_min { 0.0 }
 Expected input minimum (for normalization)
 
- Public Attributes inherited from MayaFlux::Nodes::Input::InputConfig
double default_value { 0.0 }
 Initial output value.
 
size_t history_size { 8 }
 Input history buffer size.
 
double slew_rate { 1.0 }
 Max change per sample (SLEW mode)
 
SmoothingMode smoothing { SmoothingMode::EXPONENTIAL }
 
double smoothing_factor { 0.1 }
 0-1, higher = faster response
 

Detailed Description

Configuration for OSC input node argument extraction.

Determines which argument from an OSC message to extract as the node's scalar output. Address filtering is handled by InputBinding, not by the node. The node only extracts and interprets arguments from messages that already passed binding resolution.

Definition at line 16 of file OSCNode.hpp.


The documentation for this struct was generated from the following file: