Добавление совместимости с старым API
This commit is contained in:
@@ -5,17 +5,64 @@
|
||||
*******************************************************************************
|
||||
* @details Файл содержит API старых функций, а также заглушки для отключенных модулей:
|
||||
******************************************************************************/
|
||||
#ifndef __MODBUS_COMPAT_H_
|
||||
#define __MODBUS_COMPAT_H_
|
||||
#include "modbus_core.h"
|
||||
|
||||
|
||||
#define CREATE_DEPRECATED_ALIAS(old_name, new_name, type) \
|
||||
__attribute__((deprecated("Use " #new_name " instead"))) \
|
||||
static const type old_name = new_name;
|
||||
|
||||
// Для функций
|
||||
#define CREATE_DEPRECATED_FUNCTION(old_name, new_name, return_type, ...) \
|
||||
__attribute__((deprecated("Use " #new_name " instead"))) \
|
||||
return_type old_name(__VA_ARGS__) { \
|
||||
return new_name(__VA_ARGS__); \
|
||||
}
|
||||
|
||||
/** @addtogroup MODBUS_LEGACY_API Legacy API
|
||||
* @ingroup MODBUS_FUNCTIONS
|
||||
* @brief Старые API функций, сохранённые для обратной совместимости.
|
||||
* @note Не используйте эти функции в новом коде. Они могут быть удалены в будущих версиях.
|
||||
* Вместо них используйте функции из основных групп MODBUS API.
|
||||
* @note Не используйте эти функции в новом коде. Они будут удалены в будущих версиях.
|
||||
* Вместо них используйте актуальные API, приведенные в втором столбце.
|
||||
* @{
|
||||
*/
|
||||
|
||||
// Устаревшие enum //Старый замените на // Новый
|
||||
// | // |
|
||||
// v // v
|
||||
CREATE_DEPRECATED_ALIAS(NO_ERRORS, ET_NO_ERRORS, MB_ExceptionTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(ILLEGAL_FUNCTION, ET_ILLEGAL_FUNCTION, MB_ExceptionTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(ILLEGAL_DATA_ADDRESS, ET_ILLEGAL_DATA_ADDRESS, MB_ExceptionTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(ILLEGAL_DATA_VALUE, ET_ILLEGAL_DATA_VALUE, MB_ExceptionTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(SLAVE_DEVICE_FAILURE, ET_SLAVE_DEVICE_FAILURE, MB_ExceptionTypeDef);
|
||||
|
||||
CREATE_DEPRECATED_ALIAS(MB_R_COILS, FC_R_COILS, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_R_DISC_IN, FC_R_DISC_IN, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_R_HOLD_REGS, FC_R_HOLD_REGS, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_R_IN_REGS, FC_R_IN_REGS, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_W_COIL, FC_W_COIL, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_W_HOLD_REG, FC_W_HOLD_REG, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_W_COILS, FC_W_COILS, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_W_HOLD_REGS, FC_W_HOLD_REGS, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_R_DIAGNOSTICS, FC_R_DIAGNOSTICS, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_R_DEVICE_ID, FC_R_DEVICE_ID, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_ERR_R_COILS, FC_ERR_R_COILS, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_ERR_R_DISC_IN, FC_ERR_R_DISC_IN, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_ERR_R_IN_REGS, FC_ERR_R_IN_REGS, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_ERR_R_HOLD_REGS, FC_ERR_R_HOLD_REGS, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_ERR_W_COIL, FC_ERR_W_COIL, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_ERR_W_HOLD_REG, FC_ERR_W_HOLD_REG, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_ERR_W_COILS, FC_ERR_W_COILS, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_ERR_W_HOLD_REGS, FC_ERR_W_HOLD_REGS, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_ERR_R_DIAGNOSTIC, FC_ERR_R_DIAGNOSTIC, MB_FunctonTypeDef);
|
||||
CREATE_DEPRECATED_ALIAS(MB_ERR_R_DEVICE_INFO, FC_ERR_R_DEVICE_INFO, MB_FunctonTypeDef);
|
||||
|
||||
CREATE_DEPRECATED_ALIAS(MB_BASIC_IDENTIFICATIONS, RID_BASIC_IDENTIFICATIONS, MB_ReadDevId);
|
||||
CREATE_DEPRECATED_ALIAS(MB_REGULAR_IDENTIFICATIONS, RID_REGULAR_IDENTIFICATIONS, MB_ReadDevId);
|
||||
CREATE_DEPRECATED_ALIAS(MB_EXTENDED_IDENTIFICATIONS, RID_EXTENDED_IDENTIFICATIONS, MB_ReadDevId);
|
||||
CREATE_DEPRECATED_ALIAS(MB_SPEDIFIC_IDENTIFICATIONS, RID_SPEDIFIC_IDENTIFICATIONS, MB_ReadDevId);
|
||||
|
||||
|
||||
/** MODBUS_LEGACY_API
|
||||
@@ -114,5 +161,5 @@
|
||||
#define MB_Slave_Collect_Message(hmodbus, modbus_msg, modbus_uart_buff) RS_ERR
|
||||
#define MB_Slave_Parse_Message(hmodbus, modbus_msg, modbus_uart_buff) RS_ERR
|
||||
#endif
|
||||
|
||||
/** @endcond */
|
||||
#endif //__MODBUS_COMPAT_H_
|
||||
Reference in New Issue
Block a user