512{
514
515 if (start_ctrl_idx >= num_points || end_ctrl_idx >= num_points) {
517 "Invalid segment range [{}, {}] for {} control points",
518 start_ctrl_idx, end_ctrl_idx, num_points);
519 return;
520 }
521
524 for (size_t i = start_ctrl_idx; i <= end_ctrl_idx; ++i) {
526 }
527
529 return;
530 }
531
535
538 }
539
540 for (size_t w = 0; w < windows; ++w) {
543 }
544}
#define MF_ERROR(comp, ctx,...)
size_t vertices_per_window() const
Vertices emitted per four-point window.
void write_curve_segment(const std::vector< LineVertex > &curve_verts, size_t start_idx, LineVertex *dst)
Evaluate one window and write its vertices.
std::vector< LineVertex > m_control_points
Control points, newest first: index 0 is the most recently added.
std::vector< LineVertex > m_vertices
std::vector< LineVertex > m_range_cache
@ NodeProcessing
Node graph processing (Nodes::NodeGraphManager)
@ Nodes
DSP Generator and Filter Nodes, graph pipeline, node management.