📄 tvpfilter_p.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 + -