#ifndef _TYPE_H_
 
#define _TYPE_H_
 
/**
 
 * \file    types.h
 
 * Type Definition of Variables.
 
 *
 
 * The simple data types supported by the W5300 programs are used to define function return values,
 
 * function and message parameters, and structure members.
 
 * They define the size and meaning of these elements.
 
 *
 
 */
 
 
 
 
 
typedef char int8;                        /**< The 8-bit signed data type. */
 
 
 
typedef volatile char vint8;              /**< The volatile 8-bit signed data type. */
 
                                           
 
typedef unsigned char uint8;              /**< The 8-bit unsigned data type. */
 
                                           
 
typedef volatile unsigned char vuint8;    /**< The volatile 8-bit unsigned data type. */
 
                                           
 
typedef short int16;                      /**< The 16-bit signed data type. */
 
                                           
 
typedef volatile short vint16;            /**< The volatile 16-bit signed data type. */
 
                                           
 
typedef unsigned short uint16;            /**< The 16-bit unsigned data type. */
 
                                           
 
typedef volatile unsigned short vuint16;  /**< The volatile 16-bit unsigned data type. */
 
                                           
 
typedef long int32;                       /**< The 32-bit signed data type. */
 
                                           
 
typedef volatile long vint32;             /**< The volatile 32-bit signed data type. */
 
                                           
 
typedef unsigned long uint32;             /**< The 32-bit unsigned data type. */
 
                                           
 
typedef volatile unsigned long vuint32;   /**< The volatile 32-bit unsigned data type. */
 
 
 
/**
 
 * The SOCKET data type.
 
 */
 
typedef uint8 SOCKET;
 
 
 
 
 
typedef unsigned long   ulong;
 
typedef unsigned short  ushort;
 
typedef unsigned char   uchar;
 
typedef unsigned int    uint;
 
 
 
#ifndef __cplusplus
 
typedef int                             bool;
 
#define true                    1
 
#define false                   0
 
#endif
 
 
 
// print in hex value.
 
// type= 8 : print in format "ff".
 
// type=16 : print in format "ffff".
 
// type=32 : print in format "ffffffff".
 
typedef enum {
 
        VAR_LONG=32,
 
        VAR_SHORT=16,
 
        VAR_CHAR=8
 
} VAR_TYPE;
 
 
 
#ifndef NULL
 
#define NULL (void *)0
 
#endif
 
 
 
#endif          /* _TYPE_H_ */