• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2011 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 /**
17  ************************************************************************
18  * @file         M4OSA_Types.h
19  * @ingroup      OSAL
20  * @brief        Abstraction types for Android
21  * @note         This file redefines basic types which must be
22  *               used to declare any variable.
23 ************************************************************************
24 */
25 
26 
27 #ifndef M4OSA_TYPES_H
28 #define M4OSA_TYPES_H
29 
30 #include <ctype.h>
31 #include <stdio.h>
32 #include <string.h>
33 #include "M4OSA_Export.h"
34 #ifdef __cplusplus
35 extern "C" {
36 #endif
37 
38 
39 typedef signed char     M4OSA_Bool;
40 typedef unsigned char   M4OSA_UInt8;
41 typedef signed char     M4OSA_Int8;
42 typedef unsigned short  M4OSA_UInt16;
43 typedef signed short    M4OSA_Int16;
44 typedef unsigned long   M4OSA_UInt32;
45 typedef signed long     M4OSA_Int32;
46 
47 typedef signed char     M4OSA_Char;
48 typedef unsigned char   M4OSA_UChar;
49 
50 typedef double          M4OSA_Double;
51 typedef float           M4OSA_Float;
52 
53 typedef unsigned char   M4OSA_WChar;
54 
55 typedef void            M4OSA_Void;
56 
57 /* Min & max definitions*/
58 #define M4OSA_UINT8_MIN                  0
59 #define M4OSA_UINT8_MAX                255
60 
61 #define M4OSA_UINT16_MIN                 0
62 #define M4OSA_UINT16_MAX             65535
63 
64 #define M4OSA_UINT32_MIN                 0
65 #define M4OSA_UINT32_MAX        0xFFFFFFFF
66 
67 #define M4OSA_INT8_MIN                -128
68 #define M4OSA_INT8_MAX                 127
69 
70 #define M4OSA_INT16_MIN             -32768
71 #define M4OSA_INT16_MAX              32767
72 
73 #define M4OSA_INT32_MIN       (-0x7FFFFFFF-1)
74 #define M4OSA_INT32_MAX         0x7FFFFFFF
75 
76 #define M4OSA_CHAR_MIN                -128
77 #define M4OSA_CHAR_MAX                 127
78 
79 #define M4OSA_UCHAR_MIN                  0
80 #define M4OSA_UCHAR_MAX                255
81 
82 #define M4OSA_NULL                     0x00
83 #define M4OSA_TRUE                     0x01
84 #define M4OSA_FALSE                    0x00
85 #define M4OSA_WAIT_FOREVER       0xffffffff
86 
87 #define M4OSA_CONST                   const
88 #define M4OSA_INLINE                 inline
89 
90 /* Rollover offset of the clock */
91 /* This value must be the one of M4OSA_clockGetTime */
92 #define M4OSA_CLOCK_ROLLOVER           M4OSA_INT32_MAX
93 
94 typedef void*                M4OSA_Context;
95 
96 /** It is a unique ID for each core component*/
97 typedef  M4OSA_UInt16 M4OSA_CoreID;
98 
99 #ifdef __cplusplus
100 }
101 #endif
102 
103 #endif /*M4OSA_TYPES_H*/
104 
105