Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 1 | /* |
Forest Bond | 66252c3 | 2009-06-13 07:38:40 -0400 | [diff] [blame] | 2 | * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc. |
| 3 | * All rights reserved. |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 4 | * |
| 5 | * This program is free software; you can redistribute it and/or modify |
| 6 | * it under the terms of the GNU General Public License as published by |
| 7 | * the Free Software Foundation; either version 2 of the License, or |
| 8 | * (at your option) any later version. |
| 9 | * |
| 10 | * This program is distributed in the hope that it will be useful, |
| 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 13 | * GNU General Public License for more details. |
| 14 | * |
| 15 | * You should have received a copy of the GNU General Public License along |
| 16 | * with this program; if not, write to the Free Software Foundation, Inc., |
| 17 | * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
| 18 | * |
Forest Bond | 66252c3 | 2009-06-13 07:38:40 -0400 | [diff] [blame] | 19 | * File: ttype.h |
| 20 | * |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 21 | * Purpose: define basic common types and macros |
| 22 | * |
| 23 | * Author: Tevin Chen |
| 24 | * |
| 25 | * Date: May 21, 1996 |
| 26 | * |
| 27 | */ |
| 28 | |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 29 | #ifndef __TTYPE_H__ |
| 30 | #define __TTYPE_H__ |
| 31 | |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 32 | /******* Common definitions and typedefs ***********************************/ |
| 33 | |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 34 | typedef int BOOL; |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 35 | |
| 36 | #if !defined(TRUE) |
| 37 | #define TRUE 1 |
| 38 | #endif |
| 39 | #if !defined(FALSE) |
| 40 | #define FALSE 0 |
| 41 | #endif |
| 42 | |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 43 | /****** Simple typedefs ***************************************************/ |
| 44 | |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 45 | typedef unsigned char BYTE; // 8-bit |
| 46 | typedef unsigned short WORD; // 16-bit |
| 47 | typedef unsigned long DWORD; // 32-bit |
| 48 | |
| 49 | // QWORD is for those situation that we want |
| 50 | // an 8-byte-aligned 8 byte long structure |
| 51 | // which is NOT really a floating point number. |
| 52 | typedef union tagUQuadWord { |
| 53 | struct { |
| 54 | DWORD dwLowDword; |
| 55 | DWORD dwHighDword; |
| 56 | } u; |
| 57 | double DoNotUseThisField; |
| 58 | } UQuadWord; |
| 59 | typedef UQuadWord QWORD; // 64-bit |
| 60 | |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 61 | /****** Common pointer types ***********************************************/ |
| 62 | |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 63 | typedef unsigned long ULONG_PTR; // 32-bit |
| 64 | typedef unsigned long DWORD_PTR; // 32-bit |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 65 | |
| 66 | // boolean pointer |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 67 | |
Jim Lieb | 193a823 | 2009-08-12 14:54:06 -0700 | [diff] [blame] | 68 | typedef BYTE * PBYTE; |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 69 | |
Jim Lieb | 193a823 | 2009-08-12 14:54:06 -0700 | [diff] [blame] | 70 | typedef WORD * PWORD; |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 71 | |
Jim Lieb | 193a823 | 2009-08-12 14:54:06 -0700 | [diff] [blame] | 72 | typedef DWORD * PDWORD; |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 73 | |
Jim Lieb | 193a823 | 2009-08-12 14:54:06 -0700 | [diff] [blame] | 74 | typedef QWORD * PQWORD; |
Forest Bond | 92b9679 | 2009-06-13 07:38:31 -0400 | [diff] [blame] | 75 | |
Andres More | e7b07d1 | 2010-05-01 19:12:26 -0300 | [diff] [blame] | 76 | #endif /* __TTYPE_H__ */ |