mvobjdb.h

来自「这是DVD中伺服部分的核心代码」· C头文件 代码 · 共 88 行

H
88
字号
/*****************************************************************************
******************************************************************************
**                                                                          **
**  Copyright (c) 2005-2006 Videon Central, Inc.                            **
**  All rights reserved.                                                    **
**                                                                          **
**  The computer program contained herein contains proprietary information  **
**  which is the property of Videon Central, Inc.  The program may be used  **
**  and/or copied only with the written permission of Videon Central, Inc.  **
**  or in accordance with the terms and conditions stipulated in the        **
**  agreement/contract under which the programs have been supplied.         **
**                                                                          **
******************************************************************************
*****************************************************************************/
/**
 * @file mvobjdb.h
 *
 * Defines the API to the Movie Object Database.
 * The Movie Object Database handles the storage of and access to Movie Object data.
 *
 * $Id: mvobjdb.h,v 1.12 2006/10/25 23:35:40 rbehe Exp $
 */

#ifndef MVOBJDB_H
#define MVOBJDB_H

#ifdef __cplusplus
extern "C" {
#endif

#include "vdvd_types.h"
#include "loader_app.h"

/**
 * Movie Object Database Status types
 */
typedef  LONG MVOBJ_STATUS;
#define  MVOBJ_SUCCESS            (0)
#define  MVOBJ_FAILURE            (-1)
#define  MVOBJ_NULL_PTR           (-2)
#define  MVOBJ_FILE_ERROR         (-3)
#define  MVOBJ_INVALID_FORMAT     (-4)

/**
 * Movie Object constants
 */
#define MVOBJ_MAX_MOVIE_OBJECTS         1001
#define MVOBJ_MAX_NAV_COMMANDS          ( (600 * 1024) / sizeof(MVOBJ_NAV_COMMAND) )
#define MVOBJ_MAX_BUTTON_NAV_COMMANDS   255

/**
 * Movie Object Navigation Command
 */
typedef struct tagMVOBJ_NAV_COMMAND
{
    ULONG   ulOpCode;
    ULONG   ulDstOperand;
    ULONG   ulSrcOperand;
} MVOBJ_NAV_COMMAND;

/**
 * Movie Object terminal information
 */
typedef struct tagMVOBJ_TERMINFO
{
    BOOLEAN fResumeIntentionFlag;
    BOOLEAN fMenuCallMask;
    BOOLEAN fTitleSearchMask;
} MVOBJ_TERMINFO;

/**
 * Movie Object Database Interface Functions
 */
MVOBJ_STATUS        MvObjCreate(LOADER_HANDLE tLoader);
MVOBJ_STATUS        MvObjDelete(void);
MVOBJ_STATUS        MvObjLoad(void);
USHORT*             MvObjGetNumberOfMvObjs(void);
MVOBJ_TERMINFO*     MvObjGetTermInfo(ULONG ulMvObjID);
USHORT*             MvObjGetNumberOfNavCmds(ULONG ulMvObjID);
MVOBJ_NAV_COMMAND*  MvObjGetNavCmds(ULONG ulMvObjID);

#ifdef __cplusplus
}
#endif

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?