Ejemplo n.º 1
0
        void giver()
        {
            ResourceManager manager = new ResourceManager();
            manager.LoadLibrary(@"E:\Media");

            EventSchedule sched = new EventSchedule(32);
            sched.TicksPerSec = 1;

            //BasicEvent.Provider prov = new BasicEvent.Provider();
            SoundEvent.Provider prov1 = new SoundEvent.Provider("Chord", manager, "chord.wav");
            SoundEvent.Provider prov2 = new SoundEvent.Provider("Ding", manager, "ding.wav");
            /*RandomEventSelector rnd = new RandomEventSelector();
            rnd.Selection.Add(prov1);
            rnd.Selection.Add(prov2);
            SimultaneousEventProvider sim = new SimultaneousEventProvider();
            sim.Group.Add(prov1);
            sim.Group.Add(prov2);
            PeriodicEventProvider per = new PeriodicEventProvider();
            per.Period = 8;
            per.Variance = 0;
            per.Subordinate = sim;
             */

            _hub.SetChannel(this);
            _hub.Initialize(_this);

            var obs = new EventProviderActivator(AppID);
            obs.Provider = prov1;
            obs.Schedule = sched;
            var id = new TriggerID("Test", 1);
            bool result = _hub.Hub.ConnectObserver(id, obs);

            //sched.Model.Add(per);
            sched.Tick += new EventSchedule.TimeEvent(Ticker);
            sched.Start(false);

            //AutoResetEvent auto = new AutoResetEvent(false);
            //while (sched.IsRunning)
            //    auto.WaitOne(1000);

            Console.Write("Press any key...");
            Console.ReadLine();

            sched.Stop();
            _hub.Finish(_this);

            Console.WriteLine("Finished.");
            Console.ReadLine();

            return;
        }