コード例 #1
0
        public MemoryListener(ISettings settings, ISaver saver, IContextAwareLogger logger)
        {
            _settings = settings;
            _settings.SettingUpdated += SettingUpdated;

            _memoryDataProcessor = new MemoryDataProcessor(settings, logger);
            _patternsDispatcher  = new PatternsDispatcher(settings, saver);
            _memoryDataProcessor.TokensUpdated += (_, status) => _patternsDispatcher.TokensUpdated(status);
            _memoryDataProcessor.ToggleSmoothing(_settings.Get <bool>(Helpers.EnablePpSmoothing));
        }
コード例 #2
0
        public MemoryListener(ISettings settings, ISaver saver, IContextAwareLogger logger, int clientCount = 1)
        {
            _settings = settings;
            _settings.SettingUpdated += SettingUpdated;
            var tournamentMode = clientCount > 1;
            var mainClientId   = tournamentMode
                ? _settings.Get <int>(OsuMemoryEventSourceBase.DataClientId)
                : 0;

            _memoryDataProcessors = Enumerable.Range(0, clientCount)
                                    .Select(x => new MemoryDataProcessor(settings, logger, x == mainClientId, tournamentMode ? $"client_{x}_" : string.Empty)).ToList();
            _patternsDispatcher = new PatternsDispatcher(settings, saver);
            var mainProcessor = _memoryDataProcessors.First(p => p.IsMainProcessor);

            mainProcessor.TokensUpdated += (sender, status) => _patternsDispatcher.TokensUpdated(status);
            foreach (var memoryDataProcessor in _memoryDataProcessors)
            {
                memoryDataProcessor.ToggleSmoothing(_settings.Get <bool>(Helpers.EnablePpSmoothing));
            }
        }
コード例 #3
0
 public MemoryListener()
 {
     _memoryDataProcessor = new MemoryDataProcessor();
     _patternsDispatcher  = new PatternsDispatcher();
     _memoryDataProcessor.TokensUpdated += (_, status) => _patternsDispatcher.TokensUpdated(status);
 }