- clock.alarm_trigger_queue.triggered += on_alarm_trigger;
- clock.alarm_trigger_queue.acked += on_alarm_done;
- clock.alarm_trigger_queue.canceled += on_alarm_done;
+ }
+}
+
+public class PlayerState : Object
+{
+ protected SoundPlayer soundplayer;
+ protected Gst.Element player;
+ public string owner;
+ public string uri;
+ public bool loop;
+
+ public PlayerState(string owner, string uri, bool loop=false)
+ {
+ soundplayer = null;
+
+ this.owner = owner;
+ this.uri = uri;
+ this.loop = loop;
+
+ player = Gst.ElementFactory.make("playbin", null);
+ var bus = player.get_bus();
+ bus.add_signal_watch();
+ bus.message += on_message;
+
+ player.set_property("uri", uri);
+ player.set_state(Gst.State.PAUSED);