?? psi_private.h
字號:
/****************************************************************************************
* Copyright (c) 2005 ZORAN Corporation, All Rights Reserved
* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF ZORAN CORPORATION
*
* File: $Workfile: psi_private.h $
*
* Description:
* ============
*
*
* Log:
* ====
* $Revision: $
* Last Modified by $Author: $ at $Modtime: $
****************************************************************************************
* Updates:
****************************************************************************************/
#include "Config.h" // Global Configuration - do not remove!
#ifdef FTA_SUPPORT
#ifndef __PSI_PRIVATE_H_
#define __PSI_PRIVATE_H_
#include "Include\sysdefs.h"
#include "Playcore\FTA\PSI\psi_tables.h"
/////////////////////////////////////////////////////////////////////////////////////////////////
// Macros
#define PSI_NUM_OF_TABLES 3
#define SECTION_SIZE 1024
#define TDT_PID 0x14
#define TDT_TABLE_ID 0x70
#define TOT_TABLE_ID 0x73
#define PAT_PID 0
#define PAT_TABLE_ID 0
#define SDT_PID 0x11
#define SDT_TABLE_ID 0x42
#define NIT_PID 0x10
#define NIT_TABLE_ID 0x40
#define PMT_TABLE_ID 2
#define PSI_ILLEGAL_VALUE 0xffff
#define PSI_PARSE_PID(buffer) (((buffer[0] & 0x1F) << 8) | (buffer[1] & 0xFF))
#define PSI_PARSE_TABLE_ID_EXT(buffer) (((buffer[0] & 0xFF) << 8) | (buffer[1] & 0xFF))
#define PSI_PARSE_SECTION_SIZE(buffer) (((buffer[0] & 0x0F) << 8) | (buffer[1] & 0xFF))
/////////////////////////////////////////////////////////////////////////////////////////////////
// Enumerations & Typedefs
// The table reset function prototype
typedef void (*PSI_TABLE_RESET_FCT)(void);
// The table parsing function prototype
typedef BOOL (*PSI_TABLE_PARSE_FCT)(UINT32 ulSectionBuff, UINT16 uiSectionOffset);
/////////////////////////////////////////////////////////////////////////////////////////////////
// Structures
typedef struct
{
UINT16 data;
UINT16 mask;
} FILTER_FIELD;
typedef struct
{
UINT32 ulBuffAddr;
UINT16 uiBuffSize;
#ifdef _DEBUG
CHAR* tableName;
#endif
} TABLES_LUT_ENTRY;
typedef struct
{
union
{
PAT_SECTION* sPatSection;
PMT_SECTION* sPmtSection;
SDT_SECTION* sSdtSection;
} section;
UINT16 sTableIdExt; // The table ID extension - can be transport ID, program ID, etc.
UINT8 cNumberOfSections; // The total number of acquired sections
UINT8 cTotalNumberOfSections; // The total number of existing sections
} PSI_TABLE;
typedef struct
{
PSI_TABLE_PARSE_FCT pTableParseFct;
PSI_TABLE_RESET_FCT pTableResetFct;
} TABLE_FCT;
typedef struct
{
PSI_TABLE sTable;
TABLE_FCT fTableFct;
FILTER_FIELD sTableExt;
FILTER_FIELD sTableId;
UINT16 sTablePid;
BOOL bTableActive;
BOOL bTableCreated;
PSI_TABLE_STATE bTableAcquired;
UINT8 uiTableCpuDspIndex;
} PSI_TABLES_INFO;
#endif // __PSI_PRIVATE_H_
#endif // FTA_SUPPORT
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -