1//BatUGens, Batuhan Bozkurt
2
3Coyote : UGen {
4	*kr { arg in = 0.0, trackFall = 0.2, slowLag = 0.2, fastLag = 0.01, fastMul = 0.5, thresh = 0.05, minDur = 0.1;
5		^this.multiNew('control', in, trackFall, slowLag, fastLag, fastMul, thresh, minDur)
6	}
7}
8
9TrigAvg : UGen {
10	*kr { arg in = 0.0, trig = 0;
11		^this.multiNew('control', in, trig)
12	}
13}
14
15WAmp : UGen {
16	*kr { arg in = 0.0, winSize = 0.1;
17		^this.multiNew('control', in, winSize)
18		}
19}
20
21MarkovSynth : UGen {
22	*ar { arg in = 0.0, isRecording = 1, waitTime = 2, tableSize = 10;
23		^this.multiNew('audio', in, isRecording, waitTime, tableSize)
24		}
25}
26
27FrameCompare : UGen {
28	*kr { arg buffer1, buffer2, wAmount = 0.5;
29		^this.multiNew('control', buffer1, buffer2, wAmount);
30	}
31}
32
33NeedleRect : UGen {
34	*ar { arg rate=1.0, imgWidth=100, imgHeight=100, rectX=0, rectY=0, rectW=100, rectH=100;
35		^this.multiNew('audio', rate, imgWidth, imgHeight, rectX, rectY, rectW, rectH);
36	}
37}
38
39SkipNeedle : UGen {
40	*ar { arg range = 44100, rate = 10, offset = 0;
41		^this.multiNew('audio', range, rate, offset);
42	}
43}