| 
| 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