⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 targetposition.h

📁 Linux下比较早的基于命令行的DVD播放器
💻 H
字号:
//// Copyright (c) 2003 by Istv醤 V醨adi//// This file is part of dxr3Player, a DVD player written specifically // for the DXR3 (aka Hollywood+) decoder card.// This program is free software; you can redistribute it and/or modify// it under the terms of the GNU General Public License as published by// the Free Software Foundation; either version 2 of the License, or// (at your option) any later version.//// This program is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the// GNU General Public License for more details.//// You should have received a copy of the GNU General Public License// along with this program; if not, write to the Free Software// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA#ifndef DXR3PLAYER_DVD_VM_TARGETPOSITION#define DXR3PLAYER_DVD_VM_TARGETPOSITION//------------------------------------------------------------------------------#include "dvd/vm/Position.h"//------------------------------------------------------------------------------namespace dvd { namespace vm {//------------------------------------------------------------------------------/** * Target position. This adds higher-level position manipulation * functions to the basic position. */class TargetPosition : public Position{public:    /**     * Construct the target position from the given starting position.     */    TargetPosition(const Position& initial);    /**     * Enter the PGC with the given number within the current domain.     *     * @return of the entry was successful     */    bool enterPGC(unsigned pgcNo, unsigned programNo = 1);    /**     * Enter the first play PGC.     */    void enterFirstPlayPGC();    /**     * Enter a menu in the current domain     */    bool enterMenu(unsigned menuID);    /**     * Enter a menu in the current domain.      *     * @param forced if true, the menu will be searched in all VTSs     * starting from the VMG.     */    bool enterMenu(unsigned menuID, bool forced);    /**     * Enter a Video Manager menu     */    bool enterVMGMenu(unsigned menuID);    /**     * Enter a Video Manager PGC     */    bool enterVMGPGC(unsigned pgcNo);        /**     * Repeat the current PGC.     */    bool repeatPGC();    /**     * Enter the next PGC as indicated by the current one.     */    bool enterNextPGC();    /**     * Enter the previous PGC as indicated by the current one.     */    bool enterPreviousPGC();    /**     * Enter the GoUp PGC as indicated by the current one.     */    bool enterGoUpPGC();    /**     * Enter the program with the given number.     *     * @param programNo the number of the program to enter.     */    bool enterProgram(unsigned programNo);    /**     * Repeat the current program.     */    bool repeatProgram();    /**     * Enter the next program.     */    bool enterNextProgram();    /**     * Enter the previous program.     */    bool enterPreviousProgram();    /**     * Enter the first cell of the last program in the PGC.     */    bool enterLastProgram();    /**     * Enter the given cell.     */    bool enterCell(unsigned cellNo);    /**     * Repeat the current cell (i.e. reset the sector number).     */    bool repeatCell();    /**     * Enter the cell after the current one (taking into account angles).     */    bool enterNextCell();    /**     * Enter the cell before the current one (taking into account angles).     */    bool enterPreviousCell();    /**     * Enter the last cell of the PGC.     */    bool enterLastCell();    /**     * Enter the last VOBU's first sector of the current cell.     */    bool enterLastVOBU();    /**     * Enter the given title. We should be in the Video Manager     * (should we?).     */    bool enterTT(unsigned titleNo);    /**     * Enter the given VTS and VTS title.     */    bool enterVTS(unsigned vtsNo, unsigned vtsTitleNo);        /**     * Enter the given VTS title. We should be in the Video Manager     * (should we?).     */    bool enterVTSTitle(unsigned vtsTitleNo, unsigned pttNo = 1);        /**     * Enter the given Part of Title in the current VTS. It also     * enters the PGC.     */    bool enterPTT(unsigned vtsTitleNo, unsigned pttNo);private:    /**     * Enter the given base cell. It is assumed that the cell is a     * base cell (see the definition above in the description of     * findBaseCell), and if it is an angle cell, its number is     * shifted by the current angle number.     */    bool enterBaseCell(PGC pgc, unsigned cellNo);};//------------------------------------------------------------------------------// Inline definitions//------------------------------------------------------------------------------inline TargetPosition::TargetPosition(const Position& initial) :    Position(initial){}//------------------------------------------------------------------------------} /* namespace dvd::vm */ } /* namespace dvd *///------------------------------------------------------------------------------#endif // DXR3PLAYER_DVD_VM_TARGETPOSITION// Local variables:// mode: c++// End:

⌨️ 快捷键说明

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