split/viddec2.h

Go to the documentation of this file.
00001 /* 
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  * 
00032  */
00033 /*
00034  *  ======== viddec2.h ========
00035  */
00052 #ifndef ti_sdo_ce_video2_split_VIDDEC2_
00053 #define ti_sdo_ce_video2_split_VIDDEC2_
00054 
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif
00058 
00059 #include <ti/xdais/dm/xdm.h>
00060 #include <ti/xdais/dm/split/ividdec2.h>
00061 
00062 
00063 #include <ti/sdo/ce/Engine.h>
00064 #include <ti/sdo/ce/visa.h>
00065 #include <ti/sdo/ce/skel.h>
00066 #include <ti/sdo/ce/video2/viddec2.h>
00067 
00070 
00074 typedef IVIDDEC2FRONT_Status VIDDEC2FRONT_Status;
00075 
00076 
00080 typedef VISA_Handle VIDDEC2FRONT_Handle;
00081 
00082 
00086 typedef VISA_Handle VIDDEC2BACK_Handle;
00087 
00088 
00092 typedef IVIDDEC2FRONT_OutArgs    VIDDEC2FRONT_OutArgs;
00093 
00100 extern SKEL_Fxns VIDDEC2FRONT_SKEL;
00101 
00106 extern IVIDDEC2FRONT_Fxns VIDDEC2FRONT_STUBS;
00107 
00112 extern SKEL_Fxns VIDDEC2BACK_SKEL;
00113 
00118 extern IVIDDEC2BACK_Fxns VIDDEC2BACK_STUBS;
00119 
00125 typedef struct IVIDDEC2BACK_CodecClassConfig {
00126     Bool manageInBufsCache          [ XDM_MAX_CONTEXT_BUFFERS ];
00127     Bool manageOutBufsCache         [ XDM_MAX_CONTEXT_BUFFERS ];
00128     Bool manageIntermediateBufsCache[ XDM_MAX_CONTEXT_BUFFERS ];
00129 } IVIDDEC2BACK_CodecClassConfig;
00130 
00131 /*
00132  *  ======== VIDDEC2BACK_create ========
00133  */
00158 extern VIDDEC2BACK_Handle VIDDEC2BACK_create(Engine_Handle e, String name,
00159     VIDDEC2_Params *params);
00160 
00161 
00162 /*
00163  *  ======== VIDDEC2BACK_process ========
00164  */
00204 extern Int32 VIDDEC2BACK_process(VIDDEC2BACK_Handle handle,
00205         XDM_Context *context, VIDDEC2_OutArgs *outArgs);
00206 
00207 
00208 /*
00209  *  ======== VIDDEC2BACK_control ========
00210  */
00235 extern Int32 VIDDEC2BACK_control(VIDDEC2BACK_Handle handle,
00236         XDM_Context *context, VIDDEC2_Status *status);
00237 
00238 /*
00239  *  ======== VIDDEC2BACK_delete ========
00240  */
00258 extern Void VIDDEC2BACK_delete(VIDDEC2BACK_Handle handle);
00259 
00260 
00261 /*
00262  *  ======== VIDDEC2FRONT_create ========
00263  */
00288 extern VIDDEC2FRONT_Handle VIDDEC2FRONT_create(Engine_Handle e, String name,
00289     VIDDEC2_Params *params);
00290 
00291 
00292 /*
00293  *  ======== VIDDEC2FRONT_process ========
00294  */
00335 extern Int32 VIDDEC2FRONT_process(VIDDEC2FRONT_Handle handle,
00336         VIDDEC2_InArgs *inArgs, XDM_Context *context,
00337         VIDDEC2FRONT_OutArgs *outArgs);
00338 
00339 
00340 /*
00341  *  ======== VIDDEC2FRONT_control ========
00342  */
00369 extern Int32 VIDDEC2FRONT_control(VIDDEC2FRONT_Handle handle, VIDDEC2_Cmd id,
00370         VIDDEC2_DynamicParams *params, XDM_Context *context,
00371         VIDDEC2FRONT_Status *status);
00372 
00373 
00374 /*
00375  *  ======== VIDDEC2FRONT_delete ========
00376  */
00394 extern Void VIDDEC2FRONT_delete(VIDDEC2FRONT_Handle handle);
00395 
00396   /* ingroup */
00398 
00399 #ifdef __cplusplus
00400 }
00401 #endif
00402 
00403 #endif
00404 /*
00405  *  @(#) ti.sdo.ce.video2.split; 1, 0, 0,165; 12-2-2010 21:28:41; /db/atree/library/trees/ce/ce-r11x/src/ xlibrary
00406 
00407  */
00408 
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Copyright 2010, Texas Instruments Incorporated