MHEG5
15.3.0
|
00001 /******************************************************************************* 00002 * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org) 00003 * Copyright © 2004 Ocean Blue Software Ltd 00004 * Copyright © 2000 Koninklijke Philips Electronics N.V 00005 * 00006 * This file is part of a DTVKit Software Component 00007 * You are permitted to copy, modify or distribute this file subject to the terms 00008 * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org 00009 * 00010 * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, 00011 * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES 00012 * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. 00013 * 00014 * If you or your organisation is not a member of DTVKit then you have access 00015 * to this source code outside of the terms of the licence agreement 00016 * and you are expected to delete this and any associated files immediately. 00017 * Further information on DTVKit, membership and terms can be found at www.dtvkit.org 00018 *******************************************************************************/ 00026 #ifndef _MH5FORM_H_ 00027 #define _MH5FORM_H_ 00028 00029 /*---includes for this file--------------------------------------------------*/ 00030 #include "mh5base.h" 00031 #include "mh5root.h" 00032 #include "fs_types.h" 00033 00034 /*---Constant and macro definitions for public use---------------------------*/ 00035 00036 /* File Request Priority types and masks */ 00037 #define FRP_CACHE_DEFAULT 0x007F 00038 #define FRP_CACHE_MASK 0x00FF 00039 #define FRP_APPLICATION 0x0100 00040 #define FRP_SCENE 0x0200 00041 #define FRP_GROUP 0x0300 00042 #define FRP_EXISTS 0x0400 00043 #define FRP_VERIFY 0x0800 00044 #define FRP_HASH 0x1000 00045 #define FRP_CERT 0x2000 00046 #define FRP_SERVER 0x3000 00047 #define FRP_DEFER_SERV 0x4000 00048 #define FRP_IN_APP 0x8000 00049 00050 /*---Enumerations for public use---------------------------------------------*/ 00051 00052 /*---Global type defs for public use-----------------------------------------*/ 00053 typedef enum 00054 { 00055 MHEG5_FILE_ORM_RESET_SCENE_OBJECTS, 00056 MHEG5_FILE_ORM_RESET_ALL_OBJECTS, 00057 MHEG5_FILE_ORM_RESET_ALL 00058 } MHEG5FileOrmResetMode; 00059 00060 typedef void (*F_CB_Good)( void *userData, S_CONTENT *content ); 00061 typedef void (*F_CB_Fail)( void *userData ); 00062 00063 /*---Global variable declarations for public use-----------------------------*/ 00064 00065 /*---Global Function prototypes for public use-------------------------------*/ 00066 00071 void MHEG5FileOrmInit(void); 00072 00073 00084 void MHEG5FileOrmReset(MHEG5FileOrmResetMode resetMode); 00085 00086 00099 BOOLEAN MHEG5FileOrmIsReset(MHEG5FileOrmResetMode *resetMode); 00100 00101 00109 BOOLEAN MHEG5FileOrmProcess(void); 00110 00111 00117 void MHEG5FileOrmClear( void *orm_ref ); 00118 00119 00137 void* MHEG5FileOrmGet( MHEG5String name, U16BIT priority, void *userData, 00138 F_CB_Good callback, F_CB_Fail failCallback ); 00139 00140 00141 #ifdef COMMON_INTERFACE 00142 00152 MHEG5Bool MHEG5FileOrmSendCiMessage(MHEG5String input, void (*callback) (void *, MHEG5String, MHEG5Bool), void *userData); 00153 #endif /*COMMON_INTERFACE*/ 00154 00155 #ifdef INCLUDE_IC 00156 00168 MHEG5Bool MHEG5FileOrmReturnData(MHEG5String url, MHEG5String data, void (*callback) (void *, MHEG5String, MHEG5Int), void *userData); 00169 00170 #endif /* INCLUDE_IC */ 00171 00179 void MHEG5FileOrmSetCachePriority(MHEG5String name, U8BIT cachePriority); 00180 00181 00189 void MHEG5FileOrmPreloadHint(MHEG5String name); 00190 00191 void MHEG5ciSetModuleId(U32BIT module); 00192 00200 void MHEG5ciFileAcknowledge(BOOLEAN fileOK, U8BIT *pFileData, U32BIT length); 00201 00202 00203 00215 void MHEG5httpRequestAck(U32BIT requestId, U32BIT status, S32BIT code, 00216 U8BIT requestType, U8BIT *data, U32BIT len); 00217 00218 #endif /*_MH5FORM_H*/