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

Unified configuration for all HID input types. More...

#include <HIDNode.hpp>

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

Public Member Functions

HIDConfig with_deadzone (double dz) const
 
HIDConfig with_range (double min_val, double max_val) const
 

Static Public Member Functions

static HIDConfig axis (size_t offset, size_t bytes=1, bool signed_val=false)
 
static HIDConfig button (size_t offset, uint8_t mask=0xFF, bool invert_val=false)
 
template<typename F >
static HIDConfig custom (F &&parser)
 

Public Attributes

HIDParseMode mode { HIDParseMode::AXIS }
 
size_t byte_offset { 0 }
 
size_t byte_size { 1 }
 1 or 2 bytes (for AXIS)
 
uint8_t bit_mask { 0xFF }
 Bit mask (for BUTTON)
 
bool is_signed { false }
 
double min_raw { 0.0 }
 
double max_raw { 255.0 }
 
double deadzone { 0.05 }
 
bool invert { false }
 
std::function< double(std::span< const uint8_t >)> custom_parser
 
- Public Attributes inherited from MayaFlux::Nodes::Input::InputConfig
SmoothingMode smoothing { SmoothingMode::EXPONENTIAL }
 
double smoothing_factor { 0.1 }
 0-1, higher = faster response
 
double slew_rate { 1.0 }
 Max change per sample (SLEW mode)
 
double default_value { 0.0 }
 Initial output value.
 
size_t history_size { 8 }
 Input history buffer size.
 

Detailed Description

Unified configuration for all HID input types.

Definition at line 21 of file HIDNode.hpp.


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