![]() |
![]() |
00001 /* --COPYRIGHT--,BSD 00002 * Copyright (c) 2010, Texas Instruments Incorporated 00003 * All rights reserved. 00004 * 00005 * Redistribution and use in source and binary forms, with or without 00006 * modification, are permitted provided that the following conditions 00007 * are met: 00008 * 00009 * * Redistributions of source code must retain the above copyright 00010 * notice, this list of conditions and the following disclaimer. 00011 * 00012 * * Redistributions in binary form must reproduce the above copyright 00013 * notice, this list of conditions and the following disclaimer in the 00014 * documentation and/or other materials provided with the distribution. 00015 * 00016 * * Neither the name of Texas Instruments Incorporated nor the names of 00017 * its contributors may be used to endorse or promote products derived 00018 * from this software without specific prior written permission. 00019 * 00020 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 00021 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 00022 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 00023 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 00024 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 00025 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 00026 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 00027 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 00028 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 00029 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 00030 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00031 * --/COPYRIGHT--*/ 00032 00063 #ifndef ti_sdo_dmai_Loader_h_ 00064 #define ti_sdo_dmai_Loader_h_ 00065 00066 #include <xdc/std.h> 00067 00068 #include <ti/sdo/dmai/Dmai.h> 00069 #include <ti/sdo/dmai/Buffer.h> 00070 00073 00078 typedef struct Loader_Attrs { 00080 UInt32 readBufSize; 00081 00087 UInt32 readSize; 00088 00095 UInt32 readAhead; 00096 00102 UInt32 vBufSize; 00103 00110 Int async; 00111 00116 Memory_AllocParams mParams; 00117 00118 } Loader_Attrs; 00119 00130 extern const Loader_Attrs Loader_Attrs_DEFAULT; 00131 00135 typedef struct Loader_Object *Loader_Handle; 00136 00137 #if defined (__cplusplus) 00138 extern "C" { 00139 #endif 00140 00150 extern Loader_Handle Loader_create(Char *fileName, Loader_Attrs *attrs); 00151 00164 extern Int Loader_prime(Loader_Handle hLoader, Buffer_Handle *hBufPtr); 00165 00183 extern Int Loader_readData(Loader_Handle hLoader); 00184 00205 extern Int Loader_getFrame(Loader_Handle hLoader, Buffer_Handle hBuf); 00206 00223 extern Int Loader_flush(Loader_Handle hLoader); 00224 00235 extern Int Loader_delete(Loader_Handle hLoader); 00236 00237 #if defined (__cplusplus) 00238 } 00239 #endif 00240 00243 #endif /* ti_sdo_dmai_linux_Loader_h_ */