?? mapping.h
字號:
/****************************************************************************************
* Copyright (c) 2002 ZORAN Corporation, All Rights Reserved
* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF ZORAN CORPORATION
*
* File: $Workfile: MAPPING.H $
*
* Description:
* ============
*
*
* Log:
* ====
* $Revision: 4 $
* Last Modified by $Author: Angieh $ at $Modtime: 04-03-08 11:40 $
****************************************************************************************
* Updates:
****************************************************************************************
* $Log: /I76/I76_Common/I76_Reference/Playcore/Nav_DVD/Header/MAPPING.H $
****************************************************************************************/
#include "Config.h" // Global Configuration - do not remove!
#ifndef __MAPPING_H
#define __MAPPING_H
#include "vpu_api.h"
#include "Playcore\Nav_DVD\Header\stream.h"
#include "Playcore\Nav_DVD\Header\dvddef.h"
#define pgc_gi_Get_PlayBack_Time() ((DWORD) TIME_DECOD(fs_scGetByte(g_pDVDNav->pgc.info_sc_st.sc_handle,4), fs_scGetByte(g_pDVDNav->pgc.info_sc_st.sc_handle,5), fs_scGetByte(g_pDVDNav->pgc.info_sc_st.sc_handle,6), fs_scGetByte(g_pDVDNav->pgc.info_sc_st.sc_handle,7)))
#define pgc_gi_Get_UOP_CTL() ((DWORD)fs_scGetDword(g_pDVDNav->pgc.info_sc_st.sc_handle, 8) & 0x01FFFFEFL)
#define tt_Get_Count() (g_pDVDNav->vmg.title_table_sc_st.size / 12)
#define atrt_Get_Video_Attr( st ) (fs_scGetWord((st)->sc_handle, 0))
#define atrt_Get_Audio_Stream_Count( st ) ((int) fs_scGetWord((st)->sc_handle,2) & 0x0F)
#define atrt_Get_DA_Audio_Stream_Count( st ) ((int) fs_scGetWord((st)->sc_handle + 1,0) & 0x0F)
#define atrt_Get_SP_Stream_Count( st ) ((int) fs_scGetWord((st)->sc_handle,84) & 0x3F)
BOOL pgc_cmdt_Get_Pre_Command ( S_SC_STORAGE *st, BYTE *buffer, int command );
BOOL pgc_cmdt_Get_Cell_Command( S_SC_STORAGE *st, BYTE *buffer, int command );
BOOL pgc_cmdt_Get_Post_Command( S_SC_STORAGE *st, BYTE *buffer, int command );
BOOL pgc_gi_Get_Audio_Control_Info( int stream, S_PGC_AST_CTL *buffer);
BOOL pgc_gi_Get_SP_Control_Info ( int stream, S_PGC_SPST_CTL *buffer);
void pgc_gi_Get_Navigation_Info( S_PGC_NV_CTL *buffer );
void pgc_gi_Get_SP_Palette ( S_PAL_ENTRY *buffer );
void pgc_gi_Get_Program_Content( S_PGC_CNT *buffer );
BOOL c_pbit_Get_Cell_PBI( S_SC_STORAGE *st, int cell, S_C_PBI *buffer);
BOOL pgc_pgmap_Get_Entry_Cell( S_SC_STORAGE *st, int program, S_PG *buffer);
BOOL pgc_pgmap_Get_PG_CNT(S_SC_STORAGE *st, int program,DWORD *pg_cnt);
BOOL c_posit_Get_Cell_Position(S_SC_STORAGE *st, int cell, S_C_POSIT *buffer);
int c_posit_Get_Last_C_IDN( S_SC_STORAGE *st, int C_VOB_IDN );
BOOL atrt_Get_Audio_Attr ( S_SC_STORAGE *st, AUDIO_ATTRIBUTES *buffer, int stream );
BOOL atrt_Get_Audio_MultiChanel_Attr( S_SC_STORAGE *st, S_MU_A_ATR *buffer, int stream );
BOOL atrt_Get_SP_Attr ( S_SC_STORAGE *st, S_SP_ATR *buffer, int stream );
BOOL tt_Get_TT_SRP( S_TT_SRP *buffer, int TTN);
int tt_Get_TTN( int VTSN, int VTS_TTN );
DWORD tt_Get_VTS_SA( int VTSN);
//
// Specific sizes for VMGI / VTSI data
//
/* C_VMG class translation */
BOOL vmg_construct(S_FPOS *address, WORD country, WORD language);
void vmg_delete( void );
void vmg_GetVTS( S_FPOS *fposp, int VTSN );
WORD vmg_Get_PTL_ID( WORD level, int VTSN);
WORD vmg_Get_Menu_Structure( WORD VMG_Parental_ID );
#define vmg_GetTT( buffer, TTN ) tt_Get_TT_SRP( buffer, TTN)
#ifdef NO_VMGI_DATA_REDUCTION
void vmg_GetVolumeID( VOLUME_ID *buffer );
#define vmg_Get_VTS_Count() ((int) buff2word(g_pDVDNav->vmg.st.buffer,62) & 0x7F)
#define vmg_Get_CAT() ((BYTE) g_pDVDNav->vmg.st.buffer[35])
#else
#define vmg_Get_VTS_Count() ((int) g_pDVDNav->vmg.vts_count&0x7F)
#define vmg_Get_CAT() ( g_pDVDNav->vmg.vol_cat)
#define vmg_GetVolumeID( p_vol_id ) *(VOLUME_ID *)p_vol_id = g_pDVDNav->vmg.vol_id
#endif
/* C_VTS class translation */
BOOL vts_construct( S_FPOS *address ,WORD language);
void vts_delete(void );
#define vts_Get_CAT( st ) ( (BYTE) (st)->buffer[35] )
BOOL vts_GetPTT( S_PGC_SRP *buffer, int VTS_TTN, int PTTN);
DWORD vts_GetTimeVOBU( WORD PGCN, DWORD TIME);
int vts_Get_PTTN( int PGCN, int PGN );
WORD vts_Get_Menu_Structure( WORD VMG_Parental_ID );
/* C_DOM, C_TITLE_DOM, C_MENU_DOM translation */
void dom_init( S_DOM *dom, int type, BYTE* sc_handle );
void dom_delete( S_DOM *dom );
void dom_SetPGC_table( S_DOM *dom, S_FPOS *pgct ) ;
BOOL title_dom_construct( S_DOM *dom, /*LBN VOBSaddress,*/ S_FPOS *attr, S_FPOS *pgct );
void title_dom_GetPGC( S_DOM *dom, S_FPOS *fposp, S_PGC_SRP *srp, WORD ptl_lvl);
BOOL menu_dom_construct( S_DOM *dom, /*LBN VOBSaddress,*/ S_FPOS *attr, S_FPOS *pgct, WORD language );
void menu_dom_GetPGC( S_DOM *dom, S_FPOS *fposp, S_PGC_SRP *srp, WORD ptl_lvl, BOOL menu_id );
#endif //__MAPPING_H
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -