00001 /* ----------------------------------------------------------------------------
00002 Description : iXiONmedia library base declarations
00003 ----------------------------------------------------------------------------
00004 (c) Copyright 1996 by iXiONmedia, all rights reserved.
00005 ----------------------------------------------------------------------------
00006 This header must be C-safe for autoconf purposes.
00007 */
00008
00009
00010
00011
00012 #ifndef IXLIB_BASE
00013 #define IXLIB_BASE
00014
00015
00016
00017
00018 #ifdef HAVE_CONFIG_H
00019 #include <ixlib_config.hh>
00020 #undef PACKAGE
00021 #undef VERSION
00022 #endif
00023
00024
00025
00026
00027 #ifdef __cplusplus
00028 namespace ixion {
00029 extern "C" {
00030 #endif
00031 /* Aliases --------------------------------------------------------------------
00032 */
00033 const double Pi = 3.141592653589793285;
00034 const double Euler = 2.718281828;
00035 const double Gravity = 9.8065; // m/s^2
00036 const double UniGravity = 6.673e-11; // m^3/kg s^2
00037 const double Epsilon0 = 8.8542e-12; // F/m
00038 const double Mu0 = 1.2566e-6; // H/m
00039 const double LightSpeed = 2.9972e8; // m/s
00040 const double Planck = 6.6261e-34; // Js
00041
00042
00043
00044
00045 /* STL Helper macro -----------------------------------------------------------
00046 */
00047 #define FOREACH(VAR,LIST,LISTTYPE) \
00048 for (LISTTYPE::iterator VAR = (LIST).begin(),last = (LIST).end();VAR != last;VAR++)
00049 #define FOREACH_CONST(VAR,LIST,LISTTYPE) \
00050 for (LISTTYPE::const_iterator VAR = (LIST).begin(),last = (LIST).end();VAR != last;VAR++)
00051
00052
00053
00054
00055 /* Nomenclature typedefs ------------------------------------------------------
00056 */
00057 typedef unsigned char TUnsigned8;
00058 typedef unsigned short TUnsigned16;
00059 typedef unsigned long TUnsigned32;
00060 typedef unsigned long long TUnsigned64;
00061
00062 typedef signed char TSigned8;
00063 typedef signed short TSigned16;
00064 typedef signed long TSigned32;
00065 typedef signed long long TSigned64;
00066
00067 typedef TSigned8 TDelta8;
00068 typedef TSigned16 TDelta16;
00069 typedef TSigned32 TDelta32;
00070 typedef TSigned64 TDelta64;
00071 typedef signed TDelta;
00072
00073 typedef TUnsigned8 TSize8;
00074 typedef TUnsigned16 TSize16;
00075 typedef TUnsigned32 TSize32;
00076 typedef TUnsigned64 TSize64;
00077 typedef unsigned TSize;
00078
00079 typedef TUnsigned8 TIndex8;
00080 typedef TUnsigned16 TIndex16;
00081 typedef TUnsigned32 TIndex32;
00082 typedef TUnsigned64 TIndex64;
00083 typedef unsigned TIndex;
00084
00085 typedef TUnsigned8 TByte;
00086
00087
00088
00089
00090 int ixlibGetMajorVersion();
00091 int ixlibGetMinorVersion();
00092 int ixlibGetMicroVersion();
00093
00094 void ixlibInitI18n();
00095
00096
00097
00098
00099 #ifdef __cplusplus
00100 }
00101 }
00102 #endif
00103
00104
00105
00106
00107 #endif
1.2.11.1 written by Dimitri van Heesch,
© 1997-2001