DSMCC  15.3.1
source/dsfm/src/sfm_filter.h File Reference

Section Filter Manager (SFM): filters. More...

#include "sfm_main.h"

Go to the source code of this file.

Functions

BOOLEAN SFMFilterCreateResources (H_SfmInstance sfm)
 Create Filter resources for Section Filter Manager instance.
void SFMFilterInitCaching (H_SfmInstance sfm)
 Initialise caching references.
void SFMFilterDestroyResources (H_SfmInstance sfm)
 Destroy Filter resources for Section Filter Manager instance.
E_SFM_STATUS SFMFilterRequiresSection (H_SfmInstance sfm, PIDFILT pfid, U16BIT teid, U8BIT tid, U8BIT vers, 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.
void SFMFilterProcessSection (H_SfmInstance sfm, U8BIT *pSection, H_DsmResource pDsmRes)
 Get DSM-CC filter request and pass section buffer to DSM-CC with it's filter handle This should only be called after calling SFM_FilterRequiresSection with it returning SFM_UPDATE_LOW or SFM_UPDATE_HIGH.
BOOLEAN SFMFilterValidHandle (H_SfmInstance sfm, void *ptr)
H_DsmResource SFMFilterDsmResource (H_SfmInstance sfm, U16BIT dsmref)

Detailed Description

Section Filter Manager (SFM): filters.

Date:
16-10-2013
Author:
Adam Sturtridge

Function Documentation

Create Filter resources for Section Filter Manager instance.

Parameters:
H_SfmInstancesfm SFM instance handle.
Returns:
BOOLEAN TRUE if success

Destroy Filter resources for Section Filter Manager instance.

Parameters:
H_SfmInstancesfm SFM instance handle.
Returns:
void

Initialise caching references.

Parameters:
H_SfmInstancesfm SFM instance handle.
Returns:
void
void SFMFilterProcessSection ( H_SfmInstance  sfm,
U8BIT *  pSection,
H_DsmResource  pDsmRes 
)

Get DSM-CC filter request and pass section buffer to DSM-CC with it's filter handle This should only be called after calling SFM_FilterRequiresSection with it returning SFM_UPDATE_LOW or SFM_UPDATE_HIGH.

Parameters:
H_SfmInstancesfm SFM instance handle.
U8BIT*pSection Pointer to whole section data buffer
void*hBuffer SFM section handle returned by SFM_FilterRequiresSection
Returns:
void.
E_SFM_STATUS SFMFilterRequiresSection ( H_SfmInstance  sfm,
PIDFILT  pfid,
U16BIT  teid,
U8BIT  tid,
U8BIT  vers,
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.

Parameters:
H_SfmInstancesfm SFM instance handle.
PIDFILTpfid PID filter with incoming section
U8BITtableId Table Id of incoming section
U16BITtableIdExt Table Id Extension of incoming section
Returns:
E_SFM_STATUS - status of required update
Parameters:
H_SfmInstancesfm SFM instance handle.
PIDFILTpfid 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
 All Data Structures Files Functions Typedefs