public static extern int HidP_GetData( HIDNativeMethods.HIDP_REPORT_TYPE reportType, [In, Out] HIDNativeMethods.HIDP_DATA[] dataList, ref int dataLength, IntPtr preparsedData, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 5)] byte[] report, int reportLength);
public static extern int HidP_SetUsages( HIDNativeMethods.HIDP_REPORT_TYPE reportType, short usagePage, short linkCollection, [In, Out] HIDNativeMethods.HIDP_DATA[] usageList, ref int usageLength, IntPtr preparsedData, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 4)] byte[] report, int reportLength);
public static extern int HidP_GetValueCaps( HIDNativeMethods.HIDP_REPORT_TYPE reportType, [In, Out] HIDNativeMethods.HidP_Value_Caps[] valueCaps, ref short valueCapsLength, IntPtr preparsedData);
public static extern int HidP_InitializeReportForID( HIDNativeMethods.HIDP_REPORT_TYPE reportType, byte reportID, IntPtr preparsedData, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 4)] byte[] report, int reportLength);
public static extern int HidP_GetButtonCaps( HIDNativeMethods.HIDP_REPORT_TYPE reportType, [In, Out] HIDNativeMethods.HidP_Button_Caps[] buttonCaps, ref short buttonCapsLength, IntPtr preparsedData);