Coremain.h
上传用户:super_houu
上传日期:2008-09-21
资源大小:4099k
文件大小:4k
源码类别:

DVD

开发平台:

Others

  1. /****************************************************************************************
  2.  *  Copyright (c) 2002 ZORAN Corporation, All Rights Reserved
  3.  *  THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF ZORAN CORPORATION
  4.  *
  5.  *  File: $Workfile: Coremain.h $             
  6.  *
  7.  * Description: Interface for creating and manipulating a generic Array.
  8.  * ============
  9.  * 
  10.  * 
  11.  * Log:
  12.  * ====
  13.  * $Revision: 8 $
  14.  * Last Modified by $Author: Johnk $ at $Modtime: 3/12/04 5:24p $ 
  15.  ****************************************************************************************
  16.  * Updates:
  17.  ****************************************************************************************
  18.  * $Log: /I76/I76_Common/I76_Reference/Playcore/Coremain/Coremain.h $
  19.  * 
  20.  * 8     3/12/04 5:45p Johnk
  21.  * Merged EZVIEW function - inserted EZVIEW_ENABLE macro
  22.  * 
  23.  * 7     2/20/04 6:09p Glenl
  24.  * Merged S1 code
  25.  * 
  26.  * 6     11/28/03 5:47p Fwang
  27.  * 
  28.  * 5     9/29/03 11:49a Chaol
  29.  * code clear
  30.  * 
  31.  * 4     9/05/03 9:56a Stephaneh
  32.  * Modification for Bass Management Implementation
  33.  * 
  34.  * 3     03-05-27 22:40 Fwang
  35.  * Add NVM bookmark.
  36.  * 
  37.  * 2     5/01/03 8:25a Stephaneh
  38.  * EZ View Implementation - See macro EZVIEW_ENABLED in case of problem.
  39.  * 
  40.  * 4     23/04/02 9:28 Nirm
  41.  * - Added dependency in "Config.h".
  42.  * 
  43.  * 3     27/03/02 13:27 Nirm
  44.  * - Added declaration of core_dispatch() and ui_dispatch().
  45.  * 
  46.  * 2     9/01/02 14:44 Nirm
  47.  * Corrected Include-Paths.
  48.  * 
  49.  * 1     26/12/01 14:57 Nirm
  50.  ****************************************************************************************/
  51. #include "Config.h" // Global Configuration - do not remove!
  52. #ifndef COREMAIN_H
  53. #define COREMAIN_H
  54. #include "KernelKer_API.h"
  55. void ui_dispatch(void);
  56. void core_dispatch(void);
  57. void core_save_NVM_setting_In_Flash( unsigned short far *flash_sa);
  58. /* Values for query_core */
  59. typedef enum {
  60. CQ_NONE,
  61. CQ_AVAILABLE_CHANNELS,
  62. CQ_AVAILABLE_CHAPTERS,
  63. CQ_VALID_ZOOM,
  64. #ifdef EZVIEW_ENABLED // ZKR GL031204 : Changed the macro name.
  65. // <<< ZKR GL031204 : Improved EZVIEW function.
  66. CQ_GET_EZVIEW_MODE,
  67. CQ_GET_NEXT_EZVIEW_MODE,
  68. // ZKR GL031204 >>>
  69. #endif
  70. #ifdef S1_GUI
  71. CQ_WIDESCREEN_MODE, // ZKR GLV778
  72. // <<< SEC BK.LIM062003: Check repeat a_b 5 sec
  73. #ifdef EXINO2
  74. CQ_CAN_SET_REPEATAB_B,
  75. CQ_CAN_SKIP_PREVIOUS,
  76. CQ_CAN_SKIP_NEXT,
  77. CQ_CAN_GOTO_BOOKMARK,
  78. CQ_ONE_SEQUENTIAL_PGC_TITLE, // SEC shKang080103 
  79. #endif
  80. // SEC BK.LIM062003>>>
  81. #endif // S1_GUI
  82. } CORE_QUERY;
  83. typedef enum{
  84. CQ_ZOOM_VALID,
  85. CQ_ZOOM_INVALID,
  86. CQ_ZOOM_BUSY,
  87. } CQ_ZOOM_STATUS;
  88. /* Macro for constructing core error parameter */
  89. #define MAKE_ERROR_PARAM(_core_event_, _error_code_) 
  90.   (void *) ( (((DWORD) (_core_event_)) << 16) | ((DWORD) (_error_code_)) )
  91. /* Macro for extracting event from core error parameter */
  92. #define EXTRACT_CORE_EVENT(_pvParam_) 
  93.   (EVENT) ( ((DWORD) (_pvParam_)) >> 16 )
  94. /* Macro for extracting error_code from core error parameter */
  95. #define EXTRACT_ERROR_CODE(_pvParam_) 
  96.   (WORD) ( ((DWORD) (_pvParam_)) & 0x0000ffff)
  97. typedef enum{
  98. HDLR_ENTER = 0,
  99. HDLR_EXIT,
  100. HDLR_EVENT
  101. } HDLR_OP;
  102. int install_core_event_handler( int (*new_handler)(HDLR_OP Op, EVENT Event, void *Param));
  103. void remove_core_event_handler( int handler_id );
  104. int install_ui_event_handler( int (*new_handler)(HDLR_OP Op, EVENT Event, void *Param));
  105. void remove_ui_event_handler( int handler_id );
  106. void ui_init( void );
  107. void send_tick( EVENT tick_event );
  108. void send_remote_event( WORD keycode );
  109. int get_core_info_available_audio_stream( void );
  110. void query_core( CORE_QUERY cq, void *pvInput, void *pvOutput );
  111. void core_report_error( EVENT event, void *pvParam );
  112. void core_clear_bookmark_info( int bookmark_num ); /* bookmark_num is 1,2,3. 0 clears all bookmarks */
  113. void core_set_bookmark_info( int bookmark_num, WORD time_in_sec );
  114. #ifdef EXINO2 //ZKR JK0426
  115. int get_language_index( WORD lcd );
  116. #endif
  117. #endif //COREMAIN_H