DSM-CC SI support.  
More...
#include <string.h>
#include "stb_os.h"
#include "stb_filter.h"
#include "dsm_control.h"
#include "dm_debug.h"
#include "dsm_si.h"
 | 
| 
#define  | PAT_PID   0 | 
|   | 
| 
#define  | PAT_TID   0 | 
|   | 
| 
#define  | PMT_TID   2 | 
|   | 
| 
#define  | TIMEOUT_PAT   700 | 
|   | 
| 
#define  | TIMEOUT_PMT   1000 | 
|   | 
| 
#define  | TIMEOUT_DEFAULT   0x7FFF | 
|   | 
| 
#define  | DSI_RQST_MAGIC   0xBA000000 | 
|   | 
| 
#define  | dsmctrl   dsi->ctrl | 
|   | 
 | 
| 
U32BIT  | TimeoutPeriod (U8BIT tid) | 
|   | 
| 
S_TableRequest *  | FindTableRqst (H_DsiInstance dsi, U16BIT xid, U8BIT tid) | 
|   | 
| H_DsiInstance  | DSI_CreateInstance (H_DsmControl ctrl, F_FILTER_CALLBACK cbfunc, S_DsmccConfig *config) | 
|   | Create instance of DSI.  More...
  | 
|   | 
| void  | DSI_DestroyInstance (H_DsiInstance dsi) | 
|   | Destroy instance created by SIQ_CreateInstance.  More...
  | 
|   | 
| BOOLEAN  | DSI_Start (H_DsiInstance dsi, U16BIT transId, DMXREF dmxref) | 
|   | Start getting SI data from Demux.  More...
  | 
|   | 
| void  | DSI_Stop (H_DsiInstance dsi) | 
|   | Stop getting SI data from Demux.  More...
  | 
|   | 
| U32BIT  | DSI_RequestTable (H_DsiInstance dsi, U16BIT pid, U16BIT xid, U8BIT tid) | 
|   | Request Table data. It supplies Table soon after the call to this function, and then, whenever the Table version changes. This state continues until DSI_CancelTable is called.  More...
  | 
|   | 
| void  | DSI_CancelTable (H_DsiInstance dsi, U32BIT rid) | 
|   | Cancel request for table data made by DSI_RequestTable()  More...
  | 
|   | 
| U32BIT  | DSI_CheckRequests (H_DsiInstance dsi, U32BIT now) | 
|   | Check outstanding PMT (and PAT) requests to see whether any need to be refreshed.  More...
  | 
|   | 
| BOOLEAN  | DSI_RequireTable (H_DsiInstance dsi, U8BIT *hdr, U16BIT *pXid, U8BIT *pVer) | 
|   | Check whether SI table section data is required.  More...
  | 
|   | 
DSM-CC SI support. 
- Date
 - 24 April 2014 
 
- Author
 - Adam Sturtridge 
 
 
Check outstanding PMT (and PAT) requests to see whether any need to be refreshed. 
- Parameters
 - 
  
  
 
- Returns
 - U32BIT time when need to call this function again 
 
 
 
Create instance of DSI. 
- Parameters
 - 
  
    | cbfunc | Function to process SI section data  | 
    | config | Configuration of DSM-CC  | 
  
   
- Returns
 - DSI Instance handle 
 
 
 
Destroy instance created by SIQ_CreateInstance. 
- Parameters
 - 
  
    | H_DsiInstance | dsi DSI instance handle.  | 
  
   
- Returns
 
 
 
      
        
          | U32BIT DSI_RequestTable  | 
          ( | 
          H_DsiInstance  | 
          dsi,  | 
        
        
           | 
           | 
          U16BIT  | 
          pid,  | 
        
        
           | 
           | 
          U16BIT  | 
          xid,  | 
        
        
           | 
           | 
          U8BIT  | 
          tid  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Request Table data. It supplies Table soon after the call to this function, and then, whenever the Table version changes. This state continues until DSI_CancelTable is called. 
- Parameters
 - 
  
    | dsi | DSI instance handle  | 
    | pid | PID for this table  | 
    | xid | Table extension ID  | 
    | tid | Table ID (e.g. PMT is 0x02)  | 
  
   
- Returns
 - zero is failure, non-zero is success 
 
 
 
      
        
          | BOOLEAN DSI_RequireTable  | 
          ( | 
          H_DsiInstance  | 
          dsi,  | 
        
        
           | 
           | 
          U8BIT *  | 
          hdr,  | 
        
        
           | 
           | 
          U16BIT *  | 
          pXid,  | 
        
        
           | 
           | 
          U8BIT *  | 
          pVer  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Check whether SI table section data is required. 
- Parameters
 - 
  
    | dsi | DSI instance handle  | 
    | data | pointer to section data (starting at table Id byte  | 
    | pXid | pointer to return table extension  | 
    | pVer | pointer to return table version  | 
  
   
- Returns
 - BOOLEAN - TRUE if required, otherwise FALSE 
 
 
 
      
        
          | BOOLEAN DSI_Start  | 
          ( | 
          H_DsiInstance  | 
          dsi,  | 
        
        
           | 
           | 
          U16BIT  | 
          transId,  | 
        
        
           | 
           | 
          DMXREF  | 
          dmxref  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Start getting SI data from Demux. 
- Parameters
 - 
  
    | dsi | DSI instance handle.  | 
    | transId | Transport stream ID  | 
    | dmxref | Demux reference handle  | 
  
   
- Returns
 
 
 
Stop getting SI data from Demux. 
- Parameters
 - 
  
    | H_DsiInstance | dsi DSI instance handle.  | 
  
   
- Returns