(file) Return to Config.h CVS log (file) (dir) 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