private void OnServiceTypeBrowserCallback(IntPtr browser, int iface, Protocol proto, BrowserEvent bevent,
IntPtr type, IntPtr domain, LookupResultFlags flags,
IntPtr userdata)
{
ServiceTypeInfo info;
info.NetworkInterface = iface;
info.Protocol = proto;
info.Domain = Utility.PtrToString (domain);
info.ServiceType = Utility.PtrToString (type);
info.Flags = flags;
switch (bevent) {
case BrowserEvent.Added:
infos.Add (info);
foreach (ServiceTypeInfoHandler handler in addListeners)
handler (this, new ServiceTypeInfoArgs (info));
break;
case BrowserEvent.Removed:
infos.Remove (info);
foreach (ServiceTypeInfoHandler handler in removeListeners)
handler (this, new ServiceTypeInfoArgs (info));
break;
default:
EmitBrowserEvent (bevent);
break;
}
}