MythTV  master
mythbdplayer.h
Go to the documentation of this file.
1 #ifndef MYTHBDPLAYER_H
2 #define MYTHBDPLAYER_H
3 
4 // Qt headers
5 #include <QCoreApplication>
6 
7 // MythTV headers
8 #include "mythplayer.h"
9 
10 class MythBDPlayer : public MythPlayer
11 {
13 
14  public:
15  explicit MythBDPlayer(PlayerFlags flags = kNoFlags)
16  : MythPlayer(flags) {}
17  bool HasReachedEof(void) const override; // MythPlayer
18  bool GoToMenu(QString str) override; // MythPlayer
19  int GetNumChapters(void) override; // MythPlayer
20  int GetCurrentChapter(void) override; // MythPlayer
21  void GetChapterTimes(QList<long long> &times) override; // MythPlayer
22  int64_t GetChapter(int chapter) override; // MythPlayer
23 
24  int GetNumTitles(void) const override; // MythPlayer
25  int GetNumAngles(void) const override; // MythPlayer
26  int GetCurrentTitle(void) const override; // MythPlayer
27  int GetCurrentAngle(void) const override; // MythPlayer
28  int GetTitleDuration(int title) const override; // MythPlayer
29  QString GetTitleName(int title) const override; // MythPlayer
30  QString GetAngleName(int angle) const override; // MythPlayer
31  bool SwitchTitle(int title) override; // MythPlayer
32  bool PrevTitle(void) override; // MythPlayer
33  bool NextTitle(void) override; // MythPlayer
34  bool SwitchAngle(int angle) override; // MythPlayer
35  bool PrevAngle(void) override; // MythPlayer
36  bool NextAngle(void) override; // MythPlayer
37  void SetBookmark(bool clear) override; // MythPlayer
38  uint64_t GetBookmark(void) override; // MythPlayer
39 
40  // Non-const gets
41  // Disable screen grabs for Bluray
42  char *GetScreenGrabAtFrame(uint64_t /*frameNum*/, bool /*absolute*/,
43  int &/*buflen*/, int &/*vw*/, int &/*vh*/,
44  float &/*ar*/) override // MythPlayer
45  { return nullptr; }
46  char *GetScreenGrab(int /*secondsin*/, int &/*bufflen*/,
47  int &/*vw*/, int &/*vh*/, float &/*ar*/) override // MythPlayer
48  { return nullptr; }
49 
50  protected:
51  // Playback
52  void VideoStart(void) override; // MythPlayer
53  bool VideoLoop(void) override; // MythPlayer
54  void EventStart(void) override; // MythPlayer
55  void DisplayPauseFrame(void) override; // MythPlayer
56  void PreProcessNormalFrame(void) override; // MythPlayer
57 
58  // Seek stuff
59  bool JumpToFrame(uint64_t frame) override; // MythPlayer
60 
61  // Private decoder stuff
62  void CreateDecoder(char *testbuf, int testreadsize) override; // MythPlayer
63 
64  // Non-const gets
65  // Disable screen grabs for Bluray
66  void SeekForScreenGrab(uint64_t &/*number*/, uint64_t /*frameNum*/,
67  bool /*absolute*/) override // MythPlayer
68  {}
69 
70  private:
71  void DisplayMenu(void);
72  bool m_stillFrameShowing {false};
74 };
75 
76 #endif // MYTHBDPLAYER_H
bool SwitchTitle(int title) override
bool NextTitle(void) override
Q_DECLARE_TR_FUNCTIONS(MythBDPlayer)
PlayerFlags
Definition: mythplayer.h:88
int GetNumChapters(void) override
int GetNumTitles(void) const override
int GetCurrentTitle(void) const override
void PreProcessNormalFrame(void) override
bool JumpToFrame(uint64_t frame) override
bool PrevAngle(void) override
int GetCurrentChapter(void) override
void SetBookmark(bool clear) override
char * GetScreenGrabAtFrame(uint64_t, bool, int &, int &, int &, float &) override
Returns a one RGB frame grab from a video.
Definition: mythbdplayer.h:42
QString GetAngleName(int angle) const override
static void clear(SettingsMap &cache, SettingsMap &overrides, const QString &myKey)
Definition: mythdb.cpp:830
QString m_initialBDState
Definition: mythbdplayer.h:73
int64_t GetChapter(int chapter) override
char * GetScreenGrab(int, int &, int &, int &, float &) override
Returns a one RGB frame grab from a video.
Definition: mythbdplayer.h:46
bool GoToMenu(QString str) override
uint64_t GetBookmark(void) override
void EventStart(void) override
void CreateDecoder(char *testbuf, int testreadsize) override
bool PrevTitle(void) override
void VideoStart(void) override
bool VideoLoop(void) override
MythBDPlayer(PlayerFlags flags=kNoFlags)
Definition: mythbdplayer.h:15
int GetNumAngles(void) const override
void DisplayPauseFrame(void) override
void DisplayMenu(void)
QString GetTitleName(int title) const override
int GetTitleDuration(int title) const override
int GetCurrentAngle(void) const override
bool SwitchAngle(int angle) override
void SeekForScreenGrab(uint64_t &, uint64_t, bool) override
Definition: mythbdplayer.h:66
bool m_stillFrameShowing
Definition: mythbdplayer.h:72
bool NextAngle(void) override
bool HasReachedEof(void) const override
Definition: mythbdplayer.cpp:9
void GetChapterTimes(QList< long long > &times) override