Table of Contents

Class Pat

Namespace
Sigil.Sound
Assembly
Sigil.Sound.Notes.dll

Building patterns from scratch: using static Sigil.Sound.Pat; then Seq(Pure(1), Pure(2)).

public static class Pat

Inheritance

Pat

Inherited Members

Fields

BeatsPerCycle

How many beats one cycle lasts when a pattern becomes a Sigil.Sound.Pattern: one bar of 4/4.

public const double BeatsPerCycle = 4

Field Value

double

MaxEvents

The most events one query may collect before it is stopped as runaway.

public const int MaxEvents = 100000

Field Value

int

Methods

Cat<T>(params Pattern<T>[])

One pattern per cycle, in turn: cycle 0 plays the first, cycle 1 the second, and so on, then around again. Each pattern carries on from where it left off, so Cat(a, b) plays a's cycle 0, b's cycle 0, a's cycle 1, ...

public static Pattern<T> Cat<T>(params Pattern<T>[] patterns)

Parameters

patterns Pattern<T>[]

Returns

Pattern<T>

Type Parameters

T

Pure<T>(T)

One event per cycle, lasting the whole cycle.

public static Pattern<T> Pure<T>(T value)

Parameters

value T

Returns

Pattern<T>

Type Parameters

T

Seq<T>(params Pattern<T>[])

The patterns one after another within every cycle, each taking an equal share of it: Seq(a, b, c) is "a b c".

public static Pattern<T> Seq<T>(params Pattern<T>[] patterns)

Parameters

patterns Pattern<T>[]

Returns

Pattern<T>

Type Parameters

T

Silence<T>()

Nothing, forever.

public static Pattern<T> Silence<T>()

Returns

Pattern<T>

Type Parameters

T

Stack<T>(params Pattern<T>[])

All the patterns at once, layered on top of each other (chords, drums over a bass line).

public static Pattern<T> Stack<T>(params Pattern<T>[] patterns)

Parameters

patterns Pattern<T>[]

Returns

Pattern<T>

Type Parameters

T