⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tvpfilter_p.h

📁 ti的数字电视芯片 tvp9000的源码
💻 H
字号:
/***************************************************************************** 
*    Property of Texas Instruments Incorporated, Copyright 2004
*    All rights reserved
******************************************************************************/
/*********************************************************************
*
* Description:
*  TVPFILTER_P.H contains private declarations related to the section filtering
*  
*  Contents:
*      Function prototypes
*      Global variables
*      Control structures
*      Constants
*   
**********************************************************************/
/*********************************************************************
*
* $Revision: $
*
* $History: TvpFilter_p.h $
* 
*********************************************************************/
#ifndef TVP_FILTER_P_DOT_H_IS_DEFINED
#define TVP_FILTER_P_DOT_H_IS_DEFINED

/*************************/
/* Filtering definitions */
#define TVP_SECTION_SIZE_MASK    0x0FFF
#define TVP_SECTION_OFFSET       3

/*************************/
/* Return array size     */
#define TVP_FILTER_ARRAY_SIZE    0x100  /* 255 entries           */
#define TVP_INDEX_GAP            10     /* max matches per packet*/

 
/*************************/
/* Channel buffer        */
typedef struct  {
      TvpLLBuff  *startAddress;  /* Buffer Start Address   */
      unsigned long   bufferSize;     /* Memory Size            */
      unsigned char   *nextBuffer;    /* next PIDBUFFER ptr     */
}TvpPidBuffer;

/*************************/
/* Channel table         */
typedef struct  {
      unsigned char   filterType;          /* Type of Filtering (Group,linklist,lev) */
      unsigned char   numFilters;          /* number of active filters               */
      unsigned char   mode;                /* (run, reset, invalid, disabled)        */
      unsigned char   reserved1;           /* */
      
      TvpPidBuffer *linBufferPtr;     /* PID buffer ptr                         */
      TvpLLBuff *headPtr;             /* first logical link in buffer           */
      TvpLLBuff *currPtr;             /* current logical link for filterGetData */
      TvpLLBuff *tailPtr;             /* last logical link of buffer            */
}TvpSwPidTable;
 
        
/*************************/
/* Return structure      */
typedef struct {
      unsigned char    *sectionPtr[TVP_FILTER_ARRAY_SIZE];    /* address of the section */
      unsigned long    filterPtr[TVP_FILTER_ARRAY_SIZE];      /* bitmap of filter match */
}TvpFilterReturn;
 


 
/*************************/
/* Globals               */
//extern TvpFilterReturn TvpFilterReturn1Glbl;        /* return structure */
//extern TvpFilterReturn TvpFilterReturn2Glbl;        /* return structure */
//extern TvpSwPidTable *TvpPidTableGlbl[TVP_CHANNEL_MAX_NUMBER];   /* array of channel table ptr */
//extern unsigned long TvpFiltHWFreeGlbl;                  /* index of free/busy HW Filters */
//extern TvpFilter *TvpFiltHWArrayGlbl[TVP_MAX_HW_FILT];  /* array of filterPtr for HW Filters */
//extern unsigned char TvpFiltHWCamArrayGlbl[TVP_MAX_HW_FILT]; /* array of logical channels and filter index */


/*************************/
/* Local functions       */
TVP_FERROR tvpFiltEnablePidLocal(TvpChanNumber logical_chan, TvpTransTbl *table);
TVP_FERROR tvpFiltDisablePidLocal(TvpChanNumber logical_chan);
void tvpFiltCopyLocal(unsigned char *source, unsigned char *dest, unsigned long numbytes);
void tvpFiltExtractSizeLocal(TvpFilterExtract *extractPtr);
void tvpFiltCleanFilterReturnLocal(TvpFilter *filterPtr, unsigned long irq_level);
unsigned long tvpFiltFormatLinkListLocal(TvpLLBuff **endLinkPtr, unsigned long size, TvpLLBuff *linkAddress);

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -