Пример #1
0
        public Service(int timerMillis)
        {
            NotifyIcon              = new NotifyIcon();
            forceDarkMenuItem.Name  = "forceDark";
            forceLightMenuItem.Name = "forceLight";
            InitTray();

            CommandServer = new ZeroMQServer(Command.DefaultPort, this);
            CommandServer.Start();

            ConfigMonitor = new AdmConfigMonitor();
            ConfigMonitor.Start();

            ModuleTimer MainTimer = new ModuleTimer(timerMillis, TimerName.Main);
            //ModuleTimer IOTimer = new ModuleTimer(TimerFrequency.IO, "io");
            ModuleTimer GeoposTimer      = new ModuleTimer(TimerFrequency.Location, TimerName.Geopos);
            ModuleTimer StateUpdateTimer = new ModuleTimer(TimerFrequency.StateUpdate, TimerName.StateUpdate);

            Timers = new List <ModuleTimer>()
            {
                MainTimer,
                //IOTimer,
                GeoposTimer,
                StateUpdateTimer
            };

            var warden = new WardenModule("ModuleWarden", Timers, true);

            ConfigMonitor.RegisterWarden(warden);
            MainTimer.RegisterModule(warden);

            Timers.ForEach(t => t.Start());
        }
Пример #2
0
 public void SetWarden(WardenModule warden)
 {
     Warden = warden;
 }