Loading...
Searching...
No Matches

Detailed Description

A value take of the value looper, as an automation can play it: one curve of steps for each number of its values. The file format is described with Nodes::Looper::value_export.

Classes

struct  step
 

Public Member Functions

std::vector< Curve::SegmentData > segments (int component, double span=1.) const
 

Static Public Member Functions

static std::optional< ValueTake > parse (const QByteArray &json)
 Nothing when the file is not a value take an automation can play.
 

Public Attributes

int components {}
 
bool lists {}
 Some values are lists: the curves are named by their index.
 
double seconds {}
 
std::array< double, max_components > min {}
 
std::array< double, max_components > max {}
 
std::vector< step > steps
 

Static Public Attributes

static constexpr int max_components = 32
 

Member Function Documentation

◆ segments()

std::vector< Curve::SegmentData > Automation::ValueTake::segments ( int  component,
double  span = 1. 
) const

The curve of component, its values from 0 to 1 between min and max: each value held to the next, the last one from the take's start up to the first when it does not start there. The take spans span of the curve, which holds its last value after it and is cut at 1.

Member Data Documentation

◆ components

int Automation::ValueTake::components {}

Numbers of each value: 1 for numbers, n for vectors of n, the most a list has for lists. A value that has fewer leaves the others where they were; before a number first comes, its first value holds.

◆ seconds

double Automation::ValueTake::seconds {}

Its length in score's time: its quarters, half a second each, so that it keeps to the bars it was played over; its seconds when it does not say its tempo.


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