// Rate creates a new ugen at a specific rate.
// If rate is an unsupported value this method will cause a runtime panic.
173891
func (sin SinOsc) Rate(rate int8) Input {
	CheckRate(rate)
	(&sin).defaults()
	return NewInput("SinOsc", rate, 0, 1, sin.Freq, sin.Phase)
}
755252
func (s Silent) Rate(rate int8) Input {
	CheckRate(rate)
	(&s).defaults()
	return NewInput("DC", rate, 0, s.NumChannels, C(0))
}
1225637
func (dc DC) Rate(rate int8) Input {
	CheckRate(rate)
	(&dc).defaults()
	return NewInput("DC", rate, 0, 1, dc.In)
}
618856
func (l LinPan2) Rate(rate int8) Input {
	CheckRate(rate)
	if l.In == nil {
		panic("LinPan2 requires an input signal")
	}
	(&l).defaults()
	in := NewInput("LinPan2", rate, 0, 1, l.In, l.Pos, l.Level)
	return Multi(in, in)
}
996805
func (playbuf PlayBuf) Rate(rate int8) Input {
	CheckRate(rate)
	if playbuf.BufNum == nil {
		panic(fmt.Errorf("BufNum can not be nil"))
	}
	(&playbuf).defaults()
	done := C(float32(playbuf.Done))
	return NewInput("PlayBuf", rate, 0, playbuf.NumChannels, playbuf.BufNum, playbuf.Speed, playbuf.Trigger, playbuf.Start, playbuf.Loop, done)
}
77892
func (xline XLine) Rate(rate int8) Input {
	CheckRate(rate)
	(&xline).defaults()
	return NewInput("XLine", rate, 0, 1, xline.Start, xline.End, xline.Dur, C(float32(xline.Done)))
}
565592
func (cosc COsc) Rate(rate int8) Input {
	CheckRate(rate)
	if cosc.BufNum == nil {
		panic("COsc requires a buffer number")
	}
	(&cosc).defaults()
	return NewInput("COsc", rate, 0, 1, cosc.BufNum, cosc.Freq, cosc.Beats)
}
720532
func (g GrainSin) Rate(rate int8) Input {
	CheckRate(rate)
	(&g).defaults()

	in := NewInput("GrainSin", rate, 0, 1, g.Trigger, g.Dur, g.Freq, g.Pan, g.EnvBuf, g.MaxGrains)
	if g.NumChannels == 1 {
		return in
	}
	mult := make([]Input, g.NumChannels)
	for i := range mult {
		mult[i] = in
	}
	return Multi(mult...)
}
80786
func (fso FSinOsc) Rate(rate int8) Input {
	CheckRate(rate)
	(&fso).defaults()
	return NewInput("FSinOsc", rate, 0, 1, fso.Freq, fso.Phase)
}
1320119
func (pan Pan4) Rate(rate int8) Input {
	CheckRate(rate)
	if pan.In == nil {
		panic("Pan4 requires an input")
	}
	(&pan).defaults()
	in := NewInput("Pan4", rate, 0, 1, pan.In, pan.XPos, pan.YPos, pan.Level)
	return Multi(in, in, in, in)

}
933908
func (g Gendy1) Rate(rate int8) Input {
	CheckRate(rate)
	g.rate = rate
	(&g).defaults()
	return NewInput("Gendy1", rate, 0, 1, g.AmpDist, g.DurDist, g.ADParam, g.DDParam, g.MinFreq, g.MaxFreq, g.AmpScale, g.DurScale, g.InitCPs, g.KNum)
}
515019
func (t Trig) Rate(rate int8) Input {
	CheckRate(rate)
	(&t).defaults()
	return NewInput("Trig", rate, 0, 1, t.In, t.Dur)
}
1336096
func (brf BRF) Rate(rate int8) Input {
	if brf.In == nil {
		panic("BRF expects In to not be nil")
	}
	CheckRate(rate)
	(&brf).defaults()
	return NewInput("BRF", rate, 0, 1, brf.In, brf.Freq, brf.RQ)
}
999143
func (jpv JPverb) Rate(rate int8) Input {
	CheckRate(rate)
	if jpv.In == nil {
		panic("JPverb requires an input signal")
	}
	(&jpv).defaults()

	var in1, in2 Input

	switch x := jpv.In.(type) {
	case Inputs:
		if len(x) == 0 {
			panic("JPverb requires an input signal")
		}
		in1, in2 = x[0], x[len(x)-1]
	default:
		in1, in2 = jpv.In, jpv.In
	}
	return NewInput("JPverbRaw", rate, 0, 2, in1, in2, jpv.T60, jpv.Damp, jpv.Size, jpv.EarlyDiff, jpv.ModDepth, jpv.ModFreq, jpv.Low, jpv.Mid, jpv.High, jpv.LowCut, jpv.HighCut)
}
479665
func (r Resonz) Rate(rate int8) Input {
	CheckRate(rate)
	(&r).defaults()
	return NewInput("Resonz", rate, 0, 1, r.In, r.Freq, r.BWR)
}
208279
func (dust2 Dust2) Rate(rate int8) Input {
	CheckRate(rate)
	(&dust2).defaults()
	return NewInput("Dust2", rate, 0, 1, dust2.Density)
}
916907
func (lpf LPF) Rate(rate int8) Input {
	if lpf.In == nil {
		panic("LPF expects In to not be nil")
	}
	CheckRate(rate)
	(&lpf).defaults()
	return NewInput("LPF", rate, 0, 1, lpf.In, lpf.Freq)
}