Loading...
Searching...
No Matches

Detailed Description

Scratch space for working out what a loop holds: the values of a key, by pass then position, and where what is held may change. Kept apart so that it allocates nothing.

Classes

struct  ref
 

Public Member Functions

void prepare (const value_loop &loop, uint16_t key, bool own) noexcept
 
int value_at (const value_loop &loop, uint16_t key, int64_t x, int first=-1, int last=-1) const noexcept
 

Static Public Member Functions

static bool in (int pass, int first, int last) noexcept
 

Public Attributes

std::array< ref, max_refs > refs {}
 
int count {}
 
std::array< int64_t, max_refs > cuts {}
 
bool own_mute {true}
 

Static Public Attributes

static constexpr int max_refs = 2 * value_loop::max_events
 

Member Function Documentation

◆ prepare()

void Nodes::Looper::held_scratch::prepare ( const value_loop &  loop,
uint16_t  key,
bool  own 
)
inlinenoexcept

The values of key heard, each as often as its pass repeats. With own_mute false, a muted pass's as well.

◆ value_at()

int Nodes::Looper::held_scratch::value_at ( const value_loop &  loop,
uint16_t  key,
int64_t  x,
int  first = -1,
int  last = -1 
) const
inlinenoexcept

The value of the loop that holds key at x, of the passes from first to last, -1 for all of them: that of the newest pass holding the key there, the last of it at or before x, round its stretch. -1 for none.


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