/** * @file: $RCSfile: platform.h,v $ * @brief: $为平台无关性而定义的基本数据等的定义 * * @version: $Revision: 1.1 $ * @date: $Date: 2018/11/24 06:54:50 $ * @author: $Author: lizhongming $ * @state: $State: Exp $ * * @latest: $Id: platform.h,v 1.1 2018/11/24 06:54:50 lizhongming Exp $ */ #ifndef _PLATFORM_H #define _PLATFORM_H #ifdef __cplusplus #define C_MODE_START extern "C" { #define C_MODE_END } #else #define C_MODE_START #define C_MODE_END #endif /********************************************************************* * Linux & GCC platform dependencies */ #ifdef __GNUC__ #ifndef _OS_UNIX_ #define _OS_UNIX_ #endif #include #include #include #include #include #include #include #include #include #include #ifndef USRDEFINEBAUD #include #include #endif #include #include #include typedef unsigned char byte_t; typedef unsigned char uchar_t; typedef unsigned short ushort_t; typedef unsigned int uint_t; typedef unsigned long ulong_t; typedef float float32_t; typedef double float64_t; #define ALIGNPACKED __attribute__((packed)) #endif /* __GNUC__ */ /* Linux & GCC platform dependencies *********************************************************************/ /********************************************************************* * VS.NET 2003 platform dependencies */ #ifdef _MSC_VER #ifndef _OS_WIN32_ #define _OS_WIN32_ #endif #ifndef ACE_USED #ifndef _AFX_ALL_WARNINGS #include #endif #endif #include #include #include #include #include /** * Basic system type definitions, taken from the BSD file sys/types.h. */ typedef unsigned char uchar_t; typedef unsigned short ushort_t; typedef unsigned int uint_t; typedef unsigned long ulong_t; typedef unsigned char byte_t; typedef unsigned int uint_t; typedef char int8_t; typedef unsigned char uint8_t; typedef short int16_t; typedef unsigned short uint16_t; typedef int int32_t; typedef unsigned int uint32_t; typedef __int64 int64_t; typedef unsigned __int64 uint64_t; typedef float float32_t; typedef double float64_t; #define ALIGNPACKED #endif /* _MSC_VER */ /* Win32 & VC++ 6.0 platform dependencies *********************************************************************/ #ifndef LITTLE_ENDIAN #define LITTLE_ENDIAN 1 #endif #ifndef BIG_ENDIAN #define BIG_ENDIAN 2 #endif #ifndef BYTE_ORDER #define BYTE_ORDER LITTLE_ENDIAN #endif #ifndef FALSE #define FALSE ((char)0) #endif #ifndef TRUE #define TRUE (!(FALSE)) #endif #ifndef false #define false ((char)0) #endif #ifndef true #define true (!(false)) #endif #endif /* _PLATFORM_H */