nRF5 SDK v17.1.0
Data Fields
app_usbd_hid_methods_t Struct Reference

HID unified interface. More...

#include <app_usbd_hid.h>

Data Fields

ret_code_t(* on_get_report )(app_usbd_class_inst_t const *p_inst, app_usbd_setup_evt_t const *p_setup_ev)
 Function called on HID specific, GetReport request. More...
 
ret_code_t(* on_set_report )(app_usbd_class_inst_t const *p_inst, app_usbd_setup_evt_t const *p_setup_ev)
 Function called on HID specific, SetReport request. More...
 
ret_code_t(* ep_transfer_in )(app_usbd_class_inst_t const *p_inst)
 Function called on IN endpoint transfer. More...
 
ret_code_t(* ep_transfer_out )(app_usbd_class_inst_t const *p_inst)
 Function called on OUT endpoint transfer. More...
 
uint8_t(* subclass_count )(app_usbd_class_inst_t const *p_inst)
 Function returns subclass descriptor count. More...
 
size_t(* subclass_length )(app_usbd_class_inst_t const *p_inst, uint8_t desc_num)
 Function returns subclass descriptor size. More...
 
const uint8_t *(* subclass_data )(app_usbd_class_inst_t const *p_inst, uint8_t desc_num, uint32_t cur_byte)
 Function returns pointer to subclass descriptor data. More...
 
ret_code_t(* on_idle )(app_usbd_class_inst_t const *p_inst, uint8_t report_id)
 Function called on idle transfer. More...
 
ret_code_t(* set_idle_handler )(app_usbd_class_inst_t const *p_inst, app_usbd_hid_idle_handler_t handler)
 

Detailed Description

HID unified interface.

Field Documentation

ret_code_t(* app_usbd_hid_methods_t::ep_transfer_in)(app_usbd_class_inst_t const *p_inst)

Function called on IN endpoint transfer.

This function should trigger next endpoint IN transfer if required.

Parameters
[in]p_instClass instance.
Returns
Standard error code.
ret_code_t(* app_usbd_hid_methods_t::ep_transfer_out)(app_usbd_class_inst_t const *p_inst)

Function called on OUT endpoint transfer.

This function should should read data from OUT endpoint. This function is not required and NULL could be pinned to this handler when class doesn't have OUT endpoint.

Parameters
[in]p_instClass instance.
Returns
Standard error code.
ret_code_t(* app_usbd_hid_methods_t::on_get_report)(app_usbd_class_inst_t const *p_inst, app_usbd_setup_evt_t const *p_setup_ev)

Function called on HID specific, GetReport request.

This function should trigger data write to control pipe.

Parameters
[in]p_instClass instance.
[in]p_setup_evSetup event.
Returns
Standard error code.
ret_code_t(* app_usbd_hid_methods_t::on_idle)(app_usbd_class_inst_t const *p_inst, uint8_t report_id)

Function called on idle transfer.

This function should trigger next idle transfer.

Parameters
[in,out]p_instInstance of the class.
[in]report_idNumber of report ID that needs idle transfer.
Returns
Standard error code.
ret_code_t(* app_usbd_hid_methods_t::on_set_report)(app_usbd_class_inst_t const *p_inst, app_usbd_setup_evt_t const *p_setup_ev)

Function called on HID specific, SetReport request.

This function should trigger data read from control pipe. This function is not required and NULL could be pinned to this handler when output report is not defined in report descriptor.

Parameters
[in]p_instClass instance.
[in]p_setup_evSetup event.
Returns
Standard error code.
uint8_t(* app_usbd_hid_methods_t::subclass_count)(app_usbd_class_inst_t const *p_inst)

Function returns subclass descriptor count.

Parameters
[in]p_instClass instance.
Returns
Count of descriptors
const uint8_t*(* app_usbd_hid_methods_t::subclass_data)(app_usbd_class_inst_t const *p_inst, uint8_t desc_num, uint32_t cur_byte)

Function returns pointer to subclass descriptor data.

Parameters
[in]p_instClass instance.
[in]desc_numIndex of the subclass descriptor
[in]cur_byteIndex of required byte
Returns
Pointer to requested byte in subclass descriptor
size_t(* app_usbd_hid_methods_t::subclass_length)(app_usbd_class_inst_t const *p_inst, uint8_t desc_num)

Function returns subclass descriptor size.

Parameters
[in]p_instClass instance.
[in]desc_numIndex of the subclass descriptor
Returns
Size of descriptor

The documentation for this struct was generated from the following file:

Documentation feedback | Developer Zone | Subscribe | Updated