📄 mv_itvl.h
字号:
/*==========================================================================*/
/* (Copyright (C) 2003 Koninklijke Philips Electronics N.V. */
/* All rights reserved. */
/* This source code and any compilation or derivative thereof is the */
/* proprietary information of Koninklijke Philips Electronics N.V. */
/* and is confidential in nature. */
/* Under no circumstances is this software to be exposed to or placed */
/* under an Open Source License of any type without the expressed */
/* written permission of Koninklijke Philips Electronics N.V. */
/*==========================================================================*/
/*==========================================================================*/
/*
INCLUDE_FILE: MV_ITV.H
PACKAGE: ITV
COMPONENT: MV
(C) 1998: Philips Semiconductors
/*==========================================================================*/
#ifndef _MV_ITV_INCLUDED_
#define _MV_ITV_INCLUDED_
#ifdef __cplusplus
extern "C" {
#endif
/*==========================================================================*/
/* G L O B A L S Y M B O L D E F I N I T I O N S */
/*==========================================================================*/
/*MDP=======================================================================*/
/*
ITEM NAME: Interrupt values
PACKAGE: MV_ITV
DESCRIPTION:
Interrupt Source.
DEFINITION:
*/
typedef enum {
MV_ITV_RESET_DONE = 0,
MV_ITV_USER_DEFINED_DATA = 1,
MV_ITV_VIDEO_EVENT = 2,
MV_ITV_ERROR_EVENT = 3,
MV_ITV_FBM_EVENT = 4,
MV_ITV_END_OF_PICTURE_HEADER = 5,
MV_ITV_END_OF_PICTURE_DECODING = 6,
MV_ITV_SYSTEM_EVENT = 7,
MV_ITV_VIDEO_INSYNC = 8,
MV_ITV_NEW_VIDEO_PES = 9,
MV_ITV_NEW_VIDEO_DTS = 10,
MV_ITV_NEW_VIDEO_PTS = 11,
MV_ITV_VIDEO_FIFO_FULL = 12,
MV_ITV_VIDEO_FIFO_EMPTY = 13,
MV_ITV_VIDEO_FIFO_OVER = 14,
MV_ITV_VIDEO_FIFO_UNDER = 15,
MV_ITV_VIDEO_FIFO_PTR_UPDATED = 16,
MV_ITV_STILL_FIFO_READ = 17,
/* Next line should be last */
MV_ITV_MAX_INDEX
} MV_ITV;
/*EMP=======================================================================*/
/*==========================================================================*/
/* G L O B A L D A T A R E F E R E N C E S */
/*==========================================================================*/
extern unsigned long GV_itv_video_status;
extern unsigned long GV_itv_error_event;
extern unsigned long GV_itv_fbm_event;
extern unsigned long GV_itv_video_event;
extern unsigned long GV_itv_system_event;
/*==========================================================================*/
/* G L O B A L F U N C T I O N P R O T O T Y P E S */
/*==========================================================================*/
/*EMPF======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_ITV_init
DESCRIPTION:
Set up the interrupt driver.
RETURNS:
CALLING SEQUENCE:
*/
extern void
MV_ITV_init(
void );
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_ITV_set_defaults
DESCRIPTION:
Returns the MV_ITV package to it's default settings.
RETURNS:
CALLING SEQUENCE:
*/
extern void
MV_ITV_set_defaults(
void );
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_ITV_term
DESCRIPTION:
Frees all resources allocated by the MV_ITV package. After this
call only MV_ITV_init() may be called.
RETURNS:
CALLING SEQUENCE:
*/
extern void
MV_ITV_term(
void );
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_ITV_install_isr
DESCRIPTION:
Install an interrupt service routine for an
interrupt source in the interrupt status register.
The installed service routine will be called when the
specified source causes an interrupt.
NOTES:
The irpt source can be enabled by setting 'enable' to
TRUE, and can be disabled and enabled by calling
MV_ITV_enable_irpt and MV_ITV_disable_irpt.
For the interrupt to occur the irpt source must be enabled.
RETURNS:
CALLING SEQUENCE:
*/
extern void
MV_ITV_install_isr(
void (*in_isr_ptr)(void), /* In: Irpt service routine */
MV_ITV in_index, /* In: Irpt source for isr */
BOOLEAN in_enable /* In: Irpt initialy enabled */
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_ITV_deinstall_isr
DESCRIPTION:
De-install an interrupt service routine for an
interrupt source in the interrupt status register.
RETURNS:
CALLING SEQUENCE:
*/
extern void
MV_ITV_deinstall_isr(
MV_ITV in_index /* In: Irpt source for isr */
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_ITV_enable_irpt
DESCRIPTION:
Enable an interrupt source.
RETURNS:
CALLING SEQUENCE:
*/
extern void
MV_ITV_enable_irpt(
MV_ITV in_index /* In: Irpt source for isr */
);
/*EMP=======================================================================*/
#ifdef DV_DEBUG
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_ITV_debug_enable_irpt
DESCRIPTION:
Enable an interrupt source for debugging.
RETURNS:
CALLING SEQUENCE:
*/
extern void
MV_ITV_debug_enable_irpt(
MV_ITV in_index /* In: Irpt source for isr */
);
/*EMP=======================================================================*/
#endif
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_ITV_disable_irpt
DESCRIPTION:
Disable an interrupt source.
RETURNS:
CALLING SEQUENCE:
*/
extern void
MV_ITV_disable_irpt(
MV_ITV in_index /* In: Irpt source for isr */
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_ITV_isr_enable_irpt
DESCRIPTION:
Enable an interrupt source.
This function doesn't use enter/leave region.
RETURNS:
CALLING SEQUENCE:
*/
extern void
MV_ITV_isr_enable_irpt(
MV_ITV in_index /* In: Irpt source for isr */
);
/*EMP=======================================================================*/
/*MPF=======================================================================*/
/*
FUNCTION NAME: MV_ITV_isr_disable_irpt
DESCRIPTION:
Disable an interrupt source from an interrupt service routine.
This function doesn't use enter/leave region.
RETURNS:
CALLING SEQUENCE:
*/
extern void
MV_ITV_isr_disable_irpt(
MV_ITV in_index /* In: Irpt source for isr */
);
/*EMP=======================================================================*/
/*EEMP======================================================================*/
#ifdef __cplusplus
}
#endif
#endif /* End #ifndef _MV_ITV_INCLUDED_ */
/*==========================================================================*/
/* H I S T O R Y */
/*==========================================================================*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -