66 lines
2.2 KiB
C
66 lines
2.2 KiB
C
/*
|
|
* Copyright (c) CompanyNameMagicTag 2019-2020. All rights reserved.
|
|
* Description: MRS STA plc handle.
|
|
*/
|
|
|
|
#ifndef __MRS_STA_PLC_H__
|
|
#define __MRS_STA_PLC_H__
|
|
|
|
#include "mrs_common_plc.h"
|
|
|
|
#if defined(PRODUCT_CFG_PRODUCT_TYPE_STA)
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef td_void (*mrs_sta_plc_rx_callback)(EXT_CONST mrs_plc_frame_data *plc);
|
|
|
|
td_void mrs_sta_register_plc_rx_xr_notify(mrs_sta_plc_rx_callback notify);
|
|
td_void mrs_sta_register_plc_rx_pr_notify(mrs_sta_plc_rx_callback notify);
|
|
td_void mrs_sta_register_plc_rx_bc_notify(mrs_sta_plc_rx_callback notify);
|
|
td_void mrs_sta_register_plc_rx_ciu_notify(mrs_sta_plc_rx_callback notify);
|
|
|
|
/* processing for recieving transparent PLC frame */
|
|
td_void mrs_sta_xr_plc_frame_rx(EXT_CONST mrs_plc_frame_data *plc);
|
|
|
|
/* processing for recieving parallel PLC frame */
|
|
td_void mrs_sta_pr_plc_frame_rx(EXT_CONST mrs_plc_frame_data *plc);
|
|
|
|
/* processing for recieving braodcast PLC frame */
|
|
td_void mrs_broadcast_plc_frame_rx(EXT_CONST mrs_plc_frame_data *plc);
|
|
|
|
/* PLC channel status */
|
|
td_bool mrs_sta_plc_chl_status(td_void);
|
|
|
|
/* set STA address */
|
|
td_void mrs_sta_set_mac_addr(const td_u8 mac[EXT_METER_ADDR_LEN]);
|
|
|
|
/* Received event on PLC */
|
|
td_void mrs_sta_evt_plc_frame_rx(const mrs_plc_frame_data *plc);
|
|
|
|
td_void mrs_sta_tf_plc_frame_rx(EXT_CONST mrs_plc_frame_data *plc);
|
|
|
|
/* CIU frame */
|
|
td_void mrs_sta_ciu_plc_frame_rx(EXT_CONST mrs_plc_frame_data *plc);
|
|
|
|
/* query station info */
|
|
td_void mrs_sta_qry_plc_frame_rx(const mrs_plc_frame_data *plc);
|
|
|
|
/* STA equip test frame */
|
|
td_void mrs_sta_dut_plc_frame_rx(EXT_CONST mrs_plc_frame_data *plc);
|
|
|
|
#define mrs_xr_plc_frame_rx(plc) mrs_sta_xr_plc_frame_rx(plc)
|
|
#define mrs_pr_plc_frame_rx(plc) mrs_sta_pr_plc_frame_rx(plc)
|
|
#define mrs_bc_plc_frame_rx(plc) mrs_broadcast_plc_frame_rx(plc)
|
|
#define mrs_evt_plc_frame_rx(plc) mrs_sta_evt_plc_frame_rx(plc)
|
|
#define mrs_tf_plc_frame_rx(plc) mrs_sta_tf_plc_frame_rx(plc)
|
|
#define mrs_ciu_plc_frame_rx(plc) mrs_sta_ciu_plc_frame_rx(plc)
|
|
#define mrs_qry_plc_frame_rx(plc) mrs_sta_qry_plc_frame_rx(plc)
|
|
#define mrs_cco_dut_plc_frame_rx(plc)
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* defined(PRODUCT_CFG_PRODUCT_TYPE_STA) */
|
|
#endif /* __MRS_STA_PLC_H__ */ |