10c1bc742181ded4930842b46e9507372f0b1b963James Dong/*
20c1bc742181ded4930842b46e9507372f0b1b963James Dong * Copyright (C) 2009 The Android Open Source Project
30c1bc742181ded4930842b46e9507372f0b1b963James Dong *
40c1bc742181ded4930842b46e9507372f0b1b963James Dong * Licensed under the Apache License, Version 2.0 (the "License");
50c1bc742181ded4930842b46e9507372f0b1b963James Dong * you may not use this file except in compliance with the License.
60c1bc742181ded4930842b46e9507372f0b1b963James Dong * You may obtain a copy of the License at
70c1bc742181ded4930842b46e9507372f0b1b963James Dong *
80c1bc742181ded4930842b46e9507372f0b1b963James Dong *      http://www.apache.org/licenses/LICENSE-2.0
90c1bc742181ded4930842b46e9507372f0b1b963James Dong *
100c1bc742181ded4930842b46e9507372f0b1b963James Dong * Unless required by applicable law or agreed to in writing, software
110c1bc742181ded4930842b46e9507372f0b1b963James Dong * distributed under the License is distributed on an "AS IS" BASIS,
120c1bc742181ded4930842b46e9507372f0b1b963James Dong * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
130c1bc742181ded4930842b46e9507372f0b1b963James Dong * See the License for the specific language governing permissions and
140c1bc742181ded4930842b46e9507372f0b1b963James Dong * limitations under the License.
150c1bc742181ded4930842b46e9507372f0b1b963James Dong */
160c1bc742181ded4930842b46e9507372f0b1b963James Dong
170c1bc742181ded4930842b46e9507372f0b1b963James Dong
180c1bc742181ded4930842b46e9507372f0b1b963James Dong#ifndef BASETYPE_H_INCLUDED
190c1bc742181ded4930842b46e9507372f0b1b963James Dong#define BASETYPE_H_INCLUDED
200c1bc742181ded4930842b46e9507372f0b1b963James Dong
210c1bc742181ded4930842b46e9507372f0b1b963James Dong
220c1bc742181ded4930842b46e9507372f0b1b963James Dong#ifdef __arm
230c1bc742181ded4930842b46e9507372f0b1b963James Dong#define VOLATILE volatile
240c1bc742181ded4930842b46e9507372f0b1b963James Dong#else
250c1bc742181ded4930842b46e9507372f0b1b963James Dong#define VOLATILE
260c1bc742181ded4930842b46e9507372f0b1b963James Dong#endif
270c1bc742181ded4930842b46e9507372f0b1b963James Dong
280c1bc742181ded4930842b46e9507372f0b1b963James Dongtypedef unsigned char   u8;
290c1bc742181ded4930842b46e9507372f0b1b963James Dongtypedef signed char     i8;
300c1bc742181ded4930842b46e9507372f0b1b963James Dongtypedef unsigned short  u16;
310c1bc742181ded4930842b46e9507372f0b1b963James Dongtypedef signed short    i16;
320c1bc742181ded4930842b46e9507372f0b1b963James Dongtypedef unsigned int    u32;
330c1bc742181ded4930842b46e9507372f0b1b963James Dongtypedef signed int      i32;
340c1bc742181ded4930842b46e9507372f0b1b963James Dong
350c1bc742181ded4930842b46e9507372f0b1b963James Dong#if defined(VC1SWDEC_16BIT) || defined(MP4ENC_ARM11)
360c1bc742181ded4930842b46e9507372f0b1b963James Dongtypedef unsigned short  u16x;
370c1bc742181ded4930842b46e9507372f0b1b963James Dongtypedef signed short    i16x;
380c1bc742181ded4930842b46e9507372f0b1b963James Dong#else
390c1bc742181ded4930842b46e9507372f0b1b963James Dongtypedef unsigned int    u16x;
400c1bc742181ded4930842b46e9507372f0b1b963James Dongtypedef signed int      i16x;
410c1bc742181ded4930842b46e9507372f0b1b963James Dong#endif
420c1bc742181ded4930842b46e9507372f0b1b963James Dong
430c1bc742181ded4930842b46e9507372f0b1b963James Dong
440c1bc742181ded4930842b46e9507372f0b1b963James Dong#ifndef NULL
450c1bc742181ded4930842b46e9507372f0b1b963James Dong#ifdef  __cplusplus
460c1bc742181ded4930842b46e9507372f0b1b963James Dong#define NULL 0
470c1bc742181ded4930842b46e9507372f0b1b963James Dong#else
480c1bc742181ded4930842b46e9507372f0b1b963James Dong#define NULL ((void *)0)
490c1bc742181ded4930842b46e9507372f0b1b963James Dong#endif
500c1bc742181ded4930842b46e9507372f0b1b963James Dong#endif
510c1bc742181ded4930842b46e9507372f0b1b963James Dong
520c1bc742181ded4930842b46e9507372f0b1b963James Dong#endif  /* BASETYPE_H_INCLUDED */
53