22#ifndef TRANSPORT_SERVICE_H
23#define TRANSPORT_SERVICE_H
33#define COMMAND_CLASS_TRANSPORT_SERVICE_V2 0x55
67 const uint8_t *payload,
69 uint8_t no_of_expected_responses,
134 const uint8_t *payload,
135 uint16_t payload_len,
136 uint16_t max_frame_len,
161 const uint8_t *frame_data,
162 uint8_t frame_length);
uint8_t(* send_data_t)(ts_node_id_t source, ts_node_id_t dest, const uint8_t *payload, uint16_t payload_len, uint8_t no_of_expected_responses, const on_lower_layer_send_data_complete_t on_lower_layer_send_data_complete)
Lower layer Send Data function which Transport service should use for transmitting broken down smalle...
Definition: transport_service.h:64
void(* upper_layer_command_handler_t)(ts_node_id_t source, ts_node_id_t dest, const uint8_t *frame, uint16_t frame_len)
This function is called when transport service is done receiving/stiching the whole data and the data...
Definition: transport_service.h:82
void(* on_lower_layer_send_data_complete_t)(uint8_t status, void *user)
This callback is sent to lower layers and should be called when the transmission of what Transport se...
Definition: transport_service.h:51
receive_type
Definition: transport_service.h:104
zwave_node_id_t ts_node_id_t
Definition: transport_service.h:32
transport_service_send_data_return_code_t transport_service_send_data(ts_node_id_t source, ts_node_id_t dest, const uint8_t *payload, uint16_t payload_len, uint16_t max_frame_len, const on_transport_service_send_data_complete_t on_send_complete)
Sending a long frame with Transport service.
Definition: transport_service.c:1761
bool transport_service_on_frame_received(ts_node_id_t source, ts_node_id_t dest, receive_type rx_type, const uint8_t *frame_data, uint8_t frame_length)
Transport service RX function.
Definition: transport_service.c:1674
void(* on_transport_service_send_data_complete_t)(uint8_t status, void *user)
Transport service calls this callback to notify upper layers of completion of transmit of whole paylo...
Definition: transport_service.h:41
void transport_service_init(ts_node_id_t my_node_id, const upper_layer_command_handler_t upper_layer_command_handler, const send_data_t send_data)
Initialize the Transport Service.
Definition: transport_service.c:63
transport_service_send_data_return_code_t
Definition: transport_service.h:106
@ SINGLECAST
Definition: transport_service.h:104
@ MULTICAST
Definition: transport_service.h:104
@ BROADCAST
Definition: transport_service.h:104
@ TRANSPORT_SERVICE_WILL_OVERFLOW
Definition: transport_service.h:110
@ TRANSPORT_SERVICE_SEND_SUCCESS
Definition: transport_service.h:107
@ TRANSPORT_SERVICE_BUSY
Definition: transport_service.h:109
@ TRANSPORT_SERVICE_SEND_FAILURE
Definition: transport_service.h:108
uint16_t zwave_node_id_t
Z-Wave NodeID type.
Definition: zwave_node_id_definitions.h:84
static upper_layer_command_handler_t upper_layer_command_handler
Definition: transport_service.c:43
static uint16_t my_node_id
Definition: transport_service.c:45
static uint8_t send_data(ts_node_id_t source, ts_node_id_t dest, const uint8_t *payload, const uint16_t payload_len, uint8_t no_of_expected_responses, const on_lower_layer_send_data_complete_t cb)
Definition: zwave_transport_service_wrapper.c:77