MHEG5  15.3.0
source/core/inc/mh5fileorm.h
Go to the documentation of this file.
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*/
 All Data Structures Files Functions Variables Typedefs Defines