00001 /* 00002 * Copyright 2013 by Texas Instruments Incorporated. 00003 * 00004 */ 00005 00006 /* 00007 * Copyright (c) 2012, Texas Instruments Incorporated 00008 * All rights reserved. 00009 * 00010 * Redistribution and use in source and binary forms, with or without 00011 * modification, are permitted provided that the following conditions 00012 * are met: 00013 * 00014 * * Redistributions of source code must retain the above copyright 00015 * notice, this list of conditions and the following disclaimer. 00016 * 00017 * * Redistributions in binary form must reproduce the above copyright 00018 * notice, this list of conditions and the following disclaimer in the 00019 * documentation and/or other materials provided with the distribution. 00020 * 00021 * * Neither the name of Texas Instruments Incorporated nor the names of 00022 * its contributors may be used to endorse or promote products derived 00023 * from this software without specific prior written permission. 00024 * 00025 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 00026 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 00027 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 00028 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 00029 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 00030 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 00031 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 00032 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 00033 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 00034 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 00035 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00036 * 00037 */ 00056 #ifndef ti_sdo_fc_ires_IRESMAN_ 00057 #define ti_sdo_fc_ires_IRESMAN_ 00058 00061 00062 #ifdef __cplusplus 00063 extern "C" { 00064 #endif 00065 00066 #include <ti/xdais/ires_common.h> 00067 #include <ti/xdais/ires.h> 00068 00073 typedef Bool (IRESMAN_PersistentAllocFxn)(IALG_MemRec *memTab, Int numRecs); 00074 00079 typedef Void (IRESMAN_PersistentFreeFxn)(IALG_MemRec *memTab, Int numRecs); 00080 00081 00087 typedef struct IRESMAN_Params { 00088 Int32 size; 00094 IRESMAN_PersistentAllocFxn * allocFxn; 00095 00100 IRESMAN_PersistentFreeFxn * freeFxn; 00101 00102 } IRESMAN_Params; 00103 00104 typedef struct IRESMAN_Fxns { 00105 00109 String (*getProtocolName)(); 00110 00115 IRES_ProtocolRevision * (* getProtocolRevision)(); 00116 00128 IRES_Status (* init)(IRESMAN_Params * initArgs); 00129 00137 IRES_Status (* exit)(); 00138 00157 IRES_Handle (* getHandle)(IALG_Handle algHandle, 00158 IRES_ResourceDescriptor * resDesc, Int scratchGroupId, 00159 IRES_Status * status); 00160 00171 IRES_Status (* freeHandle)(IALG_Handle algHandle, 00172 IRES_Handle resourceHandle, IRES_ResourceDescriptor * resDesc, 00173 Int scratchGroupId); 00174 00175 /* Two new optional APIs */ 00176 Void (* activateResource)(IALG_Handle algHandle, IRES_Fxns * resFxns); 00177 00178 Void (* deactivateResource)(IALG_Handle algHandle, IRES_Fxns * resFxns); 00179 00180 } IRESMAN_Fxns; 00181 00182 #ifdef __cplusplus 00183 } 00184 #endif 00185 00188 #endif 00189 /* 00190 * @(#) ti.sdo.fc.ires; 2, 0, 0,1; 6-12-2013 19:56:58; /db/atree/library/trees/fc/fc-t09/src/ xlibrary 00191 00192 */ 00193