Example #1
0
        public MainManager(ILogger logger, LoopManager loopManager, DeviceManager deviceManager,
                           ModuleManager moduleManager, PreviewManager previewManager, MigrationManager migrationManager,
                           PipeServer pipeServer, GameStateWebServer gameStateWebServer)
        {
            _migrationManager = migrationManager;
            Logger            = logger;
            LoopManager       = loopManager;
            DeviceManager     = deviceManager;
            ModuleManager     = moduleManager;
            PreviewManager    = previewManager;
            PipeServer        = pipeServer;

            _processTimer          = new Timer(1000);
            _processTimer.Elapsed += ScanProcesses;
            _processTimer.Start();

            ProgramEnabled = false;

            // Create and start the web server
            GameStateWebServer = gameStateWebServer;
            GameStateWebServer.Start();

            // Start the named pipe
            PipeServer.Start("artemis");

            // Listen for power mode changes
            SystemEvents.PowerModeChanged += OnPowerChange;

            Logger.Info("Intialized MainManager");
            Logger.Info($"Artemis version {Assembly.GetExecutingAssembly().GetName().Version} is ready!");
        }
Example #2
0
        public MainManager(ILogger logger, LoopManager loopManager, DeviceManager deviceManager,
                           EffectManager effectManager, ProfileManager profileManager, PipeServer pipeServer)
        {
            Logger         = logger;
            LoopManager    = loopManager;
            DeviceManager  = deviceManager;
            EffectManager  = effectManager;
            ProfileManager = profileManager;
            PipeServer     = pipeServer;

            _processTimer          = new Timer(1000);
            _processTimer.Elapsed += ScanProcesses;
            _processTimer.Start();

            ProgramEnabled = false;
            Running        = false;

            // Create and start the web server
            GameStateWebServer = new GameStateWebServer(logger);
            GameStateWebServer.Start();

            // Start the named pipe
            PipeServer.Start("artemis");

            // Start the update task
            var updateTask = new Task(Updater.UpdateApp);

            updateTask.Start();

            Logger.Info("Intialized MainManager");
            Logger.Info($"Artemis version {Assembly.GetExecutingAssembly().GetName().Version} is ready!");
        }
Example #3
0
        public MainManager(IEventAggregator events, ILogger logger, LoopManager loopManager,
                           DeviceManager deviceManager, EffectManager effectManager, ProfileManager profileManager)
        {
            _events = events;

            Logger         = logger;
            LoopManager    = loopManager;
            DeviceManager  = deviceManager;
            EffectManager  = effectManager;
            ProfileManager = profileManager;

            _processTimer          = new Timer(1000);
            _processTimer.Elapsed += ScanProcesses;
            _processTimer.Start();

            ProgramEnabled = false;
            Running        = false;

            // TODO: Dependency inject utilities?
            KeyboardHook = new KeyboardHook();

            // Create and start the web server
            GameStateWebServer = new GameStateWebServer();
            GameStateWebServer.Start();

            // Start the named pipe
            PipeServer = new PipeServer();
            PipeServer.Start("artemis");

            Logger.Info("Intialized MainManager");
        }
Example #4
0
        public void Dispose()
        {
            Logger.Debug("Shutting down MainManager");

            _processTimer?.Stop();
            _processTimer?.Dispose();
            LoopManager?.Stop();
            ModuleManager?.ActiveModule?.Dispose();
            GameStateWebServer?.Stop();
            PipeServer?.Stop();
        }
Example #5
0
        public Dota2Model(DeviceManager deviceManager, LuaManager luaManager, MetroDialogService dialogService,
                          GameStateWebServer gameStateWebServer) : base(deviceManager, luaManager)
        {
            _gameStateWebServer = gameStateWebServer;
            _dialogService      = dialogService;

            Settings  = SettingsProvider.Load <Dota2Settings>();
            DataModel = new Dota2DataModel();
            ProcessNames.Add("dota2");

            FindGameDir();
            PlaceConfigFile();
        }
        public CounterStrikeModel(DeviceManager deviceManager, LuaManager luaManager, MetroDialogService dialogService,
                                  GameStateWebServer gameStateWebServer) : base(deviceManager, luaManager)
        {
            _gameStateWebServer = gameStateWebServer;
            _dialogService      = dialogService;

            Settings  = SettingsProvider.Load <CounterStrikeSettings>();
            DataModel = new CounterStrikeDataModel();
            ProcessNames.Add("csgo");

            FindGameDir();
            PlaceConfigFile();
        }