MayaFlux 0.3.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
Extract.hpp File Reference

Discrete sequence extraction primitives for MayaFlux::Kinesis. More...

+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  MayaFlux
 Main namespace for the Maya Flux audio engine.
 
namespace  MayaFlux::Kinesis
 
namespace  MayaFlux::Kinesis::Discrete
 

Functions

bool MayaFlux::Kinesis::Discrete::validate_window_parameters (uint32_t window_size, uint32_t hop_size, size_t data_size) noexcept
 Validate window/hop parameters for windowed processing.
 
std::vector< std::pair< size_t, size_t > > MayaFlux::Kinesis::Discrete::merge_intervals (const std::vector< std::pair< size_t, size_t > > &intervals)
 Merge overlapping or adjacent half-open intervals.
 
std::vector< double > MayaFlux::Kinesis::Discrete::slice_intervals (std::span< const double > data, const std::vector< std::pair< size_t, size_t > > &intervals)
 Copy data from a set of half-open intervals into a flat vector.
 
std::vector< std::pair< size_t, size_t > > MayaFlux::Kinesis::Discrete::regions_around_positions (const std::vector< size_t > &positions, size_t half_region, size_t data_size)
 Build [start, end) intervals centred on a set of positions.
 
std::vector< std::pair< size_t, size_t > > MayaFlux::Kinesis::Discrete::intervals_from_window_starts (const std::vector< size_t > &window_starts, uint32_t window_size, size_t data_size)
 Build [start, end) intervals from window start indices.
 
std::vector< double > MayaFlux::Kinesis::Discrete::overlapping_windows (std::span< const double > data, uint32_t window_size, double overlap)
 Extract overlapping windows as a flat concatenated vector.
 
std::vector< double > MayaFlux::Kinesis::Discrete::windowed_by_indices (std::span< const double > data, const std::vector< size_t > &window_starts, uint32_t window_size)
 Extract windows at specific starting indices as a flat concatenated vector.
 

Detailed Description

Discrete sequence extraction primitives for MayaFlux::Kinesis.

Pure numerical functions operating on contiguous double-precision spans. No MayaFlux type dependencies. Domain-agnostic — the same primitives serve audio, visual, control, and any other sampled sequence.

Analysis answers "which windows qualify?" Extract answers "give me the data." Callers loop over channels; no multichannel wrappers are provided.

Definition in file Extract.hpp.