25 #ifndef _CLDSMSYSTEM_H_ 26 #define _CLDSMSYSTEM_H_ 44 #if (!defined(NDEBUG) && defined(DSM_PROFILING_BUILD)) 49 #ifndef DSM_NO_MEM_CONTEXT 50 #define MEM_CONTEXT idp->memContext 65 #define BIT8_MSK 0x0100 66 #define BIT9_MSK 0x0200 67 #define BIT10_MSK 0x0400 68 #define BIT11_MSK 0x0800 69 #define BIT12_MSK 0x1000 70 #define BIT13_MSK 0x2000 71 #define BIT14_MSK 0x4000 72 #define BIT15_MSK 0x8000 83 #define LSB9_MSK 0x01FF 84 #define LSB10_MSK 0x03FF 85 #define LSB11_MSK 0x07FF 86 #define LSB12_MSK 0x0FFF 87 #define LSB13_MSK 0x1FFF 88 #define LSB14_MSK 0x3FFF 89 #define LSB15_MSK 0x7FFF 90 #define LSB16_MSK 0xFFFF 92 #define MOD2_MSK LSB1_MSK 93 #define MOD4_MSK LSB2_MSK 94 #define MOD8_MSK LSB3_MSK 95 #define MOD16_MSK LSB4_MSK 96 #define MOD32_MSK LSB5_MSK 97 #define MOD64_MSK LSB6_MSK 98 #define MOD128_MSK LSB7_MSK 107 #define DSIDII_ID 0x3B 109 #define STREAM_DESCR_ID 0x3D 111 #define SECTION_HDR_LEN 8 112 #define MIN_SECTION_LEN 9 113 #define MAX_SECTION_LEN 4093 115 #define MAX_DDB_BLOCKSIZE 4066 118 #define DSMCC_MSG_HDR_LEN 12 121 #define DSI_HDR_LEN 24 122 #define MIN_SRG_INFO_LEN (IOR_HDR_LEN + \ 123 PROFILE_TAG_BIOP_HDR_LEN + \ 124 MIN_PROFILE_TAG_BIOP_DATA_LEN) 125 #define MIN_DSI_MSG_BODY_LEN (DSI_HDR_LEN + \ 127 #define MIN_DSI_MSG_LEN (DSMCC_MSG_HDR_LEN + DSI_HDR_LEN) 131 #define MIN_DII_MSG_BODY_LEN 20 132 #define MIN_DII_MSG_LEN (DSMCC_MSG_HDR_LEN + \ 133 MIN_DII_MSG_BODY_LEN) 136 #define DSMCC_DOWNLOAD_HDR_LEN 12 137 #define DDB_MSG_PAYLOAD_HDR_LEN 6 138 #define MIN_DDB_PAYLOAD_DATA_LEN 0 139 #define MIN_DDB_MSG_BODY_LEN (DDB_MSG_PAYLOAD_HDR_LEN + \ 140 MIN_DDB_PAYLOAD_DATA_LEN) 141 #define MIN_DDB_MSG_LEN (DSMCC_DOWNLOAD_HDR_LEN + \ 142 MIN_DDB_MSG_BODY_LEN) 143 #define MAX_DDB_BLOCKSIZE 4066 146 #define TRANSACTION_ID_UPDATED_MASK 0x00000001 147 #define TRANSACTION_ID_IDENT_MASK 0x0000fffe 148 #define TRANSACTION_ID_VERSION_MASK 0x3fff0000 149 #define TRANSACTION_ID_ORIG_MASK 0xc0000000 152 #define OBJECT_NUMBYTES_TO_MESSAGE_START 12 153 #define BIOP_MAGIC 0x42494F50 156 #define TAG_LITE_OPTIONS 0x49534f05 157 #define TAG_BIOP 0x49534f06 158 #define TAG_CONN_BINDER 0x49534f40 159 #define TAG_SERVICE_LOCATION 0x49534f46 160 #define TAG_OBJECT_LOCATION 0x49534f50 163 #define IOR_HDR_LEN 12 166 #define PROFILE_TAG_BIOP_HDR_LEN 10 167 #define MIN_PROFILE_TAG_BIOP_DATA_LEN (MIN_OBJ_LOCATION_LEN + \ 171 #define MIN_OBJ_LOCATION_LEN 15 172 #define MIN_OBJLOC_COMPONENT_DATA_LEN (MIN_OBJ_LOCATION_LEN - 5) 173 #define MIN_CONN_BINDER_LEN 23 174 #define MIN_CONBIND_COMPONENT_DATA_LEN (MIN_CONN_BINDER_LEN - 5) 178 #define UNKNOWN_USE ((U16BIT) 0) 179 #define MPEG_TS_UP_USE ((U16BIT) 1) 180 #define MPEG_TS_DOWN_USE ((U16BIT) 2) 181 #define MPEG_ES_UP_USE ((U16BIT) 3) 182 #define MPEG_ES_DOWN_USE ((U16BIT) 4) 183 #define DOWNLOAD_CTRL_USE ((U16BIT) 5) 184 #define DOWNLOAD_CTRL_UP_USE ((U16BIT) 6) 185 #define DOWNLOAD_CTRL_DOWN_USE ((U16BIT) 7) 186 #define DOWNLOAD_DATA_USE ((U16BIT) 8) 187 #define DOWNLOAD_DATA_UP_USE ((U16BIT) 9) 188 #define DOWNLOAD_DATA_DOWN_USE ((U16BIT) 10) 189 #define STR_NPT_USE ((U16BIT) 11) 190 #define STR_STATUS_AND_EVENT_USE ((U16BIT) 12) 191 #define STR_EVENT_USE ((U16BIT) 13) 192 #define STR_STATUS_USE ((U16BIT) 14) 193 #define RPC_USE ((U16BIT) 15) 194 #define IP_USE ((U16BIT) 16) 195 #define SDB_CTRL_USE ((U16BIT) 17) 196 #define T120_TAP1 ((U16BIT) 18) 197 #define T120_TAP2 ((U16BIT) 19) 198 #define T120_TAP3 ((U16BIT) 20) 199 #define T120_TAP4 ((U16BIT) 21) 200 #define BIOP_DELIVERY_PARA_USE ((U16BIT) 22) 201 #define BIOP_OBJECT_USE ((U16BIT) 23) 202 #define BIOP_ES_USE ((U16BIT) 24) 203 #define BIOP_PROGRAM_USE ((U16BIT) 25) 204 #define BIOP_DNL_CTRL_USE ((U16BIT) 26) 207 #define SRG_STR 0x73726700 208 #define DIR_STR 0x64697200 209 #define FIL_STR 0x66696c00 210 #define STR_STR 0x73747200 211 #define STE_STR 0x73746500 214 #define DESCRIPTOR_TYPE_TAG ((U8BIT) 1) 215 #define DESCRIPTOR_NAME_TAG ((U8BIT) 2) 216 #define DESCRIPTOR_INFO_TAG ((U8BIT) 3) 217 #define DESCRIPTOR_MODULE_LINK_TAG ((U8BIT) 4) 218 #define DESCRIPTOR_CRC32_TAG ((U8BIT) 5) 219 #define DESCRIPTOR_LOCATION_TAG ((U8BIT) 6) 220 #define DESCRIPTOR_EST_DOWNLOAD_TIME_TAG ((U8BIT) 7) 221 #define DESCRIPTOR_GROUP_LINK_TAG ((U8BIT) 8) 222 #define DESCRIPTOR_COMP_MODULE_TAG ((U8BIT) 9) 223 #define DESCRIPTOR_SSU_MODULE_TYPE_TAG ((U8BIT) 0x0A) 224 #define DESCRIPTOR_SSU_SUBGROUP_ASS_TAG ((U8BIT) 0x0B) 225 #define DESCRIPTOR_MHP_LABEL ((U8BIT) 0x70) 226 #define DESCRIPTOR_MHP_CACHING_PRIORITY ((U8BIT) 0x71) 233 #define MAX_PATH_NAME_SIZE 255 239 #define MAX_DIRECTORY_DEPTH (((MAX_PATH_NAME_SIZE - 1) + 1) / 2) 245 #define PATH_SEPERATOR_CHAR '/' 248 #define MIN_MEM_BLK_SIZE 256 252 #define MAX_BLOCKS_IN_MODULE 1600 255 #define NUM_INTERNAL_MEM_SEQ_MAX 128 259 #define MAX_MODULE_DECOMPRESS_FAILURES 3 270 #define SECTION_FILTER_HEAP_SLACK 16 271 #define SECTION_FILTER_HEAP_SIZE (NUM_SECTION_FILTERS_MAX_DEFAULT + \ 272 SECTION_FILTER_HEAP_SLACK) 276 #define ROOT_CAROUSEL_LIST 0 277 #define NUM_LISTS_ROOT_CAROUSEL 1 280 #define OC_DATA_CAROUSEL_LIST 0 281 #define OC_DII_ACQUIRE_LIST 1 282 #define NUM_LISTS_DATA_CAROUSEL 2 285 #define OC_LITE_OBJECT_LOAD_LIST 0 286 #define NUM_LITE_OBJECT_LOAD_LIST 1 289 #define DC_MODULE_LIST 0 290 #define MODULE_ACQUIRE_LIST 1 291 #define MODULE_PRIORITY_LIST 2 292 #define MODULE_LOADED_LIST 2 293 #define MODULE_DELETE_LIST 2 294 #define NUM_LISTS_MODULE 3 297 #define CURR_OBJECT_LIST 0 298 #define MODULE_OBJECT_LIST 1 299 #define NUM_LISTS_OBJECT 2 302 #define CURR_LOAD_REQUEST_LIST 0 303 #define MODULE_LOAD_REQUEST_LIST 1 304 #define NUM_LISTS_LOAD_REQUEST 2 307 #define CURR_SI_QUERY_LIST 0 308 #define DUPLICATE_SI_QUERY_LIST 1 309 #define NUM_LISTS_SI_QUERY 2 319 #define DEBUG_CHK( condn, dbgActn ) 321 #define DEBUG_CHK( condn, dbgActn ) if (!(condn)) { dbgActn; } 339 #ifdef DSM_NO_API_PARAM_CHECK 345 #define API_PARAM_CHK( condn, dbgErrActn, relErrActn ) 349 #define API_PARAM_CHK( condn, dbgErrActn, relErrActn ) \ 350 if (!(condn)) { dbgErrActn; } \ 358 #define API_PARAM_CHK( condn, dbgErrActn, relErrActn ) \ 359 if (!(condn)) { dbgErrActn; relErrActn; } \ 392 #if !defined(DSM_DATA_CHECK_LEVEL) 393 #define DSM_DATA_CHECK_LEVEL 1 399 #define L0_DATA_CHK( condn, dbgErrActn, relErrActn ) \ 400 if (!(condn)) { dbgErrActn; relErrActn; } \ 403 #if DSM_DATA_CHECK_LEVEL >= 1 407 #define L1_DATA_CHK( condn, dbgErrActn, relErrActn ) \ 408 if (!(condn)) { dbgErrActn; relErrActn; } \ 414 #if (defined(NDEBUG) || defined(DSM_PROFILING_BUILD)) 416 #define L1_DATA_CHK( condn, dbgErrActn, relErrActn ) 420 #define L1_DATA_CHK( condn, dbgErrActn, relErrActn ) \ 421 if (!(condn)) { dbgErrActn; } \ 428 #if DSM_DATA_CHECK_LEVEL >= 2 432 #define L2_DATA_CHK( condn, dbgErrActn, relErrActn ) \ 433 if (!(condn)) { dbgErrActn; relErrActn; } \ 439 #if (defined(NDEBUG) || defined(DSM_PROFILING_BUILD)) 441 #define L2_DATA_CHK( condn, dbgErrActn, relErrActn ) 445 #define L2_DATA_CHK( condn, dbgErrActn, relErrActn ) \ 446 if (!(condn)) { dbgErrActn; } \ 457 #define CHECK_MEM_ERR( func ) \ 459 E_DsmMemErr memErr; \ 462 if (memErr != MEM_NO_ERR) { \ 463 dsmDP1(("Memory error : %i \n", memErr)); \ 464 dsmAssert((memErr == MEM_NO_ERR)); \ 469 #define CHECK_MEM_ERR( x ) x 500 U8BIT dvbCarouselNSAPaddress[20];
501 #ifdef READ_COSNAMING 512 U16BIT associationTag;
513 U32BIT transactionId;
541 U32BIT pfrdoCallDepth;
542 U32BIT pfdlfCallDepth;
543 U32BIT pfsdndCallDepth;
550 BOOLEAN currentServiceSet;
554 BOOLEAN lastPIDResultStored;
555 U16BIT lastServiceId;
556 U16BIT lastAssociationTag;
567 U32BIT cacheMemoryUsage;
568 U32BIT cacheMaximumUsage;
572 U32BIT dsmObjectsOpen;
575 void *sectionFilterHeap;
578 P_ZlibHeap pZlibHeap;
580 P_RootCarousel pCurrentCarousel;
581 P_RootCarousel pBootingCarousel;
582 P_RootCarousel pSelectedCarousel;
584 P_LLControl llcRootCarousels;
585 P_LLControl llcModulePriority;
586 P_LLControl llcLoadedModules;
587 P_LLControl llcExpiredModules;
588 P_LLControl llcCurrLoadRequests;
589 P_LLControl llcCurrSiQueries;
591 ps_se_info hSubscribedEventList;
599 E_DscError CDSM_UnloadAllObjects( P_DsmCoreInst instance, E_DsmRstMode mode );
Definition: loadRqst.h:71
Definition: moduleDecompress.c:47
Definition: streamEvent.c:72
Definition: cldsmcc.h:620
Definition: clDsmSystem.h:535
Definition: dvblocator.h:30
Definition: streamEvent.c:97
Definition: dataCarousel.h:58
Definition: objectCarousel.h:44
DSM-CC dynamic memory manager API.
Definition: clDsmSystem.h:494
Main API to DSM-CC core layer (provided functions and required callbacks).
Definition: clDsmSystem.h:487
Definition: rootCarousel.h:61
Definition: clDsmSystem.h:508
Definition: fs_types.h:46
Definition: moduleData.c:42
Definition: linkList.h:55
Internal Platform dependent definitions, for debug.