// Event handler function. private void EventBusApi_EventBusHandler(long subsId, Event[] events) { foreach (Event ev in events) { if (ev.type == EventBusC.EVENT_OCR_RESULT) { lock (syncObject) { this.result = (OcrResult)AnyToObject.ToObject(ev.any); // Wakeup thread in recognizeFileAsync() Monitor.PulseAll(syncObject); } } } }
/// <summary> /// This function adds the events to the list view. /// </summary> /// <param name="subsId">Subscriber ID</param> /// <param name="events">Events</param> private void ShowEvents(long subsId, Event[] events) { foreach (Event e in events) { ListViewItem item = new ListViewItem(); item.Text = Convert.ToString(e.type); item.SubItems.Add(e.param2); Object[] args = (Object[])AnyToObject.ToObject(e.any); Sord sord = (Sord)args[0]; item.SubItems.Add(sord.name); int what = (int)args[2]; switch (what) { case EventBusC.WATCH_INSERT: item.SubItems.Add("inserted"); break; case EventBusC.WATCH_UPDATE: item.SubItems.Add("updated"); break; case EventBusC.WATCH_DELETE: item.SubItems.Add("deleted"); break; } this.lvEvents.Items.Add(item); } }
String eventToString(Event e) { return("[type=" + e.type + ", data=" + AnyToObject.ToObject(e.any) + "]"); }