/*
 *  Shinobi Library
 *  Copyright (c) 1998-2000 SEGA
 *  
 *      Global defines
 *
 *  Module  : Library Header File
 *  File    : sg_xpt.h
 *  Create  : 1998-03-30
 *  Modify  : 2000-03-08
 *  Version : 2.12
 *  Note    :  1. changed NULL,Bool in C++(0.42)
 *             2. bool,Bool (1.00)
 *             3. bool undefined in C++ (1.01)
 *             4. Float32, Float64, Double, bool, YES, NO deleted
 *                Int added (2.11)
 *             5. Clean up
 */

#ifndef _SG_XPT_H_
#define _SG_XPT_H_

/****** SWITCH **********************************************************/
#ifdef __cplusplus
#define EXTERN  extern "C"
#else
#define EXTERN  extern
#endif

/****** GLOBAL DECLARATION **********************************************/
#ifndef _TYPEDEF_Uint8
#define _TYPEDEF_Uint8
typedef unsigned char   Uint8;          /*  unsigned 1 byte integer     */
#endif
#ifndef _TYPEDEF_Sint8
#define _TYPEDEF_Sint8
typedef signed char     Sint8;          /*  signed 1 byte integer       */
#endif
#ifndef _TYPEDEF_Uint16
#define _TYPEDEF_Uint16
typedef unsigned short  Uint16;         /*  unsigned 2 byte integer     */
#endif
#ifndef _TYPEDEF_Sint16
#define _TYPEDEF_Sint16
typedef signed short    Sint16;         /*  signed 2 byte integer       */
#endif
#ifndef _TYPEDEF_Uint32
#define _TYPEDEF_Uint32
typedef unsigned long   Uint32;         /*  unsigned 4 byte integer     */
#endif
#ifndef _TYPEDEF_Sint32
#define _TYPEDEF_Sint32
typedef signed long     Sint32;         /*  signed 4 byte integer       */
#endif
#ifndef _TYPEDEF_Int
#define _TYPEDEF_Int
typedef int             Int;            /*  default integer             */
#endif
#ifndef _TYPEDEF_Float
#define _TYPEDEF_Float
typedef float           Float;          /*  4 byte real number          */
#endif
#ifndef _TYPEDEF_Void
#define _TYPEDEF_Void
typedef void            Void;           /*  void                        */
#endif
#ifndef _TYPEDEF_Bool
#define _TYPEDEF_Bool
typedef Sint32 Bool ;					/*  Bool                        */
#endif

/****** GLOBAL CONSTANT *************************************************/
#ifndef  NULL
#ifdef  __cplusplus
#define  NULL           (0)
#else
#define  NULL           ((void *)0)
#endif
#endif

#ifndef FALSE
#define FALSE           (0)
#endif
#ifndef TRUE
#define TRUE            (1)
#endif

#ifndef ON
#define ON              (1)
#endif
#ifndef OFF
#define OFF             (0)
#endif

/****** GLOBAL MACRO ****************************************************/
#ifndef MAX
#define MAX(x, y)       ((x) > (y) ? (x) : (y))             /* maximum  */
#endif
#ifndef MIN
#define MIN(x, y)       ((x) < (y) ? (x) : (y))             /* minimum  */
#endif
#ifndef ABS
#define ABS(x)          ((x) < 0 ? -(x) : (x))              /* absolute */
#endif


#endif
/****** End of file *****************************************************/
