42#ifndef ZWAVE_CONTROLLER_TRANSPORT_H
43#define ZWAVE_CONTROLLER_TRANSPORT_H
50#define NUMBER_OF_TRANSPORTS 7
111 uint16_t data_length,
147 const uint8_t *frame_data,
148 uint16_t frame_length);
uint32_t sl_status_t
Definition: sl_status.h:139
uint8_t zwave_cc_version_t
‍Version of a Z-Wave Command Class
Definition: zwave_command_class_version_types.h:26
sl_status_t zwave_controller_transport_init()
Initialize the Z-Wave Controller transport component.
Definition: zwave_controller_transport.c:32
sl_status_t zwave_controller_transport_register(const zwave_controller_transport_t *transport)
Must be called to register a transport.
Definition: zwave_controller_transport.c:38
zwave_cc_version_t zwave_controller_transport_is_encapsulation_cc(zwave_command_class_t command_class)
check if a command class is registered as an encapsulation cc in Z-Wave controller transport framewor...
Definition: zwave_controller_transport.c:89
struct zwave_controller_transport zwave_controller_transport_t
Hold information about a transport plugin.
uint16_t zwave_command_class_t
Definition: zwave_generic_types.h:29
void * zwave_tx_session_id_t
Handle that can be used for aborting ongoing transmissions or identifying TX Queue elements.
Definition: zwave_tx_definitions.h:77
void(* on_zwave_tx_send_data_complete_t)(uint8_t status, const zwapi_tx_report_t *tx_info, void *user)
Function signature for callbacks invoked when send data has completed.
Definition: zwave_tx.h:168
Structure holding information about the source and destination when transmitting and receiving Z-Wave...
Definition: zwave_controller_connection_info.h:87
Hold information about a transport plugin.
Definition: zwave_controller_transport.h:60
zwave_command_class_t command_class
Which Z-Wave command class this transport is serving.
Definition: zwave_controller_transport.h:83
sl_status_t(* on_frame_received)(const zwave_controller_connection_info_t *connection_info, const zwave_rx_receive_options_t *rx_options, const uint8_t *frame_data, uint16_t frame_length)
Command handler to of the transport.
Definition: zwave_controller_transport.h:144
zwave_cc_version_t version
The command class version of the command class that this transport is implementing.
Definition: zwave_controller_transport.h:89
sl_status_t(* send_data)(const zwave_controller_connection_info_t *connection, uint16_t data_length, const uint8_t *data, const zwave_tx_options_t *tx_options, const on_zwave_tx_send_data_complete_t on_send_complete, void *user, zwave_tx_session_id_t parent_session)
Send function to use when encapsulating with this transport.
Definition: zwave_controller_transport.h:109
uint32_t priority
Priority of this plugin, transports with lowest number priority is executed last when encoding....
Definition: zwave_controller_transport.h:78
sl_status_t(* abort_send_data)(zwave_tx_session_id_t session_id)
abort function that instructs the transport to abort one or more ongoing transmission(s)
Definition: zwave_controller_transport.h:127
Describing receive parameters of a frame.
Definition: zwave_rx_definitions.h:35
Definition: zwave_tx_definitions.h:131