/************************************************* Copyright (C), 2023-- 文件名: typedef.h 作 者: wangbo 日 期: 2023-08-24 描 叙: 本文件主要提供基本的 类型申明 函数列表: 无 历史记录: 1: 日期 : 2023-08-24 作者 : wangbo 描叙 : 新创建文件 *************************************************/ #ifndef _TPYEDEF_H #define _TPYEDEF_H #ifdef __cplusplus #if __cplusplus extern "C" { #endif #endif /* __cplusplus */ #include #include #include #include #include #include #include //#include #include #include #include #include #include #include #include #include #include #include #include #include #include // flock函数 /************************************************************************ 网络相关 ************************************************************************/ #include #include #include #include #include #include #include #include #include #include #include #include // tcp keepalive #include #include #include #include #include #include #define ZERO_INIT {} #define NFDS_FOR_SELECT(sock) ((sock) + 1) #ifndef TRUE #define TRUE 1 #endif #ifndef FALSE #define FALSE 0 #endif #ifndef SUCCESS #define SUCCESS 0 #endif #ifndef FAILURE #define FAILURE -1 #endif // 整型环境, 内核使用的类型 typedef char s8; typedef unsigned char u8; typedef short s16; typedef unsigned short u16; typedef int s32; typedef unsigned int u32; #if defined WIN32 typedef __int64 s64; typedef unsigned __int64 u64; #else typedef long long s64; typedef unsigned long long u64; #endif typedef int TIMER_T; typedef int socket_t; typedef pid_t ThreadId_T; typedef pid_t ProcessId_T; /// < 进程id typedef pthread_t Thread_T; typedef pid_t Process_T; typedef void * ThreadResult_T; typedef void * ThreadParam_T; typedef unsigned int TimeTick_T; typedef int DevHandle_T; typedef int Semaphore_T; #define ThreadProcSpec #define INVALID_THREAD (Thread_T)(~0) #define INVALID_SOCKET (~0) #define INVALID_TIMER (-1) typedef pthread_mutex_t Mutex_T; /// @brief 线程函数指针类型 typedef ThreadResult_T (ThreadProcSpec* ThreadProc_T)(ThreadParam_T param); // max / min #ifndef MAX #define MAX(a,b) ((a) > (b) ? (a) : (b)) #endif #ifndef MIN #define MIN(a,b) ((a) > (b) ? (b) : (a)) #endif #ifndef setbitEx #ifndef NBBYTE //the BSD family defines NBBY #define NBBYTE 8 //8 bits per byte #endif #define setbit(a, i) (((unsigned char *)a)[(i)/NBBYTE] |= 1<<((i)%NBBYTE)) #define clrbit(a, i) (((unsigned char *)a)[(i)/NBBYTE] &= ~(1<<((i)%NBBYTE))) #define isset(a, i) (((const unsigned char *)a)[(i)/NBBYTE] & (1<<((i)%NBBYTE))) #define isclr(a, i) ((((const unsigned char *)a)[(i)/NBBYTE] & (1<<((i)%NBBYTE))) == 0) #endif #ifdef __cplusplus #if __cplusplus } #endif #endif /* __cplusplus */ #endif /*_TPYEDEF_H*/