📄 mpros.h
字号:
/* * @file mprOs.h * @brief Include O/S headers and smooth out per-O/S differences * @copy default * * Copyright (c) Mbedthis Software LLC, 2003-2006. All Rights Reserved. * * This software is distributed under commercial and open source licenses. * You may use the GPL open source license described below or you may acquire * a commercial license from Mbedthis Software. You agree to be fully bound * by the terms of either license. Consult the LICENSE.TXT distributed with * this software for full details. * * This software is open source; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or (at your * option) any later version. See the GNU General Public License for more * details at: http://www.mbedthis.com/downloads/gplLicense.html * * This program is distributed WITHOUT ANY WARRANTY; without even the * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * * This GPL license does NOT permit incorporating this software into * proprietary programs. If you are unable to comply with the GPL, you must * acquire a commercial license to use this software. Commercial licenses * for this software and support services are available from Mbedthis * Software at http://www.mbedthis.com * * @end *//******************************* Documentation ********************************//* * This header is part of the Mbedthis Portable Runtime and aims to include * all necessary O/S headers and to unify the constants and declarations * required by Mbedthis products. It can be included by C or C++ programs. *//******************************************************************************/#ifndef _h_MPR_OS_HDRS#define _h_MPR_OS_HDRS 1#include "buildConfig.h"/********************************* CPU Families *******************************//* * Porters, add your CPU families here and update configure code. */#define MPR_CPU_UNKNOWN 0#define MPR_CPU_IX86 1#define MPR_CPU_PPC 2#define MPR_CPU_SPARC 3#define MPR_CPU_XSCALE 4#define MPR_CPU_ARM 5#define MPR_CPU_MIPS 6#define MPR_CPU_68K 7#define MPR_CPU_SIMNT 8 /* VxWorks NT simulator */#define MPR_CPU_SIMSPARC 9 /* VxWorks sparc simulator *//********************************* O/S Includes *******************************/#if LINUX || SOLARIS #include <sys/types.h> #include <time.h> #include <arpa/inet.h> #include <ctype.h> #include <dirent.h> #include <dlfcn.h> #include <fcntl.h> #include <grp.h> #include <errno.h> #include <libgen.h> #include <limits.h> #include <netdb.h> #include <net/if.h> #include <netinet/in.h> #include <netinet/tcp.h> #include <netinet/ip.h> #include <pthread.h> #include <pwd.h> #include <resolv.h> #include <signal.h> #include <stdarg.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <syslog.h> #include <sys/ioctl.h> #include <sys/stat.h> #include <sys/param.h> #include <sys/resource.h> #include <sys/sem.h> #include <sys/shm.h> #include <sys/socket.h> #include <sys/select.h> #include <sys/time.h> #include <sys/times.h> #include <sys/utsname.h> #include <sys/wait.h> #include <unistd.h>#if LINUX #include <stdint.h>#endif#if SOLARIS #include <netinet/in_systm.h>#endif#if BLD_FEATURE_FLOATING_POINT #define __USE_ISOC99 1 #include <math.h> #include <values.h>#endif#endif /* LINUX || SOLARIS */#if VXWORKS #include <vxWorks.h> #include <envLib.h> #include <sys/types.h> #include <time.h> #include <arpa/inet.h> #include <ctype.h> #include <dirent.h> #include <fcntl.h> #include <errno.h> #include <limits.h> #include <loadLib.h> #include <netdb.h> #include <net/if.h> #include <netinet/tcp.h> #include <netinet/in.h> #include <netinet/ip.h> #include <signal.h> #include <stdarg.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sysSymTbl.h> #include <sys/fcntlcom.h> #include <sys/ioctl.h> #include <sys/stat.h> #include <sys/socket.h> #include <sys/times.h> #include <sys/wait.h> #include <unistd.h> #include <unldLib.h> #if BLD_FEATURE_FLOATING_POINT #include <float.h> #define __USE_ISOC99 1 #include <math.h> #endif #include <sockLib.h> #include <inetLib.h> #include <ioLib.h> #include <pipeDrv.h> #include <hostLib.h> #include <netdb.h> #include <tickLib.h> #include <taskHookLib.h>#endif /* VXWORKS */#if MACOSX #include <time.h> #include <arpa/inet.h> #include <ctype.h> #include <fcntl.h> #include <grp.h> #include <errno.h> #include <libgen.h> #include <limits.h> #include <mach-o/dyld.h> #include <netdb.h> #include <net/if.h> #include <netinet/in_systm.h> #include <netinet/in.h> #include <netinet/tcp.h> #include <netinet/ip.h> #include <pthread.h> #include <pwd.h> #include <resolv.h> #include <signal.h> #include <stdarg.h> #include <stdio.h> #include <stdlib.h> #include <stdint.h> #include <string.h> #include <syslog.h> #include <sys/ioctl.h> #include <sys/types.h> #include <sys/stat.h> #include <sys/param.h> #include <sys/resource.h> #include <sys/sem.h> #include <sys/shm.h> #include <sys/socket.h> #include <sys/select.h> #include <sys/time.h> #include <sys/times.h> #include <sys/types.h> #include <sys/utsname.h> #include <sys/wait.h> #include <unistd.h>#endif /* MACOSX */#if WIN /* * We replace insecure functions with Mbedthis replacements */ #define _CRT_SECURE_NO_DEPRECATE 1 #include <ctype.h> #include <conio.h> #include <direct.h> #include <errno.h> #include <fcntl.h> #include <io.h> #include <limits.h> #include <malloc.h> #include <process.h> #include <sys/stat.h> #include <sys/types.h> #include <stddef.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <stdarg.h> #include <time.h> #define WIN32_LEAN_AND_MEAN #include <winsock2.h> #include <windows.h> #include <winbase.h> #if BLD_FEATURE_FLOATING_POINT #include <float.h> #endif #include <shlobj.h> #include <shellapi.h> #include <wincrypt.h>#if BLD_DEBUG #include <crtdbg.h>#endif #include "mprUnix.h"#endif /* WIN */#if BREW #if BLD_FEATURE_FLOATING_POINT #warning "Floating point is not supported on Brew" #endif #if BLD_FEATURE_MULTITHREAD #warning "Multithreading is not supported on Brew" #endif #include "AEEModGen.h" #include "AEEAppGen.h" #include "BREWVersion.h" #if BREW_MAJ_VER == 2 /* * Fix for BREW 2.X */ #ifdef __GNUC__ #define __inline extern __inline__ #endif #include "AEENet.h" #undef __inline #endif #include "AEE.h" #include "AEEBitmap.h" #include "AEEDisp.h" #include "AEEFile.h" #include "AEEHeap.h" #include "AEEImageCtl.h" #include "AEEMedia.h" #include "AEEMediaUtil.h" #include "AEEMimeTypes.h" #include "AEEStdLib.h" #include "AEEShell.h" #include "AEESoundPlayer.h" #include "AEEText.h" #include "AEETransform.h" #include "AEEWeb.h" #if BREW_MAJ_VER >= 3 #include "AEESMS.h" #endif #include "AEETAPI.h"#if 0 #include "AEESound.h" #include "AEEDb.h" #include "AEEMenu.h"#endif#endif /* BREW *//******************************************************************************//******************************* General Defines ******************************//******************************************************************************/#ifndef MAXINT#if INT_MAX #define MAXINT INT_MAX#else #define MAXINT 0x7fffffff#endif#endif#ifndef BITSPERBYTE#define BITSPERBYTE (8 * sizeof(char))#endif#define BITS(type) (BITSPERBYTE * (int) sizeof(type))#ifndef max#define max(a,b) (((a) > (b)) ? (a) : (b))#endif#ifndef min#define min(a,b) (((a) < (b)) ? (a) : (b))#endif#define MPR_ARRAY_SIZE(type) (sizeof(type) / sizeof(type[0]))#ifndef PRINTF_ATTRIBUTE#if (__GNUC__ >= 3) && !DOXYGEN && BLD_FEATURE_ALLOC_LEAK_TRACK/** Use gcc attribute to check printf fns. a1 is the 1-based index of * the parameter containing the format, and a2 the index of the first * argument. Note that some gcc 2.x versions don't handle this * properly **/#define PRINTF_ATTRIBUTE(a1, a2) __attribute__ ((format (__printf__, a1, a2)))#else#define PRINTF_ATTRIBUTE(a1, a2)#endif#endiftypedef char *MprStr; /* Used for dynamic strings */#ifdef __cplusplusextern "C" {#elsetypedef int bool;#endif/******************************************************************************//******************************** Linux Defines *******************************//******************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -