public void AsynchReadListenerForPVL(object sender, OPCDA.NET.RefreshEventArguments arg) { OPCDA.NET.OPCItemState res = arg.items[0].OpcIRslt; try { if (arg.Reason == OPCDA.NET.RefreshEventReason.DataChanged) { // data changes if (HRESULTS.Succeeded(res.Error)) { OPCDA.NET.ItemDef opcItemDef = (OPCDA.NET.ItemDef)arg.items.GetValue(0); string[] iterateItemName = opcItemDef.OpcIDef.ItemID.Split(new Char[] { '.' }); if (iterateItemName.Length == 3) { // string machineCode = iterateItemName[1].ToString(); string command = iterateItemName[2].ToString(); if (command.Equals(OpcTags.PVL_Deck_Pallet_Present)) { bool resValue = bool.Parse(res.DataValue.ToString()); pallet.Dispatcher.BeginInvoke(new InvokeDelegate(SetPalletPresentStatus), resValue); } } } } } catch (Exception errMsg) { Console.WriteLine(errMsg.Message); } }
public void AsynchReadListenerForCM(object sender, OPCDA.NET.RefreshEventArguments arg) { }