Common source code for parsing IOP::IOR data, to be included by functions processing data in contiguous or managed (MemSeq) memory.
More...
Go to the source code of this file.
|
| dsmAssert ((mpIorData!=NULL)) |
|
| dsmAssert ((pIorTypeId!=NULL)) |
|
| dsmAssert ((pLocation!=NULL)) |
|
| dsmAssert ((pTap!=NULL)) |
|
| MEMPTR_OPEN (mpIorData, mpIor) |
|
| ADV_UINT32_L2CHK (mpIor, ui32, ui32==4, dsmDP2(("DATA ERROR: IOR typeIdLength (!= 4) = %u\n", ui32)), goto _return_False) |
|
| READ_UINT32 (mpIor,*pIorTypeId) |
|
| READ_UINT32_L2CHK (mpIor, taggedProfilesCount, taggedProfilesCount >=1, dsmDP2(("DATA ERROR: IOR taggedProfilesCount (< 1) = %u\n", taggedProfilesCount)), goto _return_False) |
|
| READ_UINT32 (mpIor, profileIdTag) |
|
| if (profileIdTag==TAG_BIOP) |
|
| for (profileIndex=0;profileIndex< taggedProfilesCount;profileIndex++) |
|
| DEBUG_CHK (length_used!=0, dsmDP1(("ERROR: getIorInfo failure (invalid)\n"))) |
|
|
MemPtr | mpIor |
|
MemPtr | mpIorStart = mpIor |
|
MemPtr | mpIopProfile = mpIor |
|
BOOLEAN | keyValid |
|
U8BIT | ui8 = 0 |
|
U16BIT | ui16 = 0 |
|
U32BIT | ui32 = 0 |
|
U32BIT | profileIndex |
|
U32BIT | taggedProfilesCount |
|
U32BIT | profileDataLength |
|
pLocation | uiBindingTag = profileIdTag |
|
| else |
|
goto | _return_False |
|
| length_used = (U16BIT)(mpIopProfile - mpIorStart) |
|
goto | _return |
|
_return_False | __pad0__ |
|
_return | __pad1__ |
|
Common source code for parsing IOP::IOR data, to be included by functions processing data in contiguous or managed (MemSeq) memory.
MEM_CONTIGUOUS
- Date
- 28/9/2001
- Author
- R Taylor
Initial value:{
dsmDP2(("DATA ERROR: IOR - Invalid profileIdTag for DVB object carousel: %x\n",
profileIdTag))