private static void RegisterTagEventHandler() { if (myHandler == null) { myHandler = new TagEventHandler(NXObjectManager.TagHandler); TagEventMaskType mask = TagEventMaskType.TAG_EVENT_UNDO_DELETE_DISCARDED_MASK | TagEventMaskType.TAG_EVENT_UNDO_DELETE_EXPIRED_MASK | TagEventMaskType.TAG_EVENT_UNDO_OVER_DELETE_MASK | TagEventMaskType.TAG_EVENT_NORMAL_DELETE_MASK | TagEventMaskType.TAG_EVENT_UNDO_OVER_CREATE_MASK; JAM_register_managed_tag_event_handler(mask, myHandler, ref handlerId); } }
private static void UnloadHandler(object sender, EventArgs e) { AppDomain.CurrentDomain.DomainUnload -= unloadHandler; if (handlerId >= 0) { JAM_unregister_tag_event_handler(handlerId); } myHandler = null; handlerId = -1; }
// called when an attached rfid reader loses detection of a tag void rfid_TagLost(object sender, TagEventArgs e) { if (this.InvokeRequired) { var m = new TagEventHandler(rfid_TagLost); this.Invoke(m, new object[2] { sender, e }); return; } WindowState = FormWindowState.Minimized; }
// called when an attached rfid reader detects a tag void rfid_Tag(object sender, TagEventArgs e) { if (this.InvokeRequired) { var m = new TagEventHandler(rfid_Tag); this.Invoke(m, new object[2] { sender, e }); return; } Loyalty.Program.ActiveCard = e.Tag; // Update last activity for this tag MTO.UpdateTag(new Tag { TagNum = e.Tag, LastActivity = DateTime.Now }); // Show the operator form var frm = new frmOperator(MTO); frm.Show(); frm.SetWorkingCard(e.Tag); // for debugging var lvi = new ListViewItem(); lvi.Text = "Tag"; lvi.SubItems.Add(DateTime.Now.ToLongTimeString()); lvi.SubItems.Add("Observed tag '" + e.Tag + "'"); listView1.Items.Add(lvi); }
private static extern int JAM_register_managed_tag_event_handler(TagEventMaskType mask, TagEventHandler handler, ref int id);
public static void AddToTagEvent(TagEventHandler d) { myRfid.Tag += d; }