USB HID mouse internals

nRF5 SDK v12.3.0

nRF52840 only: Module with types, definitions, and API used by the HID mouse class. More...

Data Structures

struct app_usbd_hid_mouse_inst_t
HID mouse part of class instance data. More...
struct app_usbd_hid_mouse_ctx_t
HID mouse context. More...

Macros

#define APP_USBD_HID_MOUSE_CONFIG (iface, ep)   ((iface, ep))
HID mouse configuration macro. More...
#define APP_USBD_HID_MOUSE_INSTANCE_SPECIFIC_DEC app_usbd_hid_mouse_inst_t inst;
Specific class constant data for HID mouse class.
#define APP_USBD_HID_MOUSE_DATA_SPECIFIC_DEC app_usbd_hid_mouse_ctx_t ctx;
Specific class data for HID mouse class.
#define APP_USBD_HID_MOUSE_DSC_CONFIG (interface_number, endpoint, rep_desc)
HID mouse descriptors config macro. More...
#define APP_USBD_HID_MOUSE_INST_CONFIG (descriptors,report_desc,report_buff_in,report_buff_out,user_ev_handler,bcnt)
Configure internal part of HID mouse instance. More...
#define APP_USBD_HID_MOUSE_GLOBAL_DEF_INTERNAL (instance_name,interface_number,endpoint,bcnt,user_ev_handler)
Global definition of app_usbd_hid_mouse_t class. More...

Functions

APP_USBD_CLASS_FORWARD (app_usbd_hid_mouse)
Forward declaration of HID mouse class type.

Variables

const app_usbd_hid_methods_t app_usbd_hid_mouse_methods
Public HID mouse interface.
const app_usbd_class_methods_t app_usbd_hid_mouse_class_methods
Public HID mouse class interface.

Detailed Description

nRF52840 only: Module with types, definitions, and API used by the HID mouse class.

Macro Definition Documentation

#define APP_USBD_HID_MOUSE_CONFIG ( iface,
ep
) ((iface, ep))

HID mouse configuration macro.

Used by APP_USBD_HID_MOUSE_GLOBAL_DEF

#define APP_USBD_HID_MOUSE_DSC_CONFIG ( interface_number,
endpoint,
rep_desc
)
Value:
{ \
APP_USBD_HID_MOUSE_INTERFACE_DSC(interface_number) \
APP_USBD_HID_MOUSE_HID_DSC(rep_desc) \
APP_USBD_HID_MOUSE_EP_DSC(endpoint) \
}

HID mouse descriptors config macro.

app_usbd_hid_mouse_inst_t

#define APP_USBD_HID_MOUSE_GLOBAL_DEF_INTERNAL ( instance_name,
interface_number,
endpoint,
bcnt,
user_ev_handler
)
Value:
static const uint8_t CONCAT_2 (instance_name, _rep_dsc)[] = \
APP_USBD_HID_MOUSE_REPORT_DSC_BUTTON(bcnt); \
static const uint8_t CONCAT_2 (instance_name, _dsc)[] = \
APP_USBD_HID_MOUSE_DSC_CONFIG(interface_number, \
endpoint, \
CONCAT_2 (instance_name, \
_rep_dsc)); \
static app_usbd_hid_report_buffer_t CONCAT_2 (instance_name, _in)[1]; \
APP_USBD_CLASS_INST_GLOBAL_DEF( \
instance_name, \
app_usbd_hid_mouse, \
APP_USBD_HID_MOUSE_CONFIG (interface_number, endpoint), \
( APP_USBD_HID_MOUSE_INST_CONFIG ( CONCAT_2 (instance_name, _dsc), \
CONCAT_2 (instance_name, _rep_dsc), \
CONCAT_2 (instance_name, _in), \
NULL, \
user_ev_handler, \
bcnt)) \
)

Global definition of app_usbd_hid_mouse_t class.

APP_USBD_HID_MOUSE_GLOBAL_DEF

#define APP_USBD_HID_MOUSE_INST_CONFIG ( descriptors,
report_desc,
report_buff_in,
report_buff_out,
user_ev_handler,
bcnt
)
Value:
.inst = { \
.hid_inst = APP_USBD_HID_INST_CONFIG (descriptors, \
report_desc, \
report_buff_in, \
report_buff_out, \
user_ev_handler, \
.button_count = bcnt, \
}

Configure internal part of HID mouse instance.

Parameters
descriptors Raw descriptors buffer
report_desc Report descriptor
report_buff_in Input report buffers array
report_buff_out Output report buffer
user_ev_handler User event handler
bcnt Mouse button count