|
H_SfmInstance | SFM_CreateInstance (S_SfmSetup *pSetup) |
| Create Section Filter Manager instance, using setup structure. More...
|
|
void | SFM_DestroyInstance (H_SfmInstance sfm, void **pSfmMtx, void **pCchMtx, void **pBufMtx) |
| Destroy Section Filter Manager instance, and return mutexes so that they may be destroyed by client. More...
|
|
void | SFM_SetDebugConfig (H_SfmInstance sfm, F_Printf errPrintf, F_Printf dbgPrintf, U32BIT dbgState) |
| This allows controlling software to reconfigure SFM debug output. More...
|
|
void | SFM_SetDebugState (H_SfmInstance sfm, U32BIT dbgState) |
| This allows controlling software to reconfigure SFM debug output. More...
|
|
void | SFM_SetDsmInstance (H_SfmInstance sfm, H_DsmCoreInst dsmcc) |
| Set instance handle for DSM-CC that SFM is supporting. More...
|
|
void | SFM_SetDemuxHandle (H_SfmInstance sfm, DMXREF demux) |
| Set handle to be passed to F_DvpFilterSetup and F_DvpFilterRemove. More...
|
|
E_SFM_STATUS | SFM_RequireSection (H_SfmInstance sfm, PIDFILT pfid, U8BIT *pHeader, void **phBuffer) |
| This function performs minimal checking of section header data to find out whether SFM requires this section. Number of header bytes required is SECTION_HEADER_LENGTH. It assumes CRC has been checked and is passing valid DSM-CC sections So the first byte of data must be table id 0x3B, 0x3C or 0x3D. Note for multi-tasking: this function uses mutex locking to protect shared data with SFM_AddSectionFilter and SFM_DelSectionFilter. It does NOT call any DSM-CC core functions. More...
|
|
void | SFM_ProcessSection (H_SfmInstance sfm, U8BIT *pSection, void *hBuffer) |
| Process required section buffer. This should only be called after calling SFM_RequireSection and with it returning SFM_UPDATE_... This function calls DSM-CC core functions. More...
|
|
Section Filter Manager: main functions.
- Date
- 16th October 2013
- Author
- Adam Sturtridge
E_SFM_STATUS SFM_RequireSection |
( |
H_SfmInstance |
sfm, |
|
|
PIDFILT |
pfid, |
|
|
U8BIT * |
pHeader, |
|
|
void ** |
phBuffer |
|
) |
| |
This function performs minimal checking of section header data to find out whether SFM requires this section. Number of header bytes required is SECTION_HEADER_LENGTH. It assumes CRC has been checked and is passing valid DSM-CC sections So the first byte of data must be table id 0x3B, 0x3C or 0x3D. Note for multi-tasking: this function uses mutex locking to protect shared data with SFM_AddSectionFilter and SFM_DelSectionFilter. It does NOT call any DSM-CC core functions.
This function performs minimal checking of section header data to find out whether SFM requires this section. Number of header bytes required is SECTION_HEADER_LENGTH. It assumes CRC has been checked and is passing valid DSM-CC sections So the first byte of data must be table id 0x3B, 0x3C or 0x3D. Note for multi-tasking: this function uses mutex locking to protect shared data with SFM_DsmccFilterAlloc and SFM_DsmccFilterDelete. It does NOT call any DSM-CC core functions.
- Parameters
-
H_SfmInstance | sfm SFM instance handle. |
PIDFILT | pfid PID filter with incoming section |
U8BIT* | pHeader Pointer to section header (min 8 bytes) |
void** | phBuffer Pointer to SFM section buffer handle |
- Returns
- E_SFM_STATUS - status of required update