common.h

Go to the documentation of this file.
00001 
00002 #ifndef __PST_COMMON_H
00003 #define __PST_COMMON_H
00004 
00005 
00006 #include <stdlib.h>
00007 #include <stdio.h>
00008 #include <stdarg.h>
00009 #include <time.h>
00010 
00011 
00012 #ifndef  _MSC_VER
00013     #include <stdint.h>
00014     #include <inttypes.h>
00015 #else
00016     typedef signed char        int8_t;
00017     typedef unsigned char      uint8_t;
00018     typedef unsigned short     uint16_t;
00019     typedef short              int16_t;
00020     typedef unsigned int       uint32_t;
00021     typedef int                int32_t;
00022     typedef unsigned long long uint64_t;
00023     typedef long long          int64_t;
00024 #endif
00025 
00026 #ifndef _WIN32
00027     typedef struct {
00028         uint32_t  dwLowDateTime;
00029         uint32_t  dwHighDateTime;
00030     } FILETIME;
00031     // According to Jan Wolter, sys/param.h is the most portable source of endian
00032     // information on UNIX systems. see http://www.unixpapa.com/incnote/byteorder.html
00033     #include <sys/param.h>
00034 #else
00035     #include <windows.h>
00036 #endif
00037 
00038 #if defined(_WIN32) || defined(__DJGPP__)
00039     #ifndef LITTLE_ENDIAN
00040         #define LITTLE_ENDIAN 1234
00041     #endif
00042     #ifndef BIG_ENDIAN
00043         #define BIG_ENDIAN 4321
00044     #endif
00045     #define BYTE_ORDER LITTLE_ENDIAN
00046 #endif
00047 
00048 
00049 #endif
00050 
00051 #if defined (__SVR4) && defined (__sun)
00052     #define LITTLE_ENDIAN 1234
00053     #define BYTE_ORDER LITTLE_ENDIAN
00054 #endif

Generated on 6 Jul 2016 for libpst.so.4 by  doxygen 1.6.1