80 lines
2.6 KiB
C
Executable File
80 lines
2.6 KiB
C
Executable File
/****************************************************************************
|
|
|
|
Copyright(c) 2019 by Aerospace C.Power (Chongqing) Microelectronics. ALL RIGHTS RESERVED.
|
|
|
|
This Information is proprietary to Aerospace C.Power (Chongqing) Microelectronics and MAY NOT
|
|
be copied by any method or incorporated into another program without
|
|
the express written consent of Aerospace C.Power. This Information or any portion
|
|
thereof remains the property of Aerospace C.Power. The Information contained herein
|
|
is believed to be accurate and Aerospace C.Power assumes no responsibility or
|
|
liability for its use in any way and conveys no license or title under
|
|
any patent or copyright and makes no representation or warranty that this
|
|
Information is free from patent or copyright infringement.
|
|
|
|
****************************************************************************/
|
|
|
|
#ifndef __IOT_CLI_TPUT_API_H__
|
|
#define __IOT_CLI_TPUT_API_H__
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#define IOT_CLI_SG_MSG_TEST_TPUT (0x1)
|
|
|
|
#define IOT_CLI_TPUT_REQ (0x1)
|
|
|
|
#pragma pack(push) // save the pack status
|
|
#pragma pack(1) // 1 byte align
|
|
|
|
/** cli and tput transfer data msg header */
|
|
typedef struct _iot_cli_tput_msg_header {
|
|
/** msg id */
|
|
uint8_t msg_id;
|
|
/** request id */
|
|
uint8_t req_id;
|
|
/** reserved for future */
|
|
uint16_t reserved;
|
|
} iot_cli_tput_msg_header_t;
|
|
|
|
typedef struct _iot_cli_tput_report {
|
|
uint32_t test_id;
|
|
uint32_t tput_valu; //kpbs
|
|
uint8_t down_or_up_link;
|
|
uint8_t dst[6];
|
|
}iot_cli_tput_report_t;
|
|
|
|
/**
|
|
* @brief (*iot_cli_tput_recv_func_t)() - callback to receive event from
|
|
* cli host.
|
|
* @param param: parameter registered in iot_cli_tput_interface_register
|
|
* @param pkt: buffer to store the event detail, application should call
|
|
* iot_free_pkt function ASAP to free the iot_pkt_t. it's very
|
|
* scarce resource.
|
|
*/
|
|
typedef void(*iot_cli_tput_recv_func_t)(void *param, iot_pkt_t *pkt);
|
|
|
|
typedef struct _iot_cli_tput_interface {
|
|
/** callback to receive event from cli host */
|
|
iot_cli_tput_recv_func_t recv;
|
|
/** parameter that will be transferred back alone with the callback */
|
|
void *param;
|
|
} iot_cli_tput_interface_t;
|
|
|
|
#pragma pack(pop) // restore the pack status
|
|
|
|
#if IOT_TPUT_APP_ENABLE
|
|
uint32_t iot_cli_tput_interface_register(iot_cli_tput_interface_t \
|
|
*cli_interface);
|
|
|
|
void iot_cli_tput_send_data_to_cli_interface(iot_pkt_t *pkt);
|
|
|
|
void iot_cli_tput_handle_msg(iot_pkt_t *pkt);
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|