RedImpulse resettable impulse train


Non-bandlimited single sample impulse train with a reset feature.


see also: Impulse


*ar(freq, reset, mul, add)

*kr(freq, reset, mul, add)

freq - frequency in Hertz

reset - a trigger to reset the phase



//--

s.boot


a= {|freq= 2, t_reset= 0| RedImpulse.ar(freq, t_reset)}.play(fadeTime:0)


a.set(\freq, 1) //change frequency

a.set(\freq, 1, \t_reset, 1) //change frequency and reset phase

a.set(\t_reset, 1) //reset phase only

a.set(\freq, 2)

a.free




a= {|freq= 2, t_reset= 0| SinOsc.ar(400, 0, Decay.kr(RedImpulse.kr(freq, t_reset)))}.play(fadeTime:0)


a.set(\freq, 1) //change frequency

a.set(\freq, 1, \t_reset, 1) //change frequency and reset phase

a.set(\t_reset, 1) //reset phase only

a.set(\freq, 2)

a.free