csound-expression-5.4.0: library to make electronic music
Safe HaskellNone
LanguageHaskell2010

Csound.Air.Seg

Synopsis

Documentation

data Seg a Source #

A segment of the signal. The signal segment is a limited span of signal in time. The time can be measured in seconds or in events! The time span which is measured in events is the first occurence of the event in the event stream.

There are handy functions for scheduling the signal segments. we can delay the segment or loop over it or limit it with tme interval or play a sequence of segments. The main feature of the segments is the ability to schedule the signals with event streams (like button clicks or midi-events).

Instances

Instances details
Functor Seg Source # 
Instance details

Defined in Csound.Air.Seg

Methods

fmap :: (a -> b) -> Seg a -> Seg b #

(<$) :: a -> Seg b -> Seg a #

SigSpace a => SigSpace (Seg a) Source # 
Instance details

Defined in Csound.Air.Seg

Methods

mapSig :: (Sig -> Sig) -> Seg a -> Seg a #

Sigs a => Melody (Seg a) Source # 
Instance details

Defined in Csound.Air.Seg

Methods

mel :: [Seg a] -> Seg a #

(+:+) :: Seg a -> Seg a -> Seg a #

Sigs a => Harmony (Seg a) Source # 
Instance details

Defined in Csound.Air.Seg

Methods

har :: [Seg a] -> Seg a #

(=:=) :: Seg a -> Seg a -> Seg a #

Sigs a => Compose (Seg a) Source # 
Instance details

Defined in Csound.Air.Seg

Sigs a => Delay (Seg a) Source # 
Instance details

Defined in Csound.Air.Seg

Methods

del :: DurOf (Seg a) -> Seg a -> Seg a #

(Sigs a, Num a) => Rest (Seg a) Source # 
Instance details

Defined in Csound.Air.Seg

Methods

rest :: DurOf (Seg a) -> Seg a #

Sigs a => Limit (Seg a) Source # 
Instance details

Defined in Csound.Air.Seg

Methods

lim :: DurOf (Seg a) -> Seg a -> Seg a #

Sigs a => Loop (Seg a) Source # 
Instance details

Defined in Csound.Air.Seg

Methods

loop :: Seg a -> Seg a #

type DurOf (Seg a) Source # 
Instance details

Defined in Csound.Air.Seg

type DurOf (Seg a) = Tick

toSeg :: a -> Seg a Source #

Converts signals to segments. The segment is not limited in length.

runSeg :: Sigs a => Seg a -> a Source #

Converts segments to signals.

constLim :: Sig -> Seg a -> Seg a Source #

Limits the length of the segment with constant length in seconds.

constDel :: Num a => Sig -> Seg a -> Seg a Source #

Delays a segment by a given time interval in seconds.

constRest :: Num a => Sig -> Seg a Source #

A pause. Plays nothing for the given time interval in seconds.

limSnd :: Sigs a => Tick -> a -> a Source #

Limits a signal with an event stream and retriggers it after stop.