public LiveDataManager(Config config, IEventAggregator eventAggregator) { _config = config; _lignes = new LigneSens[0]; _updatePollTimer = new Timer(CheckDataUpdate, null, -1, -1); _dataTimeoutTimer = new Timer(CheckDataTimeout, null, _config.Map.LiveDataTimeout, Timeout.InfiniteTimeSpan); eventAggregator.GetEvent <ExtentChangedEvent>().Subscribe(SetExtent); eventAggregator.GetEvent <SelectedLignesChangedEvent>().Subscribe(SetLignes); }
public void SetLignes(IEnumerable <LigneSens> lignes) { if (lignes == null) { lignes = new LigneSens[0]; } Lignes = lignes.ToList(); UpdateLayersDefinitionExpressions(); _eventAggregator.GetEvent <SelectedLignesChangedEvent>().Publish(lignes); }
public MapManager(LiveDataManager liveDataManager, SymbolsManager symbolsManager, Config config, IEventAggregator eventAggregator, IPageDialogService dialogService, GeolocationManager geolocationManager) { _vehiculesLayer = new GraphicsOverlay { MinScale = config.Map.VehiculesLayerMinScale }; _liveDataManager = liveDataManager; _liveDataManager.DataUpdateAvailable += OnDataUpdateAvailable; _liveDataManager.VehiculeLimitExceeded += OnVehiculeLimitExceeded; _liveDataManager.DataTimeout += OnDataTimeout; _symbolsManager = symbolsManager; _symbolsCache = new Dictionary <string, PictureMarkerSymbol>(); _config = config; _eventAggregator = eventAggregator; _dialogService = dialogService; _geolocationManager = geolocationManager; Lignes = new LigneSens[0]; }