Loading...
Searching...
No Matches
Nodes::Looper::held_timeline Struct Reference

Detailed Description

What is heard of the held values of a key round a loop: the positions where it changes, in order, and the value of the loop that holds from each one until the next, the last holding past the loop's end into the first. Worked out again from the loop each time what is heard may have changed.

Classes

struct  point
 

Public Member Functions

int at (int64_t x) const noexcept
 
int before (int64_t x) const noexcept
 The point that holds just before x.
 
int previous (int i) const noexcept
 
void update (const value_loop &loop, uint16_t key, held_scratch &scratch, int first=-1, int last=-1, bool own_mute=true, bool force=false) noexcept
 

Public Attributes

std::array< point, max_points > points {}
 
int count {}
 
uint64_t edits {~uint64_t(0)}
 What it was worked out from.
 
int64_t length {-1}
 

Static Public Attributes

static constexpr int max_points = held_scratch::max_refs
 

Member Function Documentation

◆ at()

int Nodes::Looper::held_timeline::at ( int64_t  x) const
inlinenoexcept

The point that holds at x: the last one at or before it, round the loop. -1 when there are none.

◆ update()

void Nodes::Looper::held_timeline::update ( const value_loop &  loop,
uint16_t  key,
held_scratch &  scratch,
int  first = -1,
int  last = -1,
bool  own_mute = true,
bool  force = false 
)
inlinenoexcept

Works out what loop holds of key, of the passes from first to last (-1: all of them), unless nothing changed since. With own_mute false, a muted pass is heard.


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