Data Structures |
struct | s_PmtInfo |
struct | s_DsmMessage |
struct | s_timer |
struct | s_msgqueue |
struct | s_boot |
struct | s_load |
struct | s_DsmControl |
Defines |
#define | MAIN_STACK_SIZE 0x2000 |
#define | TIMER_RESOLUTION 100 |
#define | BOOT_TIMEOUT 0xFFFFFF |
#define | RESTART_TIME 200 |
#define | START_MAGIC 0xDEED |
#define | CLDSM_MAGIC 0xBADE |
#define | ERA_BITS 4 |
#define | ERA_SHIFT (32-ERA_BITS) |
#define | ERA_LAST ((1<<ERA_BITS)-1) |
#define | ERA_FIRST 0x00 |
Typedefs |
typedef struct s_PmtInfo | S_PmtInfo |
typedef struct s_DsmMessage | S_Message |
typedef struct s_timer | S_Timer |
typedef struct s_msgqueue | S_MsgQueue |
typedef struct s_boot | S_Boot |
typedef struct s_load | S_Load |
typedef struct s_DsmControl | S_DsmControl |
Enumerations |
enum | E_Q_PRIORITY { QP_TOP,
QP_HIGH,
QP_LOW,
QP_TOTAL
} |
enum | E_DsmMsgType {
DSM_MSG_PAT_DATA,
DSM_MSG_PMT_DATA,
DSM_MSG_NEW_SECTION,
DSM_MSG_CACHE_SECTION,
DSM_MSG_UPDATE_FILTER,
DSM_MSG_PMT_REMOVED,
DSM_MSG_CLOSE_DOWN
} |
enum | E_STATUS { BL_WAITING,
BL_BOOTING,
BL_LOADED,
BL_FAILED
} |
Functions |
int | StubRequestPmt (void *pmtref, U16BIT serviceId, U16BIT pmtpid) |
void | DestroyDsi (S_DsmControl *dsmctrl) |
H_DsmControl | DSMCC_Open (S_DsmccConfig *config) |
| Open DSM-CC and create controling instance.
|
void | DSMCC_Close (H_DsmControl dsmctrl) |
| Close DSM-CC controling instance, and destroy all resources.
|
BOOLEAN | DSMCC_Start (H_DsmControl dsmctrl, S_DvbLocator *locator, U32BIT boot_carousel_id, DMXREF dmxref) |
| Start DSM-CC controling instance. This will start search for a boot carousel on service specified by locator. The search depends on the value given 'boot_carousel_id' parameter. When boot carousel id is set to INVALID_CAROUSEL_ID, DSM-CC will attempt to start on a carousel which the client recognises in callback function 'parseDataBroadcastId'. Even when the PMT does not contain a recognised data broadcast id, this function will return TRUE, and the DSM-CC will keep trying to load a boot carousel. When boot carousel id is set to a specific value or UNKNOWN_CAROUSEL_ID DSMCC_Start() will return FALSE if a carousel with the required ID is not present. When boot carousel id is set to UNKNOWN_CAROUSEL_ID, DSM-CC will attempt to start on whatever carousel is signalled in PMT for that service.
|
void | DSMCC_Stop (H_DsmControl dsmctrl, E_DsmRstMode mode) |
| Stop DSM-CC controling instance. Causes all carousels to unload.
|
void | DSMCC_Reboot (H_DsmControl dsmctrl) |
| Reboot DSM-CC controling instance. Causes all carousels to unload and initiate search for boot carousel.
|
H_ObjCarousel | DSMCC_CurrentCarousel (H_DsmControl dsmctrl) |
| Get currently loaded carousel handle.
|
U32BIT | DSMCC_CurrentCarouselId (H_DsmControl dsmctrl) |
| Get currently loaded carousel ID.
|
BOOLEAN | DSMCC_SetCurrentCarousel (H_DsmControl dsmctrl, H_ObjCarousel hOC) |
| Set current carousel. This does not unload any previously loaded carousels.
|
void | DSMCC_UnloadCarousel (H_DsmControl dsmctrl, H_ObjCarousel hOC, E_DsmRstMode mode) |
| Unload specified Carousel.
|
void | DSMCC_SetFileSystemCacheLimit (H_DsmControl dsmctrl, U32BIT cacheSize) |
| Set limit of DSMCC dynamic memory usage for file system caching This function overrides the default size is 6 MB. If this size is less than the currently allocated memory size, then it will release file system data until limit is reached - but only releasing data not currently in used by the client.
|
void | DSMCC_SiqCacheClearPmt (H_DsmControl dsmctrl, U16BIT serviceId) |
| Clear cached PMT for particular service.
|
const char * | DSMCC_VersionString (void) |
| Returns version major.minor.patch as string.
|
H_DsmControl | DSMCC_FindInstance (U16BIT serviceId, DMXREF dmxref) |
| Find DSMCC instance that has beed started on specified service.
|
U32BIT | DSMCC_DebugGetMask (void) |
| Get the DSMCC debug mask.
|
void | DSMCC_DebugSetMask (U32BIT mask) |
| Set the DSMCC debug mask.
|
Variables |
unsigned int | gDebugState = DSM_DBG_MASK |
S_DsmControl * | instanceHead = NULL |
Start DSM-CC controling instance. This will start search for a boot carousel on service specified by locator. The search depends on the value given 'boot_carousel_id' parameter. When boot carousel id is set to INVALID_CAROUSEL_ID, DSM-CC will attempt to start on a carousel which the client recognises in callback function 'parseDataBroadcastId'. Even when the PMT does not contain a recognised data broadcast id, this function will return TRUE, and the DSM-CC will keep trying to load a boot carousel. When boot carousel id is set to a specific value or UNKNOWN_CAROUSEL_ID DSMCC_Start() will return FALSE if a carousel with the required ID is not present. When boot carousel id is set to UNKNOWN_CAROUSEL_ID, DSM-CC will attempt to start on whatever carousel is signalled in PMT for that service.
Start DSM-CC controling instance. This will start search for a boot carousel on service specified by locator. The search depends on the value given 'boot_carousel_id' parameter. When boot carousel id is set to INVALID_CAROUSEL_ID, DSM-CC will attempt to start on a carousel which the client recognises in callback function 'parseDataBroadcastId'. Even when the PMT does not contain a recognised data broadcast id, DSMCC_Start() will return TRUE, and the DSM-CC will keep trying to load a boot carousel. When boot carousel id is set to a specific value or UNKNOWN_CAROUSEL_ID and a carousel of the required ID is not present, either DSMCC_Start() will return FALSE or 'carouselLoad' callback will be passed a result of OC_LOAD_ABORTED_ERROR. When boot carousel id is set to UNKNOWN_CAROUSEL_ID, DSM-CC will attempt to start on whatever carousel is signalled in PMT for that service.
- Parameters:
-
instance | DSM control instance handle |
locator | DVB location of service. |
boot_carousel_id | carousel id - INVALID_CAROUSEL_ID, or UNKNOWN_CAROUSEL_ID, or a specific value. |
DMXREF | dmxref demux reference to be used in section filter API |
- Returns:
- BOOLEAN - TRUE if success