1b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 2b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* 3b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Copyright 2001-2008 Texas Instruments - http://www.ti.com/ 4b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 5b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Licensed under the Apache License, Version 2.0 (the "License"); 6b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * you may not use this file except in compliance with the License. 7b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * You may obtain a copy of the License at 8b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 9b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * http://www.apache.org/licenses/LICENSE-2.0 10b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * 11b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * Unless required by applicable law or agreed to in writing, software 12b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * distributed under the License is distributed on an "AS IS" BASIS, 13b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * See the License for the specific language governing permissions and 15b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin * limitations under the License. 16b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin */ 17b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ================================================================================ 18b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* Texas Instruments OMAP(TM) Platform Software 19b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* (c) Copyright Texas Instruments, Incorporated. All Rights Reserved. 20b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* 21b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* Use of this software is controlled by the terms and conditions found 22b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* in the license agreement under which this software has been supplied. 23b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* ================================================================================= */ 24b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/** 25b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* @file JPEGTest.h 26b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* 27b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* This file implements OMX Component for JPEG encoder that 28b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* is fully compliant with the OMX specification 1.5. 29b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* 30b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* @path $(CSLPATH)\src 31b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* 32b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* @rev 0.1 33b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin*/ 34b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* -------------------------------------------------------------------------------- */ 35b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/* ================================================================================ 36b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin*! 37b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin*! Revision History 38b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin*! =================================== 39b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin*! 40b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin*! 22-May-2006 mf: Revisions appear in reverse chronological order; 41b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin*! that is, newest first. The date format is dd-Mon-yyyy. 42b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin* ================================================================================= */ 43b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifndef OMX_JPEGTEST_H 44b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define OMX_JPEGTEST_H 45b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 46b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 47b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavintypedef struct IMAGE_INFO { 48b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int nWidth; 49b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int nHeight ; 50b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int nFormat; 51b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int nComment; 52b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin char* pCommentString; 53b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int nThumbnailWidth_app0; 54b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int nThumbnailHeight_app0; 55b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int nThumbnailWidth_app1; 56b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int nThumbnailHeight_app1; 57b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int nThumbnailWidth_app5; 58b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int nThumbnailHeight_app5; 59b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int nThumbnailWidth_app13; 60b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int nThumbnailHeight_app13; 61b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin int nDRI; 62b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_BOOL bAPP0; 63b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_BOOL bAPP1; 64b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_BOOL bAPP5; 65b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_BOOL bAPP13; 66b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin} IMAGE_INFO; 67b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 68b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavintypedef struct JPEGE_EVENTPRIVATE { 69b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_EVENTTYPE eEvent; 70b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_PTR pAppData; 71b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_PTR pEventInfo; 72b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 nData1; 73b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin OMX_U32 nData2; 74b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin}JPEGE_EVENTPRIVATE; 75b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 76b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define MALLOC(_pStruct_, _sName_) \ 77b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin _pStruct_ = (_sName_*)malloc(sizeof(_sName_)); \ 78b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin if(_pStruct_ == NULL){ \ 79b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin error = OMX_ErrorInsufficientResources; \ 80b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin goto EXIT; \ 81b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin }\ 82b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin memset((void *)_pStruct_, 0, sizeof(_sName_)) 83b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 84b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define FREE(_ptr) \ 85b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin{ \ 86b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin if (_ptr != NULL) { \ 87b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin free(_ptr); \ 88b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin _ptr = NULL; \ 89b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin } \ 90b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin} 91b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 92b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define OMX_CONF_CHECK_CMD(_ptr1, _ptr2, _ptr3) \ 93b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin{ \ 94b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin if(!_ptr1 || !_ptr2 || !_ptr3){ \ 95b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin eError = OMX_ErrorBadParameter; \ 96b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin goto OMX_CONF_CMD_BAIL; \ 97b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin } \ 98b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin} 99b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifdef UNDER_CE 100b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define sleep Sleep 101b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 102b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 103b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 104b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin/*#define OMX_DEB*/ 105b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#ifdef OMX_DEB 106b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin #define PRINT(...) fprintf(stdout,__VA_ARGS__) 107b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#else 108b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin #define PRINT(...) 109b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif 110b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 111b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#define DSP_MMU_FAULT_HANDLING 112b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 113b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin#endif /* OMX_JPEGTEST_H */ 114b44cdb1b44b144d09e8ec950d1e8e4c280064056Rebecca Schultz Zavin 115