The high-performance event interface for native (C/C++) listeners.
This is a local interface, which means that it can only be used by the in-proc binary compatible clients, written, for example, in unmanaged C++ language.
Register your native listener with a call to IMonitoring.AddNativeListener method call. Using native listener interface, you will be able to match the performance of the HHD Software USB Monitor application.
| Method | Description |
|---|---|
| OnAbortPipe | see _URB_PIPE_REQUEST |
| OnBulkOrInterruptTransfer | see _URB_BULK_OR_INTERRUPT_TRANSFER |
| OnClassDevice | see _URB_CONTROL_VENDOR_OR_CLASS_REQUEST |
| OnClassEndpoint | see _URB_CONTROL_VENDOR_OR_CLASS_REQUEST |
| OnClassInterface | see _URB_CONTROL_VENDOR_OR_CLASS_REQUEST |
| OnClassOther | see _URB_CONTROL_VENDOR_OR_CLASS_REQUEST |
| OnClearFeatureToDevice | see _URB_CONTROL_FEATURE_REQUEST |
| OnClearFeatureToEndpoint | see _URB_CONTROL_FEATURE_REQUEST |
| OnClearFeatureToInterface | see _URB_CONTROL_FEATURE_REQUEST |
| OnClearFeatureToOther | see _URB_CONTROL_FEATURE_REQUEST |
| OnConnection | Called when the control attaches/detaches itself to/from the USB device |
| OnControlTransfer | see _URB_CONTROL_DESCRIPTOR_REQUEST |
| OnGetConfiguration | see _URB_BULK_OR_INTERRUPT_TRANSFER |
| OnGetCurrentFrameNumber | see _URB_GET_CURRENT_FRAME_NUMBER |
| OnGetDescriptorFromDevice | see _URB_CONTROL_DESCRIPTOR_REQUEST |
| OnGetDescriptorFromEndpoint | see _URB_CONTROL_DESCRIPTOR_REQUEST |
| OnGetDescriptorFromInterface | see _URB_CONTROL_DESCRIPTOR_REQUEST |
| OnGetFrameLength | see _URB_GET_FRAME_LENGTH |
| OnGetInterface | see _URB_CONTROL_GET_INTERFACE_REQUEST |
| OnGetStatusFromDevice | see _URB_CONTROL_GET_STATUS_REQUEST |
| OnGetStatusFromEndpoint | see _URB_CONTROL_GET_STATUS_REQUEST |
| OnGetStatusFromInterface | see _URB_CONTROL_GET_STATUS_REQUEST |
| OnGetStatusFromOther | see _URB_CONTROL_GET_STATUS_REQUEST |
| OnIsochTransfer | see _URB_ISOCH_TRANSFER and USBD_ISO_PACKET_DESCRIPTOR |
| OnPacketDown | Called when packet is going down |
| OnPacketUp | Called when packet is going up |
| OnQueryID | Called when id is queried with EVENT_DEVICEQUERYID |
| OnQueryInterface | Called when interface is queried with EVENT_DEVICEQUERYINTERFACE |
| OnQueryText | Called when text is queried with EVENT_DEVICEQUERYTEXT |
| OnReleaseFrameLengthControl | see _URB_CONTROL_GET_INTERFACE_REQUEST |
| OnResetPipe | see _URB_PIPE_REQUEST |
| OnSelectConfiguration | see _URB_SELECT_CONFIGURATION |
| OnSelectInterface | see _URB_SELECT_INTERFACE |
| OnSetDescriptorToDevice | see _URB_CONTROL_DESCRIPTOR_REQUEST |
| OnSetDescriptorToEndpoint | see _URB_CONTROL_DESCRIPTOR_REQUEST |
| OnSetDescriptorToInterface | see _URB_CONTROL_DESCRIPTOR_REQUEST |
| OnSetFeatureToDevice | see _URB_CONTROL_FEATURE_REQUEST |
| OnSetFeatureToEndpoint | see _URB_CONTROL_FEATURE_REQUEST |
| OnSetFeatureToInterface | see _URB_CONTROL_FEATURE_REQUEST |
| OnSetFeatureToOther | see _URB_CONTROL_FEATURE_REQUEST |
| OnSetFrameLength | see _URB_SET_FRAME_LENGTH |
| OnSurpriseRemoval | Called when device is removed with EVENT_DEVICESURPRISEREMOVAL |
| OnTakeFrameLengthControl | see _URB_CONTROL_GET_INTERFACE_REQUEST |
| OnUrb | Called when URB is transmitted |
| OnVendorDevice | see _URB_CONTROL_VENDOR_OR_CLASS_REQUEST |
| OnVendorEndpoint | see _URB_CONTROL_VENDOR_OR_CLASS_REQUEST |
| OnVendorInterface | see _URB_CONTROL_VENDOR_OR_CLASS_REQUEST |
| OnVendorOther | see _URB_CONTROL_VENDOR_OR_CLASS_REQUEST |
| ProcessRAWBuffer | Called by the control to process the monitored events at the lowest possible level |