예제 #1
0
        private Object createTableLock = new Object(); // Used for thread safety synchronization

        public PokerMuckDirector()
        {
            StartDebugging();

            InitializeSupportedPokerClientList();

            // Initialize the list of tables (no more than 20 concurrent games to begin with right?)
            tables = new List <Table>(20);

            // Initialize the database
            playerDatabase = new PlayerDatabase();

            // Initialize the user configuration
            Globals.UserSettings = new PokerMuckUserSettings();

            string path = System.Configuration.ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal).FilePath;

            WriteDebug(WRITE_DEBUG, "PerUserRoamingAndLocal: " + path);

            path = System.Configuration.ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None).FilePath;
            WriteDebug(WRITE_DEBUG, "None: " + path);

            path = System.Configuration.ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoaming).FilePath;
            WriteDebug(WRITE_DEBUG, "PerUserRoaming: " + path);


            // First execution?
            if (Globals.UserSettings.FirstExecution)
            {
                ShowFirstExecutionWizard();

                // Reload settings
                Globals.UserSettings = new PokerMuckUserSettings();

                Globals.UserSettings.FirstExecution = false;

                // Save
                Globals.UserSettings.Save();
            }

            // Get the poker client from the user settings
            ChangePokerClient(Globals.UserSettings.CurrentPokerClient);

            // Init windows listener
            windowsListener = new WindowsListener(this);
            windowsListener.ListenInterval = 200;
            windowsListener.StartListening();

            // Init new files monitor
            newFilesMonitor = new NewFilesMonitor(Globals.UserSettings.HandHistoryDirectory, this);
            newFilesMonitor.StartMonitoring();
        }
예제 #2
0
        private Object createTableLock = new Object(); // Used for thread safety synchronization

        public PokerMuckDirector()
        {
            InitializeSupportedPokerClientList();

            // Initialize the list of tables (no more than 20 concurrent games to begin with right?)
            tables = new List <Table>(20);

            // Initialize the database
            playerDatabase = new PlayerDatabase();

            // Initialize the user configuration
            Globals.UserSettings = new PokerMuckUserSettings();

            // First execution?

            if (Globals.UserSettings.FirstExecution)
            {
                ShowFirstExecutionWizard();

                // Reload settings
                Globals.UserSettings = new PokerMuckUserSettings();

                Globals.UserSettings.FirstExecution = false;

                // Save
                Globals.UserSettings.Save();
            }

            // Get the poker client from the user settings
            ChangePokerClient(Globals.UserSettings.CurrentPokerClient);

            // Init windows listener
            windowsListener = new WindowsListener(this);
            windowsListener.ListenInterval = 200;
            windowsListener.StartListening();

            // Init new files monitor
            newFilesMonitor = new NewFilesMonitor(Globals.UserSettings.HandHistoryDirectory, this);
            newFilesMonitor.StartMonitoring();
        }