1 /*
2  *  Copyright (c) 2000-2008 LSI Corporation.
3  *
4  *
5  *           Name:  mpi_type.h
6  *          Title:  MPI Basic type definitions
7  *  Creation Date:  June 6, 2000
8  *
9  *    mpi_type.h Version:  01.05.02
10  *
11  *  Version History
12  *  ---------------
13  *
14  *  Date      Version   Description
15  *  --------  --------  ------------------------------------------------------
16  *  05-08-00  00.10.01  Original release for 0.10 spec dated 4/26/2000.
17  *  06-06-00  01.00.01  Update version number for 1.0 release.
18  *  11-02-00  01.01.01  Original release for post 1.0 work
19  *  02-20-01  01.01.02  Added define and ifdef for MPI_POINTER.
20  *  08-08-01  01.02.01  Original release for v1.2 work.
21  *  05-11-04  01.03.01  Original release for MPI v1.3.
22  *  08-19-04  01.05.01  Original release for MPI v1.5.
23  *  --------------------------------------------------------------------------
24  */
25 
26 #ifndef MPI_TYPE_H
27 #define MPI_TYPE_H
28 
29 
30 /*******************************************************************************
31  * Define MPI_POINTER if it hasn't already been defined. By default MPI_POINTER
32  * is defined to be a near pointer. MPI_POINTER can be defined as a far pointer
33  * by defining MPI_POINTER as "far *" before this header file is included.
34  */
35 #ifndef MPI_POINTER
36 #define MPI_POINTER     *
37 #endif
38 
39 
40 /*****************************************************************************
41 *
42 *               B a s i c    T y p e s
43 *
44 *****************************************************************************/
45 
46 typedef signed   char   S8;
47 typedef unsigned char   U8;
48 typedef signed   short  S16;
49 typedef unsigned short  U16;
50 
51 
52 typedef int32_t   S32;
53 typedef u_int32_t U32;
54 
55 typedef struct _S64
56 {
57     U32          Low;
58     S32          High;
59 } S64;
60 
61 typedef struct _U64
62 {
63     U32          Low;
64     U32          High;
65 } U64;
66 
67 
68 /****************************************************************************/
69 /*  Pointers                                                                */
70 /****************************************************************************/
71 
72 typedef S8      *PS8;
73 typedef U8      *PU8;
74 typedef S16     *PS16;
75 typedef U16     *PU16;
76 typedef S32     *PS32;
77 typedef U32     *PU32;
78 typedef S64     *PS64;
79 typedef U64     *PU64;
80 
81 
82 #endif
83 
84