/* * Module_PhBackend.h * * Created on: 2020/6/11 * Author: foluswen */ #ifndef MODULE_PHBACKEND_H_ #define MODULE_PHBACKEND_H_ #include <sys/time.h> #include <sys/timeb.h> #include <sys/types.h> #include <sys/stat.h> #include <sys/types.h> #include <sys/ioctl.h> #include <sys/socket.h> #include <sys/ipc.h> #include <sys/shm.h> #include <sys/shm.h> #include <sys/mman.h> #include <linux/wireless.h> #include <arpa/inet.h> #include <netinet/in.h> #include <unistd.h> #include <stdarg.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #include <termios.h> #include <errno.h> #include <errno.h> #include <string.h> #include <time.h> #include <ctype.h> #include <ifaddrs.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <netdb.h> #include <error.h> #include "define.h" #define DEBUG_INFO(format, args...) StoreLogMsg("[%s:%d][%s][Info] "format, __FILE__, __LINE__, __FUNCTION__, ##args) #define DEBUG_WARN(format, args...) StoreLogMsg("[%s:%d][%s][Warn] "format, __FILE__, __LINE__, __FUNCTION__, ##args) #define DEBUG_ERROR(format, args...) StoreLogMsg("[%s:%d][%s][Error] "format, __FILE__, __LINE__, __FUNCTION__, ##args) #define ARRAY_SIZE(A) (sizeof(A) / sizeof(A[0])) #define PASS 1 #define FAIL -1 #define ON 1 #define OFF 0 #define true 1 #define false 0 #define PROTOCOL_VER 0x00 struct Message { int size; uint8_t buffer[2048]; }; struct PH_Backend_Info { uint32_t st_hearbeat; uint32_t st_status; uint32_t interval_heartbeat; uint32_t interval_status; uint8_t retry_heartbeat; uint16_t sn_heartbeat; uint8_t counter_heartbeat_retry; uint8_t isSignin:1; }backend_info; struct SysConfigAndInfo *ShmSysConfigAndInfo; struct StatusCodeData *ShmStatusCodeData; uint16_t message_header = 0xffff; uint8_t server_addr[512]; uint16_t server_port; uint16_t server_cmd_sn = 0x0000;; uint16_t server_user_id = 0xffff; extern void handle_cmd_1001(struct Message *in, struct Message *out); extern void handle_cmd_1003(struct Message *in, struct Message *out); extern void handle_cmd_1005(struct Message *in, struct Message *out); extern void handle_cmd_1101(struct Message *in); extern void handle_cmd_1103(struct Message *in); extern void handle_cmd_1105(struct Message *in); extern void handle_cmd_2303(struct Message *in, struct Message *out); extern void handle_cmd_2305(struct Message *in, struct Message *out); extern void create_Cmd_1002(struct Message *out, uint8_t cmd_type, uint32_t address, uint32_t count); extern void create_Cmd_1004(struct Message *out, uint8_t cmd_type, uint32_t address, uint8_t *data, uint8_t data_len); extern void create_Cmd_1006(struct Message *out, uint8_t gun_index, uint32_t address, uint8_t count, uint8_t isExecuted); extern void create_Cmd_1102(struct Message *out); extern void create_Cmd_1104(struct Message *out, uint8_t gun_index); extern void create_Cmd_1106(struct Message *out); extern void create_Cmd_2304(struct Message *out); extern void create_Cmd_2306(struct Message *out); #endif /* MODULE_PHBACKEND_H_ */