Panda3D

numeric_types.h

00001 // Filename: numeric_types.h
00002 // Created by:  drose (06Jun00)
00003 //
00004 ////////////////////////////////////////////////////////////////////
00005 //
00006 // PANDA 3D SOFTWARE
00007 // Copyright (c) Carnegie Mellon University.  All rights reserved.
00008 //
00009 // All use of this software is subject to the terms of the revised BSD
00010 // license.  You should have received a copy of this license along
00011 // with this source code in a file named "LICENSE."
00012 //
00013 ////////////////////////////////////////////////////////////////////
00014 
00015 #ifndef NUMERIC_TYPES_H
00016 #define NUMERIC_TYPES_H
00017 
00018 #include "dtoolbase.h"
00019 
00020 // This header file defines a number of typedefs that correspond to
00021 // the various numeric types for unsigned and signed numbers of
00022 // various widths.
00023 
00024 #if defined(WIN32_VC) && !defined(CPPPARSER)
00025 typedef signed __int8  PN_int8;
00026 typedef signed __int16 PN_int16;
00027 typedef signed __int32 PN_int32;
00028 typedef signed __int64 PN_int64;
00029 
00030 typedef unsigned __int8  PN_uint8;
00031 typedef unsigned __int16 PN_uint16;
00032 typedef unsigned __int32 PN_uint32;
00033 typedef unsigned __int64 PN_uint64;
00034 
00035 #else
00036 
00037 typedef signed char PN_int8;
00038 typedef short int PN_int16;
00039 typedef int PN_int32;
00040 typedef long long int PN_int64;
00041 
00042 typedef unsigned char PN_uint8;
00043 typedef unsigned short int PN_uint16;
00044 typedef unsigned int PN_uint32;
00045 typedef unsigned long long int PN_uint64;
00046 
00047 #endif
00048 
00049 typedef double PN_float64;
00050 typedef float PN_float32;
00051 
00052 #ifndef STDFLOAT_DOUBLE
00053 // The default setting--single-precision floats.
00054 typedef float PN_stdfloat;
00055 #else  // STDFLOAT_DOUBLE
00056 // The specialty setting--double-precision floats.
00057 typedef double PN_stdfloat;
00058 #endif  // STDFLOAT_DOUBLE
00059 
00060 #endif
00061 
 All Classes Functions Variables Enumerations