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