genish.js
Version:
109 lines (98 loc) • 3.56 kB
JavaScript
const library = {
export( destination ) {
if( destination === window ) {
destination.ssd = library.history // history is window object property, so use ssd as alias
destination.input = library.in // in is a keyword in javascript
destination.ternary = library.switch // switch is a keyword in javascript
delete library.history
delete library.in
delete library.switch
}
Object.assign( destination, library )
Object.defineProperty( library, 'samplerate', {
get() { return library.gen.samplerate },
set(v) {}
})
library.in = destination.input
library.history = destination.ssd
library.switch = destination.ternary
destination.clip = library.clamp
},
gen: require( './gen.js' ),
abs: require( './abs.js' ),
round: require( './round.js' ),
param: require( './param.js' ),
add: require( './add.js' ),
sub: require( './sub.js' ),
mul: require( './mul.js' ),
div: require( './div.js' ),
accum: require( './accum.js' ),
counter: require( './counter.js' ),
sin: require( './sin.js' ),
cos: require( './cos.js' ),
tan: require( './tan.js' ),
tanh: require( './tanh.js' ),
asin: require( './asin.js' ),
acos: require( './acos.js' ),
atan: require( './atan.js' ),
phasor: require( './phasor.js' ),
data: require( './data.js' ),
peek: require( './peek.js' ),
cycle: require( './cycle.js' ),
history: require( './history.js' ),
delta: require( './delta.js' ),
floor: require( './floor.js' ),
ceil: require( './ceil.js' ),
min: require( './min.js' ),
max: require( './max.js' ),
sign: require( './sign.js' ),
dcblock: require( './dcblock.js' ),
memo: require( './memo.js' ),
rate: require( './rate.js' ),
wrap: require( './wrap.js' ),
mix: require( './mix.js' ),
clamp: require( './clamp.js' ),
poke: require( './poke.js' ),
delay: require( './delay.js' ),
fold: require( './fold.js' ),
mod : require( './mod.js' ),
sah : require( './sah.js' ),
noise: require( './noise.js' ),
not: require( './not.js' ),
gt: require( './gt.js' ),
gte: require( './gte.js' ),
lt: require( './lt.js' ),
lte: require( './lte.js' ),
bool: require( './bool.js' ),
gate: require( './gate.js' ),
train: require( './train.js' ),
slide: require( './slide.js' ),
in: require( './in.js' ),
t60: require( './t60.js'),
mtof: require( './mtof.js'),
ltp: require( './ltp.js'), // TODO: test
gtp: require( './gtp.js'), // TODO: test
switch: require( './switch.js' ),
mstosamps:require( './mstosamps.js' ), // TODO: needs test,
selector: require( './selector.js' ),
utilities:require( './utilities.js' ),
pow: require( './pow.js' ),
attack: require( './attack.js' ),
decay: require( './decay.js' ),
windows: require( './windows.js' ),
env: require( './env.js' ),
ad: require( './ad.js' ),
adsr: require( './adsr.js' ),
ifelse: require( './ifelseif.js' ),
bang: require( './bang.js' ),
and: require( './and.js' ),
pan: require( './pan.js' ),
eq: require( './eq.js' ),
neq: require( './neq.js' ),
exp: require( './exp.js' ),
process: require( './process.js' ),
seq: require( './seq.js' )
}
library.gen.lib = library
module.exports = library