package com.teotigraphix.caustk.tone.components; import com.teotigraphix.caustk.core.osc.VolumeMessage; import com.teotigraphix.caustk.tone.ToneComponent; public class VolumeComponent extends ToneComponent { //---------------------------------- // out //---------------------------------- protected float out; public float getOut() { return out; } protected float getOut(boolean restore) { return VolumeMessage.VOLUME_OUT.query(getEngine(), getToneIndex()); } // XXX Check range for all SYNTHS public void setOut(float value) { if (value == out) return; // if (value < 0f || value > 2f) // throw newRangeException("out", "0..2", value); out = value; VolumeMessage.VOLUME_OUT.send(getEngine(), getToneIndex(), out); } public VolumeComponent() { } @Override public void restore() { setOut(getOut(true)); } }