public void Stop() { if (runnerThread != null && runnerThread.IsAlive) { if (runnerThread.ThreadState == ThreadState.Suspended) { runnerThread.Resume(); } runnerThread.Abort(); } runnerThread = null; if (streamReader != null) { streamReader.Close(); } status = DataProviderStatus.Stopped; if (Stopped != null) { Stopped(this, EventArgs.Empty); } }
void ddeClient_Advise(object sender, DdeAdviseEventArgs e) { if (isPaused) { return; } //item is instrument name //text is 2010/07/15 21:27 1.29012 1.29016 Tick t = new Tick(); t.Instrument = instrument; string[] parts = e.Text.Split(' '); t.Time = DateTime.Parse(parts[0] + " " + parts[1]); t.Bid = double.Parse(parts[2]); t.Ask = double.Parse(parts[3]); if (ProcessTick != null) { ProcessTick(t); } tickLimit--; if (tickLimit == 0) { ddeClient.StopAdvise(instrument.ToString(), 1000); status = DataProviderStatus.Stopped; } }
public void Pause() { if (runnerThread != null && runnerThread.IsAlive) { runnerThread.Suspend(); status = DataProviderStatus.Paused; } }
internal void UpdateDataLoadingStatus(DataProviderStatus status) { this.dataStatus = status; foreach (var listener in this.registeredDataLoadingListeners) { listener.OnDataStatusChanged(status); } }
public void OnDataStatusChanged(DataProviderStatus status) { if (this.busyControl != null && this.Owner.IsBusyIndicatorEnabled) { var isBusy = status != DataProviderStatus.Ready && status != DataProviderStatus.RequestingData && status != DataProviderStatus.Faulted; if (this.busyControl.IsBusy != isBusy) { this.busyControl.IsBusy = isBusy; } } this.currentStatus = status; }
public void Process(int ticks) { ThreadTickLimit = ticks; status = DataProviderStatus.Running; if (runnerThread != null && runnerThread.IsAlive) { runnerThread.Resume(); return; } runnerThread = new Thread(new ThreadStart(tickThread)); runnerThread.Start(); }
public void Stop() { if (ddeClient != null && ddeClient.IsConnected) { ddeClient.Disconnect(); } if (Stopped != null) { Stopped(this, EventArgs.Empty); } status = DataProviderStatus.Stopped; }
public void Process(int ticks) { tickLimit = ticks; status = DataProviderStatus.Running; if (isPaused) { isPaused = false; } else { ddeClient.StartAdvise(instrument.ToString(), 1, true, 6000); } }
internal static DataProviderStatus GetDataProviderStatusFromEngineStatus(DataEngineStatus engineStatus) { DataProviderStatus status; switch (engineStatus) { case DataEngineStatus.InProgress: status = DataProviderStatus.ProcessingData; break; case DataEngineStatus.Completed: status = DataProviderStatus.Ready; break; case DataEngineStatus.Faulted: default: status = DataProviderStatus.Faulted; break; } return(status); }
public void OnDataStatusChanged(DataProviderStatus status) { if (this.busyControl != null && this.Owner.IsBusyIndicatorEnabled) { var isBusy = status != DataProviderStatus.Ready && status != DataProviderStatus.RequestingData && status != DataProviderStatus.Faulted; if (this.BusyControl.IsBusy != isBusy) { this.BusyControl.IsBusy = isBusy; if (isBusy) { this.Owner.HitTestService.Suspend(); } else { this.Owner.HitTestService.Resume(); } } } this.currentStatus = status; }
void IDataStatusListener.OnDataStatusChanged(DataProviderStatus status) { this.IsLoadingData = status == DataProviderStatus.RequestingData; }
void IGridView.OnDataStatusChanged(DataProviderStatus status) { this.visualStateService.UpdateDataLoadingStatus(status); }
/// <summary> /// Initializes a new instance of the <see cref="DataProviderStatusChangedEventArgs" /> class. /// </summary> /// <param name="newStatus">The new status.</param> /// <param name="resultsChanges">DataProvider results have changed if set to <c>true</c>.</param> /// <param name="error">Exception if available .</param> public DataProviderStatusChangedEventArgs(DataProviderStatus newStatus, bool resultsChanges, Exception error) { this.NewStatus = newStatus; this.ResultsChanged = resultsChanges; this.Error = error; }
private void NotifyView(DataProviderStatus status) { this.View.UpdateService.DispatchOnUIThread(false, () => this.View.OnDataStatusChanged(status)); }
public void Pause() { isPaused = true; status = DataProviderStatus.Paused; }
public EMGDataProviderStatusEventArgs(DataProviderStatus statusValue) : base() { status = statusValue; }