17f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/* 27f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * Copyright (C) 2008 The Android Open Source Project 37f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * 47f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 57f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * you may not use this file except in compliance with the License. 67f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * You may obtain a copy of the License at 77f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * 87f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 97f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * 107f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * Unless required by applicable law or agreed to in writing, software 117f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 127f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 137f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * See the License for the specific language governing permissions and 147f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * limitations under the License. 157f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project */ 167f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 177f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project#ifndef btk_TYPES_EM_H 187f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project#define btk_TYPES_EM_H 197f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 207f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/** 217f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project * This file contains general purpose types. 227f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project */ 237f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 247f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/* ---- includes ----------------------------------------------------------- */ 257f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 267f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/* ---- related objects --------------------------------------------------- */ 277f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 287f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/* ---- typedefs ----------------------------------------------------------- */ 297f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 307f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/** elementary data types */ 317f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 327f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/** integer data formats */ 337f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Projecttypedef signed short s16; 347f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Projecttypedef unsigned short u16; 357f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 367f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project#if defined HW_TMS320C6x 377f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 387f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project typedef signed int s32; 397f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project typedef unsigned int u32; 407f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 417f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project#elif defined HW_TMS320C5x 427f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 437f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project typedef signed long s32; 447f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project typedef unsigned long u32; 457f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 467f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project#else 477f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 487f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project typedef signed int s32; 497f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project typedef unsigned int u32; 507f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 517f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project#endif 527f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 537f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/** signed 16.16 fixed point format */ 547f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Projecttypedef s32 s16p16; 557f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 567f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/** signed 8.24 fixed point format */ 577f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Projecttypedef s32 s8p24; 587f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 597f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/** function return status */ 607f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Projecttypedef enum 617f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project{ 627f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project /** execution finished without error */ 637f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project btk_STATUS_OK, 647f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 657f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project /** execution could not continue because the object handle was invalid */ 667f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project btk_STATUS_INVALID_HANDLE, 677f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 687f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project /** execution could not continue because of a preexisting unhandled error condition */ 697f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project btk_STATUS_PREEXISTING_ERROR, 707f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 717f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project /** execution caused a new error condition */ 727f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project btk_STATUS_ERROR 737f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 747f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project} btk_Status; 757f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 767f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 777f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/** gallery type */ 787f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Projecttypedef enum 797f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project{ 807f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project /** album gallery */ 817f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project btk_GALLERY_ALBUM, 827f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 837f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project /** reference gallery */ 847f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project btk_GALLERY_REFERENCE 857f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 867f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project} btk_GalleryType; 877f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 887f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/** database arrangement type */ 897f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Projecttypedef enum 907f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project{ 917f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project /** database entries are arranged in one coherent memory block without spaces */ 927f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project btk_COHERENT, 937f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 947f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project /** database entries are arbitrarily distributed in memory and are referenced through pointers */ 957f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project btk_DISTRIBUTED 967f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 977f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project} btk_DataArrangement; 987f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 997f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 1007f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/** error types */ 1017f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Projecttypedef enum 1027f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project{ 1037f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project /** execution finished without error */ 1047f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project btk_ERR_NO_ERROR, /* no error */ 1057f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project btk_ERR_INTERNAL, /* internal error */ 1067f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project btk_ERR_MEMORY, /* failure to allocate memory */ 1077f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project btk_ERR_VERSION, /* version conflict (software version is older than parameter version) */ 1087f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project btk_ERR_CORRUPT_DATA /* corrup parameter data or corrupt internal structure */ 1097f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 1107f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project} btk_Error; 1117f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 1127f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/** the following definitions are used to specify dll handling */ 1137f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project#if ( defined WIN32 || defined _WIN32_WCE || defined __SYMBIAN32__ ) && !defined btk_NO_DLL 1147f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project #ifdef btk_EXPORTING 1157f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project #define btk_DECLSPEC __declspec(dllexport) 1167f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project #else 1177f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project #define btk_DECLSPEC __declspec(dllimport) 1187f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project #endif 1197f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project#else 1207f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project #define btk_DECLSPEC 1217f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project#endif 1227f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 1237f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/* ---- constants ---------------------------------------------------------- */ 1247f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 1257f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project/* ---- external functions ------------------------------------------------- */ 1267f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project 1277f81d9b6fa7f2ec161b682622db577a28c90b49fThe Android Open Source Project#endif /* btk_TYPES_EM_H */ 128