Return to Config.h CVS log | Up to [Pegasus] / pegasus / src / Pegasus / Common |
1 mike 1.18 //%///////////////////////////////////////////////////////////////////////////// 2 // 3 // Copyright (c) 2000, 2001 The Open group, BMC Software, Tivoli Systems, IBM 4 // 5 // Permission is hereby granted, free of charge, to any person obtaining a copy 6 // of this software and associated documentation files (the "Software"), to 7 // deal in the Software without restriction, including without limitation the 8 // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or 9 // sell copies of the Software, and to permit persons to whom the Software is 10 // furnished to do so, subject to the following conditions: 11 // 12 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN 13 // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED 14 // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 15 // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR 16 // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 17 // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 18 // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 19 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 20 // 21 //============================================================================== 22 mike 1.18 // 23 // Author: Mike Brasher (mbrasher@bmc.com) 24 // 25 // Modified By: 26 // 27 //%///////////////////////////////////////////////////////////////////////////// 28 29 #ifndef Pegasus_Config_h 30 #define Pegasus_Config_h 31 32 #include <iostream> 33 #include <cstdlib> 34 35 #if defined(PEGASUS_PLATFORM_WIN32_IX86_MSVC) 36 # include <Pegasus/Common/Platform_WIN32_IX86_MSVC.h> 37 #elif defined (PEGASUS_PLATFORM_LINUX_IX86_GNU) 38 # include <Pegasus/Common/Platform_LINUX_IX86_GNU.h> 39 #elif defined (PEGASUS_PLATFORM_AIX_RS_IBMCXX) 40 # include <Pegasus/Common/Platform_AIX_RS_IBMCXX.h> 41 #elif defined (PEGASUS_PLATFORM_HPUX_PARISC_ACC) 42 # include <Pegasus/Common/Platform_HPUX_PARISC_ACC.h> | ||
43 mike 1.19 #elif defined (PEGASUS_PLATFORM_TRU64_ALPHA_DECCXX) 44 # include <Pegasus/Common/Platform_TRU64_ALPHA_DECCXX.h> | ||
45 mike 1.18 #else 46 # error "<Pegasus/Common/Config.h>: Unsupported Platform" 47 #endif 48 49 #ifdef PEGASUS_HAVE_NAMESPACES 50 # define PEGASUS_NAMESPACE_BEGIN namespace Pegasus { 51 # define PEGASUS_NAMESPACE_END } 52 # define PEGASUS_STD(X) std::X 53 # define PEGASUS_USING_STD using namespace std 54 # define PEGASUS_USING_PEGASUS using namespace Pegasus 55 #else 56 # define PEGASUS_NAMESPACE_BEGIN /* empty */ 57 # define PEGASUS_NAMESPACE_END /* empty */ 58 # define PEGASUS_STD(X) X 59 # define PEGASUS_USING_STD 60 # define PEGASUS_USING_PEGASUS 61 #endif 62 63 #ifdef PEGASUS_HAVE_EXPLICIT 64 # define PEGASUS_EXPLICIT explicit 65 #else 66 mike 1.18 # define PEGASUS_EXPLICIT /* empty */ 67 #endif 68 69 #ifdef PEGASUS_HAVE_MUTABLE 70 # define PEGASUS_MUTABLE mutable 71 #else 72 # define PEGASUS_MUTABLE /* empty */ 73 #endif 74 75 #ifndef PEGASUS_HAVE_FOR_SCOPE 76 # define for if (0) ; else for 77 #endif 78 79 #ifdef PEGASUS_HAVE_TEMPLATE_SPECIALIZATION 80 # define PEGASUS_TEMPLATE_SPECIALIZATION template <> 81 #else 82 # define PEGASUS_TEMPLATE_SPECIALIZATION 83 #endif 84 85 PEGASUS_NAMESPACE_BEGIN 86 87 mike 1.18 #ifdef PEGASUS_HAVE_BOOLEAN 88 typedef bool Boolean; 89 #else 90 # include <Pegasus/Common/Boolean.h> 91 #endif 92 93 typedef unsigned char Uint8; 94 typedef char Sint8; 95 typedef unsigned short Uint16; 96 typedef short Sint16; 97 typedef unsigned int Uint32; 98 typedef int Sint32; 99 typedef float Real32; 100 typedef double Real64; 101 typedef PEGASUS_UINT64 Uint64; 102 typedef PEGASUS_SINT64 Sint64; 103 104 #define PEGASUS_NOT_FOUND Uint32(-1) 105 #define PEG_NOT_FOUND Uint32(-1) 106 107 PEGASUS_NAMESPACE_END 108 mike 1.18 109 #define PEGASUS_TRACE \ 110 PEGASUS_STD(cout) << __FILE__ << '(' << __LINE__ << ')' << PEGASUS_STD(endl) 111 112 #define PEGASUS_OUT(X) \ 113 PEGASUS_STD(cout) << #X << "=[" << X << "]" << PEGASUS_STD(endl) 114 115 #endif /* Pegasus_Config_h */ |
No CVS admin address has been configured |
Powered by ViewCVS 0.9.2 |