PRSATION.H
上传用户:super_houu
上传日期:2008-09-21
资源大小:4099k
文件大小:6k
- /****************************************************************************************
- * Copyright (c) 2002 ZORAN Corporation, All Rights Reserved
- * THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF ZORAN CORPORATION
- *
- * File: $Workfile: PRSATION.H $
- *
- * Description:
- * ============
- *
- *
- * Log:
- * ====
- * $Revision: 4 $
- * Last Modified by $Author: Angieh $ at $Modtime: 04-04-01 18:04 $
- ****************************************************************************************
- * Updates:
- ****************************************************************************************
- * $Log: /I76/I76_Common/I76_Reference/Playcore/Nav_DVD/Header/PRSATION.H $
- *
- * 4 04-04-01 18:06 Angieh
- * Add a function to cancel DVD Audio next track schedule.
- *
- * 3 12/30/03 11:29a Leonh
- * Angieh:Change for DVD AUDIO navigator header.
- *
- * 2 10/20/03 11:46a Leslie
- * check the variable type and change the dvda rtpb schedule way as the
- * same with DVD Video
- *
- * 1 03-04-28 11:15 Fwang
- * Initial for DVDA
- *
- * 2 23/04/02 9:34 Nirm
- * - Added dependency in "Config.h".
- *
- * 1 2/17/02 12:12 Rinata
- *
- * 1 2/17/02 11:38 Rinata
- *
- * 3 30/01/02 20:26 Nirm
- * Replaced min() with MIN().
- *
- * 2 9/01/02 16:40 Nirm
- * Corrected Include-Paths.
- ****************************************************************************************/
- #include "Config.h" // Global Configuration - do not remove!
- #ifndef __PRSATION_H
- #define __PRSATION_H
- #include "IncludeSysDefs.h"
- #include "PlaycoreNav_DVDHeadernavdef.h"
- #include "PlaycoreNav_DVDHeaderpgc.h"
- #include "PlaycoreNav_DVDHeaderpkt.h"
- #include "PlaycoreNav_DVDHeadermapping.h"
- // *************************************
- //
- // Video mode values (can be ORed togethe in return codes)
- //
- // Video_SetMode syntax: mode details extra return
- //--------------------------------------------------------------------
- #define VIDEO_MODE_WIDE 0x1 /* - - success */
- #define VIDEO_MODE_LETTER_BOX 0x2 /* - - success */
- #define VIDEO_MODE_PAN_SCAN 0x4 /* - - success */
- // *************************************
- //
- // Audio mode values (can be ORed togethe in return codes)
- //
- // Audio_SetMode syntax: mode details extra return
- //--------------------------------------------------------------------
- #define AUDIO_MODE_VOLUME 0x1
- #define SET_ABS 0
- #define SET_REL 1
- // value new volume (0 - 1000)
- #define AUDIO_MODE_BALANCE 0x2
- // SET_ABS
- // SET_REL
- // value new balance (-1000 - 1000)
- // NOTE: Volume and Balance units are measured in thousands.
- // Relative settings are added to the current values.
- // The new absolute values are returned.
- // Negative balance represents right to left ratio (right lower than left)
- // Positive balance represents left to right ratio (left lower than right)
- #define AUDIO_MODE_SURROUND 0x4 /* TBD TBD success */
- #define AUDIO_MODE_KARAOKE 0x8 /* SPRM(11) - success */
- // *************************************
- // *************************************
- //
- // Presentation events
- //
- // playback window identity change
- #define PRESENTATION_EVENT_WINDOW_ID 1
- // *************************************
- BOOL schop_SetOperation( S_ScheduledOp *schop, BYTE f, DWORD a, LBN v);
- BOOL schop_CancelScheduledOperation( S_ScheduledOp *schop);
- BOOL schop_WaitingForSchedule( S_ScheduledOp *schop, LBN v);
- void schop_Schedule( S_ScheduledOp *schop, DWORD p );
- long schop_NotifyEvent( S_ScheduledOp *schop);
- BOOL rtpb_NextPlayStep( void );
- void rtpb_CRealTimePlayback( void );
- void rtpb_ClearPumpSoughtFlag( void );
- BOOL rtpb_PumpSought( void );
- void rtpb_ReachedEOD( void );
- void rtpb_Flush( void );
- void rtpb_Stop( int duration, int type );
- void rtpb_ForceStop(int StillType);
- BOOL rtpb_ScheduleOp( BYTE func, DWORD arg);
- void rtpb_Schedule( S_PCI_GI *gi );
- void rtpb_runSchedule( BYTE func, DWORD arg, DWORD PTM );
- long rtpb_NotifyEvent();
- BOOL rtpb_SeamlessAngle( void );
- void rtpb_AvailableAngles( int ava );
- DWORD rtpb_LastVOBU_SA( void );
- int rtpb_GetStopPersistence( void );
- void rtpb_set_audio_decoding_stream( void );
- void rtpb_set_subpic_decoding_stream( BOOL user_request );
- BOOL rtpb_PositionUpdate( void );
- BOOL rtpb_engine_play( void );
- BOOL rtpb_ValidateDVDTitle( int title );
- BOOL rtpb_SelectVOBU( int cellNumber, DWORD VOBUaddress );
- void rtpb_Pause( BOOL a ) ;
- BOOL rtpb_Play( int cellNumber, long VOBUaddress ) ;
- void pci_C_PCI( void );
- void pci_Disable_HLI( void );
- BOOL pci_GetButtonLocation( int button, BUTTON_LOC *buffer );
- BOOL pci_Adjacent_Button_Select( long );
- BOOL pci_Button_Select(int button, BOOL valid_auto_activate);
- BOOL pci_Button_Activate( int, PBYTE );
- S_DATA_CONTAINER* pci_GetEmptyContainer( void );
- void pci_Reset( void );
- DWORD pci_GetAngleDestination( void );
- DWORD pci_GetAngleScanVobu(DWORD dwAngle);//LX0703
- // PTM related operations
- void pci_runSchedule( BYTE func, DWORD arg, DWORD PTM );
- void pci_StopNotification( void );
- void pci_SchedulePacket(S_DATA_CONTAINER *container ) ;
- // decode HLI data
- long pci_Decode( long PTM, S_DATA_CONTAINER *crt_packet );
- // Reference time to be set at the next PCI
- void pci_PlayNotification( void );
- // PCI buffer management
- // Reset APSTB
- void pci_ResetAPSTB( void );
- long pci_EmptyStreamPump( void );
- void pci_ReceiveContainer(S_DATA_CONTAINER *container); // made public now
- #ifdef DVD_AUDIO_SUPPORT//LeonH_1017_2003: add the runtime schedule uop for dvd audio
- void rtpb_cancel_AsvScheduleOp(void);
- void rtpb_cancel_EosScheduleOp(void);
- BOOL rtpb_aob_ScheduleOp( DWORD PTM,BYTE func,DWORD arg );
- void rtpb_aob_runSchedule( DWORD PTM,BYTE func,DWORD arg );
- #endif
- #endif //__PRSATION_H