#include "proto_rx_event.h" static const char *transport_name(enum proto_transport transport) { switch (transport) { case PROTO_TRANSPORT_USB_CDC: return "usb_cdc"; case PROTO_TRANSPORT_BLE_NUS: return "ble_nus"; default: return "?"; } } static void log_proto_rx_event(const struct app_event_header *aeh) { const struct proto_rx_event *event = cast_proto_rx_event(aeh); APP_EVENT_MANAGER_LOG(aeh, "transport:%s len:%zu", transport_name(event->transport), event->dyndata.size); } static void profile_proto_rx_event(struct log_event_buf *buf, const struct app_event_header *aeh) { const struct proto_rx_event *event = cast_proto_rx_event(aeh); nrf_profiler_log_encode_uint8(buf, event->transport); nrf_profiler_log_encode_uint16(buf, (uint16_t)event->dyndata.size); } APP_EVENT_INFO_DEFINE(proto_rx_event, ENCODE(NRF_PROFILER_ARG_U8, NRF_PROFILER_ARG_U16), ENCODE("transport", "len"), profile_proto_rx_event); APP_EVENT_TYPE_DEFINE(proto_rx_event, log_proto_rx_event, &proto_rx_event_info, APP_EVENT_FLAGS_CREATE( APP_EVENT_TYPE_FLAGS_INIT_LOG_ENABLE));