Common source code to extract module info from module info descriptor in DII. To be included by functions processing data in contiguous or managed (MemSeq) memory.
More...
Go to the source code of this file.
|
| dsmAssert ((mpModuleInfoDescStart!=NULL)) |
|
| dsmAssert ((pModuleInfo!=NULL)) |
|
| MEMPTR_OPEN (mpModuleInfoDescStart, mpModuleInfoDesc) |
|
| READ_UINT16 (mpModuleInfoDesc, pModuleInfo->moduleId) |
|
| READ_UINT32_L0CHK (mpModuleInfoDesc, pModuleInfo->moduleSize, pModuleInfo->moduleSize!=0, dsmDP2(("DATA ERROR: Module size = %u\n", pModuleInfo->moduleSize)), goto _return_False) |
|
| READ_UINT8 (mpModuleInfoDesc, pModuleInfo->version) |
|
| SET_POS_REL (mpModuleInfoDesc, 1) |
|
| READ_UINT32 (mpModuleInfoDesc, pModuleInfo->profileInfo.moduleTimeout) |
|
| READ_UINT8_L1CHK (mpModuleInfoDesc, tapsCount, tapsCount >=1, dsmDP2(("DATA ERROR: Module info tapsCount (< 1) = %u\n", ui8)), goto _return_False) |
|
| READ_UINT16 (mpModuleInfoDesc, pModuleInfo->profileInfo.tap.id) |
|
| READ_UINT16_L0CHK (mpModuleInfoDesc, ui16, ui16==BIOP_OBJECT_USE, dsmDP2(("DATA ERROR: Module info 1st tapUse (!= BIOP_OBJECT_USE) = %u\n", ui16)), goto _return_False) |
|
| ADV_UINT8_L2CHK (mpModuleInfoDesc, ui8, ui8==0x00, dsmDP2(("DATA ERROR: Module info tap selectorLength (!= 0) = %u\n", ui8)), goto _return_False) |
|
| while (--tapsCount > 0) |
|
| READ_UINT8 (mpModuleInfoDesc, userInfoLength) |
|
| if (userInfoLength > 0) |
|
| DEBUG_CHK (valid==TRUE, dsmDP1(("ERROR: getpModuleInfo failure (invalid)\n"))) |
|
|
U8BIT | tapsCount |
|
U8BIT | userInfoLength |
|
MemPos | currPos |
|
MemPos | endPos |
|
U8BIT | descriptorTag |
|
U8BIT | descriptorLength |
|
U8BIT | ui8 = 0 |
|
U16BIT | ui16 = 0 |
|
pModuleInfo | blkRcvd = 0 |
|
pModuleInfo profileInfo | compressed = FALSE |
|
pModuleInfo profileInfo | originalSize = pModuleInfo->moduleSize |
|
| valid = TRUE |
|
goto | _return |
|
_return_False | __pad2__ |
|
_return | __pad3__ |
|
Common source code to extract module info from module info descriptor in DII. To be included by functions processing data in contiguous or managed (MemSeq) memory.
- Date
- 28/9/2001
- Author
- R Taylor
Initial value:{
MemPtr mpModuleInfoDesc