15738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 25738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 35738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Copyright (C) 1999-2012 Broadcom Corporation 45738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 55738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 65738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * you may not use this file except in compliance with the License. 75738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * You may obtain a copy of the License at: 85738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 95738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * See the License for the specific language governing permissions and 155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * limitations under the License. 165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ******************************************************************************/ 185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef DATA_TYPES_H 205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define DATA_TYPES_H 215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef NULL 235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define NULL 0 245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef FALSE 275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define FALSE 0 285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef unsigned char UINT8; 315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef unsigned short UINT16; 325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef unsigned long UINT32; 332e7fa68bfd9723b7ec7b6b0b128d89f31a2e06eeAndre Eisenbachtypedef unsigned long long UINT64; 342e7fa68bfd9723b7ec7b6b0b128d89f31a2e06eeAndre Eisenbach 355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef signed long INT32; 365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef signed char INT8; 375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef signed short INT16; 385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef unsigned char BOOLEAN; 395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT32 TIME_STAMP; 425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef TRUE 445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define TRUE (!FALSE) 455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef unsigned char UBYTE; 485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifdef __arm 505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PACKED __packed 515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define INLINE __inline 525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else 535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define PACKED 545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define INLINE 555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BIG_ENDIAN 585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BIG_ENDIAN FALSE 595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define UINT16_LOW_BYTE(x) ((x) & 0xff) 625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define UINT16_HI_BYTE(x) ((x) >> 8) 635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BCM_STRCAT_S(x1,x2,x3) strcat((x1),(x3)) 665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BCM_STRNCAT_S(x1,x2,x3,x4) strncat((x1),(x3),(x4)) 675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BCM_STRCPY_S(x1,x2,x3) strcpy((x1),(x3)) 685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BCM_STRNCPY_S(x1,x2,x3,x4) strncpy((x1),(x3),(x4)) 695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 74