#if !defined( _RB_DOWNLOAD_H_ ) #define _RB_DOWNLOAD_H_ #ifndef _TECHTYPE_H typedef unsigned char U8BIT; typedef signed char S8BIT; typedef unsigned short U16BIT; typedef signed short S16BIT; typedef unsigned int U32BIT; typedef signed int S32BIT; typedef unsigned char* pU8BIT; typedef unsigned char BOOLEAN; typedef struct { U32BIT s_len; U8BIT* s_data; } S_STRING; #endif #include "hbbtv_si_query.h" typedef enum { /* Requested operation completed successfully */ DSMCC_OK = 0, /* An error that does not fit any other error code occurred. This is used * to indicate errors in the controlling application that result in the * requested operation failing. */ DSMCC_ERR_OTHER, /* One or more of the parameters passed was invalid */ DSMCC_ERR_BAD_PARAMETER, /* There was insufficient memory available to allocate the MHEG-5 component * memory region. */ DSMCC_ERR_ALLOCATING_MEMORY_REGION, /* A session with a CI module has not established. */ DSMCC_ERR_CI_SESSION_NOT_ESTABLISHED, /* The MHEG-5 component has not been opened by a call to tmMHEG5Open() */ DSMCC_ERR_COMP_NOT_OPEN, /* The MHEG-5 component has already been opened by a call to tmMHEG5Open() */ DSMCC_ERR_COMP_ALREADY_OPEN, /* The MHEG-5 component has not been started by a call to tmMHEG5Start() */ DSMCC_ERR_COMP_NOT_STARTED, /* The MHEG-5 component has already been started by a call to tmMHEG5Start() */ DSMCC_ERR_COMP_ALREADY_STARTED, /* The controlling application was not able to determine the value of the * MPEG system time clock. */ DSMCC_ERR_UNABLE_TO_DETERMINE_STC, /* The specified file was not found */ DSMCC_ERR_FILE_NOT_FOUND, /* An error internal to the MHEG-5 component has occurred. */ DSMCC_ERR_INTERNAL, /* Function call had no effect */ DSMCC_IGNOR_REQUEST, /* specific to PVR, to indicate a booking conflict */ DSMCC_ERR_CONFLICT, /* specific to PVR, to indicate an alternative booking */ DSMCC_ALTERNATIVE_FOUND, /* specific to PVR, to indicate result is pending */ MHEG5_RESULT_PENDING, /* specific to PVR, to indicate out of space*/ DSMCC_INSUFFICIENT_SPACE, /* specific to PVR, to indicate too many bookings */ DSMCC_ERR_OVERBOOKED }DsmccRbErr_t; typedef struct { U16BIT original_network_id; U16BIT transport_stream_id; U16BIT service_id; S32BIT ComponentTag; } DsmccDvbLocator_t, *pDsmccDvbLocator_t; //BOOLEAN DSMCC_loadStream(char* stream_path, void* ref, S_DVB_LOCATOR* dvbLocator, BOOLEAN* bDvbLocatorSet, void** handle); //void DSMCC_closeStream(void* handle); int DSMCC_loadFile(char* path, unsigned char* buf, unsigned int bufSize); int DSMCC_reloadFile(char* path); BOOLEAN DSMCC_FileReloaded(char* path); void DSMCC_RemoveReloadedFile(char* path, BOOLEAN remove); U32BIT DSMCC_ReloadingFileTimeStamp(char *path); BOOLEAN DSMCC_IsReloadingFile(char *path); U32BIT DSMCC_GetTimeStamp(void); BOOLEAN rbDownload_IsComplete(); /* 0: not found, 1:file, 2:dir */ int DSMCC_getPathType(char* path); void DsmccRb_ProcessDvpSection(U32BIT carousel_id, void* pSectionInfo, U32BIT sectionLength, U16BIT *pPid); DsmccRbErr_t DsmccRb_NotifySiQueryResult(void* siUserData, HBBTVSiQueryStatus_t queryStatus, HBBTVSiQueryResult_t *pQueryResult, void* queryHandle); DsmccRbErr_t DsmccRbOpenFunc(void); DsmccRbErr_t DsmccRb_Start(DsmccDvbLocator_t *pDvbLocator); DsmccRbErr_t DsmccRb_Stop( U8BIT action ); DsmccRbErr_t DsmccRb_Reboot( void ); BOOLEAN DsmccRb_IsStarted(void); #endif /* _RB_DOWNLOAD_H_ */