r68: Added C++ compatibility
[ctsim.git] / include / kstddef.h
index 2f1349299ccd9b16eee048ebe981b1b55dfd1b81..f02ea8dd6b27c01201fa949e409a08d91b7d5cc3 100644 (file)
@@ -2,8 +2,11 @@
 **  This is part of the CTSim program
 **  Copyright (C) 1983-2000 Kevin Rosenberg
 **
-**  $Id: kstddef.h,v 1.11 2000/06/03 06:29:08 kevin Exp $
+**  $Id: kstddef.h,v 1.12 2000/06/05 01:32:45 kevin Exp $
 **  $Log: kstddef.h,v $
+**  Revision 1.12  2000/06/05 01:32:45  kevin
+**  Added C++ compatibility
+**
 **  Revision 1.11  2000/06/03 06:29:08  kevin
 **  *** empty log message ***
 **
 #ifndef STDDEF_H
 #define STDDEF_H
 
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#ifdef _WIN32
+#define snprintf _snprintf
+#endif
+
+#if !defined(bool) && !defined(__cplusplus)
+typedef int bool;              /* Boolean variable type */
+#endif
+
+#define STR_MAX_LEN 255
+#define STR_SIZE    STR_MAX_LEN+1
+
+typedef unsigned char string[STR_SIZE];
+
 #ifdef __cplusplus
 extern "C" {
 #endif /* __cplusplus */
@@ -80,15 +100,6 @@ extern "C" {
 
 #undef SHELL
 
-#define STR_MAX_LEN 255
-#define STR_SIZE    STR_MAX_LEN+1
-
-#ifndef bool
-typedef signed int bool;               /* Boolean variable type */
-#endif
-
-typedef unsigned char string[STR_SIZE];
-
 #define TRUE   1
 #define FALSE  0
 #define OK     TRUE
@@ -135,7 +146,7 @@ typedef unsigned char string[STR_SIZE];
 /*----------------------------------------------------------------------*/
 
 struct time_st {
-       int hour, minute, second, hs;
+       int hour, minute, second, ms;
 };
 
 struct date_st {
@@ -190,6 +201,39 @@ typedef struct timedate_st TIMEDATE;
 #define S_IWRITE S_IWUSR
 #endif
 
+/*----------------------------------------------------------------------*/
+
+#if defined(MICROSOFT) || ! defined(SIZEOF_INT)
+   #define SIZEOF_INT 4
+   #define SIZEOF_LONG 4
+   #define SIZEOF_SHORT 2
+   #define SIZEOF_FLOAT 4
+   #define SIZEOF_DOUBLE 8
+#endif
+
+#if SIZEOF_INT == 4
+    typedef int kint32;
+    typedef unsigned int kuint32;
+#elif SIZEOF_LONG == 4
+    typedef long int kint32;
+    typedef unsigned int kuint32;
+#endif
+
+#if SIZEOF_SHORT == 2
+    typedef short int kint16;
+    typedef unsigned short int kuint16;
+#elif SIZEOF_INT == 2
+    typedef int kint16;
+    typedef unsigned int kuint16;
+#endif
+
+#if SIZEOF_FLOAT == 4
+    typedef float kfloat32;
+#endif
+#if SIZEOF_DOUBLE == 8
+    typedef double kfloat64;
+#endif
+
 /* allocnum.c */
 float *alloc_float(int n);
 double *alloc_double(int n);
@@ -254,20 +298,12 @@ char *td_day_name(int n);
 
 /* netorder.c */
 void *strreverse (void *dest, const void *src, size_t n);
-#if SIZEOF_SHORT == 4
-int read_n32bint (unsigned short *n, int fd);
-int write_n32bint (unsigned short const *n, int fd);
-#elif SIZEOF_LONG == 4
-int read_n32bint (unsigned long *n, int fd);
-int write_n32bint (unsigned long const *n, int fd);
-#else
-int read_n32bint (unsigned int *n, int fd);
-int write_n32bint (unsigned int const *n, int fd);
-#endif
-int read_nfloat (float *f, int fd);
-int write_nfloat (float const *f, int fd);
-int read_ndouble (double *d, int fd);
-int write_ndouble (double const *d, int fd);
+int read_n32bint (kuint32 *n, int fd);
+int write_n32bint (kuint32 const *n, int fd);
+int read_nfloat32 (float *f, int fd);
+int write_nfloat32 (float const *f, int fd);
+int read_nfloat64 (double *d, int fd);
+int write_nfloat64 (double const *d, int fd);
 
 #ifdef __cplusplus
 }