iresman.h

Go to the documentation of this file.
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 
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Copyright 2013, Texas Instruments Incorporated