44 |
import javax.swing.event.ChangeEvent; |
import javax.swing.event.ChangeEvent; |
45 |
import javax.swing.event.ChangeListener; |
import javax.swing.event.ChangeListener; |
46 |
|
|
47 |
|
import net.sf.juife.Task; |
48 |
|
import net.sf.juife.event.TaskEvent; |
49 |
|
import net.sf.juife.event.TaskListener; |
50 |
|
|
51 |
import org.jsampler.AudioDeviceModel; |
import org.jsampler.AudioDeviceModel; |
52 |
import org.jsampler.CC; |
import org.jsampler.CC; |
53 |
|
|
56 |
import org.jsampler.event.ParameterEvent; |
import org.jsampler.event.ParameterEvent; |
57 |
import org.jsampler.event.ParameterListener; |
import org.jsampler.event.ParameterListener; |
58 |
|
|
59 |
|
import org.jsampler.task.Audio; |
60 |
import org.jsampler.view.ParameterTable; |
import org.jsampler.view.ParameterTable; |
61 |
|
|
62 |
import org.linuxsampler.lscp.AudioOutputChannel; |
import org.linuxsampler.lscp.AudioOutputChannel; |
90 |
|
|
91 |
protected void |
protected void |
92 |
destroyDevice() { |
destroyDevice() { |
93 |
CC.getSamplerModel().removeBackendAudioDevice(getDeviceId()); |
final Task t = new Audio.DestroyDevice(getDeviceId()); |
94 |
|
t.addTaskListener(new TaskListener() { |
95 |
|
public void |
96 |
|
taskPerformed(TaskEvent e) { |
97 |
|
if(t.doneWithErrors()) restoreDevice(); |
98 |
|
} |
99 |
|
}); |
100 |
|
|
101 |
|
CC.getTaskQueue().add(t); |
102 |
} |
} |
103 |
|
|
104 |
public int |
public int |