/// <summary> /// Resets the device data in preparation for a connect attempt. /// </summary> /// <param name="isUserOperation"></param> /// <param name="inDemoMode"></param> /// private void ResetImpl(bool isUserOperation, bool inDemoMode = false) { //if (isUserOperation) //MainWindow.Log.WriteToLog(LogConfigAURA.ADUConnect, string.Format("CONNECT: DeviceInfo reset{0}.", inDemoMode ? " (demo mode)" : "")); if (inDemoMode) { DeviceIsPresent = true; dataItems_ = DataItem.UIMHello | DataItem.CEMHello | DataItem.UIMConfig | DataItem.CEMConfig | DataItem.CEMSSS | DataItem.OAState; CEMVersion = new ThreePartVersion(3, 1, 16); UIMVersion = new ThreePartVersion(3, 1, 9); RCMVersion = new ThreePartVersion(2, 8, 0); ConfigVersion = new TwoPartVersion(1, 1); MachineName = "DEMO012345"; Address = 0xf08ae7; NetworkId = 6; CEMInfoFlags = 0; UIMInfoFlags = 0; DNTSSStatus = CEMCommsStatus.Ready; GPSSSStatus = CEMGPSStatus.FixGood; RCMSSStatus = CEMRCMStatus.CommOk; } else { DeviceIsPresent = false; dataItems_ = DataItem.None; CEMVersion = null; UIMVersion = null; RCMVersion = null; ConfigVersion = null; MachineName = ""; Address = AURADef.InvalidMACAddress; NetworkId = kLocalInvalidNetworkId; CEMInfoFlags = 0; UIMInfoFlags = 0; DNTSSStatus = CEMCommsStatus.InvalidStatusValue; GPSSSStatus = CEMGPSStatus.InvalidStatusValue; RCMSSStatus = CEMRCMStatus.InvalidStatusValue; connectCompleteAction_ = registeredConnectCompleteAction_; } }
/// <summary> /// /// </summary> /// private void RaiseCompleteAction() { inConnectSequence_ = false; if (DeviceIsPresent) { if (!GotCEMHello) { CEMVersion = new ThreePartVersion(); RCMVersion = new ThreePartVersion(); } if (!GotUIMHello) { UIMVersion = new ThreePartVersion(); } } //MainWindow.Log.WriteToLog(LogConfigAURA.ADUConnect, "CONNECT: DeviceInfo: Raising completion action; current state is:"); //MainWindow.Log.WriteToLog(LogConfigAURA.ADUConnect, string.Format("CONNECT: DeviceIsPresent = {0}", DeviceIsPresent)); //MainWindow.Log.WriteToLog(LogConfigAURA.ADUConnect, string.Format("CONNECT: GotUIMConfig = {0}", GotUIMConfig)); //MainWindow.Log.WriteToLog(LogConfigAURA.ADUConnect, string.Format("CONNECT: GotUIMHello = {0}", GotUIMHello)); //MainWindow.Log.WriteToLog(LogConfigAURA.ADUConnect, string.Format("CONNECT: GotCEMHello = {0}", GotCEMHello)); //MainWindow.Log.WriteToLog(LogConfigAURA.ADUConnect, string.Format("CONNECT: GotCEMSubSystemStatus = {0}", GotCEMSubSystemStatus)); //MainWindow.Log.WriteToLog(LogConfigAURA.ADUConnect, string.Format("CONNECT: GotOAState = {0}", GotOAState)); Action callback = connectCompleteAction_; connectCompleteAction_ = null; try { callback(); } catch (Exception ex) { //MainWindow.Log.WriteToLog(LogConfigAURA.ADUConnect, // string.Format("DeviceInfo.RaiseCompleteActionIfComplete(): Exception during callback invocation: {0}: {1}", ex.GetType(), ex.Message)); } }