Kodi Documentation 18.0
Kodi is an open source media player and entertainment hub.
CDVDInputStreamBluray Class Reference

#include <DVDInputStreamBluray.h>

Inheritance diagram for CDVDInputStreamBluray:
CDVDInputStream CDVDInputStream::IDisplayTime CDVDInputStream::IChapter CDVDInputStream::IPosTime CDVDInputStream::IMenus

Classes

struct  SPlane
 

Public Member Functions

 CDVDInputStreamBluray ()=delete
 
 CDVDInputStreamBluray (IVideoPlayer *player, const CFileItem &fileitem)
 
 ~CDVDInputStreamBluray () override
 
bool Open () override
 
void Close () override
 
int Read (uint8_t *buf, int buf_size) override
 
int64_t Seek (int64_t offset, int whence) override
 
bool Pause (double dTime) override
 
void Abort () override
 
bool IsEOF () override
 
int64_t GetLength () override
 
int GetBlockSize () override
 
ENextStream NextStream () override
 
void ActivateButton () override
 
void SelectButton (int iButton) override
 
int GetCurrentButton () override
 
int GetTotalButtons () override
 
void OnUp () override
 
void OnDown () override
 
void OnLeft () override
 
void OnRight () override
 
void OnMenu () override
 
void OnBack () override
 
void OnNext () override
 
void OnPrevious () override
 
bool HasMenu () override
 
bool IsInMenu () override
 
bool OnMouseMove (const CPoint &point) override
 
bool OnMouseClick (const CPoint &point) override
 
void SkipStill () override
 
bool GetState (std::string &xmlstate) override
 
bool SetState (const std::string &xmlstate) override
 
void UserInput (bd_vk_key_e vk)
 
bool MouseMove (const CPoint &point)
 
bool MouseClick (const CPoint &point)
 
int GetChapter () override
 
int GetChapterCount () override
 
void GetChapterName (std::string &name, int ch=-1) override
 
int64_t GetChapterPos (int ch) override
 
bool SeekChapter (int ch) override
 
CDVDInputStream::IDisplayTimeGetIDisplayTime () override
 
int GetTotalTime () override
 
int GetTime () override
 
CDVDInputStream::IPosTimeGetIPosTime () override
 
bool PosTime (int ms) override
 
void GetStreamInfo (int pid, std::string &language)
 
void OverlayCallback (const BD_OVERLAY *const)
 
BLURAY_TITLE_INFOGetTitleLongest ()
 
BLURAY_TITLE_INFOGetTitleFile (const std::string &name)
 
void ProcessEvent ()
 
- Public Member Functions inherited from CDVDInputStream
 CDVDInputStream (DVDStreamType m_streamType, const CFileItem &fileitem)
 
virtual ~CDVDInputStream ()
 
virtual std::string & GetContent ()
 
virtual std::string GetFileName ()
 
virtual CURL GetURL ()
 
virtual bool CanSeek ()
 
virtual bool CanPause ()
 
virtual void SetReadRate (unsigned rate)
 Indicate expected read rate in bytes per second. This could be used to throttle caching rate. Should be seen as only a hint. More...
 
virtual bool GetCacheStatus (XFILE::SCacheStatus *status)
 Get the cache status. More...
 
bool IsStreamType (DVDStreamType type) const
 
virtual BitstreamStats GetBitstreamStats () const
 
bool ContentLookup ()
 
virtual bool IsRealtime ()
 
void SetRealtime (bool realtime)
 
virtual IDemuxGetIDemux ()
 
virtual ITimesGetITimes ()
 
const CVariantGetProperty (const std::string key)
 
- Public Member Functions inherited from CDVDInputStream::IDisplayTime
virtual ~IDisplayTime ()=default
 
- Public Member Functions inherited from CDVDInputStream::IChapter
virtual ~IChapter ()=default
 
- Public Member Functions inherited from CDVDInputStream::IPosTime
virtual ~IPosTime ()=default
 
- Public Member Functions inherited from CDVDInputStream::IMenus
virtual ~IMenus ()=default
 
virtual double GetTimeStampCorrection ()
 

Protected Types

enum  EHoldState {
  HOLD_NONE = 0 , HOLD_HELD , HOLD_DATA , HOLD_STILL ,
  HOLD_ERROR , HOLD_EXIT
}
 
typedef std::shared_ptr< CDVDOverlayImageSOverlay
 
typedef std::list< SOverlaySOverlays
 

Protected Member Functions

void OverlayFlush (int64_t pts)
 
void OverlayClose ()
 

Static Protected Member Functions

static void OverlayClear (SPlane &plane, int x, int y, int w, int h)
 
static void OverlayInit (SPlane &plane, int w, int h)
 

Protected Attributes

IVideoPlayerm_player = nullptr
 
BLURAYm_bd = nullptr
 
const BLURAY_TITLE * m_title = nullptr
 
BLURAY_TITLE_INFOm_titleInfo = nullptr
 
uint32_t m_playlist = MAX_PLAYLIST_ID + 1
 
BLURAY_CLIP_INFO * m_clip = nullptr
 
uint32_t m_angle = 0
 
bool m_menu = false
 
bool m_navmode = false
 
int m_dispTimeBeforeRead = 0
 
SPlane m_planes [2]
 
enum CDVDInputStreamBluray::EHoldState m_hold = HOLD_NONE
 
BD_EVENT m_event
 
- Protected Attributes inherited from CDVDInputStream
DVDStreamType m_streamType
 
BitstreamStats m_stats
 
std::string m_content
 
CFileItem m_item
 
bool m_contentLookup
 
bool m_realtime
 

Additional Inherited Members

- Public Types inherited from CDVDInputStream
enum  ENextStream { NEXTSTREAM_NONE , NEXTSTREAM_OPEN , NEXTSTREAM_RETRY }
 

Member Typedef Documentation

◆ SOverlay

typedef std::shared_ptr<CDVDOverlayImage> CDVDInputStreamBluray::SOverlay
protected

◆ SOverlays

typedef std::list<SOverlay> CDVDInputStreamBluray::SOverlays
protected

Member Enumeration Documentation

◆ EHoldState

Enumerator
HOLD_NONE 
HOLD_HELD 
HOLD_DATA 
HOLD_STILL 
HOLD_ERROR 
HOLD_EXIT 

Constructor & Destructor Documentation

◆ CDVDInputStreamBluray() [1/2]

CDVDInputStreamBluray::CDVDInputStreamBluray ( )
delete

◆ CDVDInputStreamBluray() [2/2]

CDVDInputStreamBluray::CDVDInputStreamBluray ( IVideoPlayer player,
const CFileItem fileitem 
)

◆ ~CDVDInputStreamBluray()

CDVDInputStreamBluray::~CDVDInputStreamBluray ( )
override

Member Function Documentation

◆ Abort()

void CDVDInputStreamBluray::Abort ( )
overridevirtual

Reimplemented from CDVDInputStream.

◆ ActivateButton()

void CDVDInputStreamBluray::ActivateButton ( )
inlineoverridevirtual

◆ Close()

void CDVDInputStreamBluray::Close ( void  )
overridevirtual

Reimplemented from CDVDInputStream.

◆ GetBlockSize()

int CDVDInputStreamBluray::GetBlockSize ( )
inlineoverridevirtual

Reimplemented from CDVDInputStream.

◆ GetChapter()

int CDVDInputStreamBluray::GetChapter ( )
overridevirtual

◆ GetChapterCount()

int CDVDInputStreamBluray::GetChapterCount ( )
overridevirtual

◆ GetChapterName()

void CDVDInputStreamBluray::GetChapterName ( std::string &  name,
int  ch = -1 
)
inlineoverridevirtual

◆ GetChapterPos()

int64_t CDVDInputStreamBluray::GetChapterPos ( int  ch)
overridevirtual

◆ GetCurrentButton()

int CDVDInputStreamBluray::GetCurrentButton ( )
inlineoverridevirtual

◆ GetIDisplayTime()

CDVDInputStream::IDisplayTime * CDVDInputStreamBluray::GetIDisplayTime ( )
inlineoverridevirtual

Reimplemented from CDVDInputStream.

◆ GetIPosTime()

CDVDInputStream::IPosTime * CDVDInputStreamBluray::GetIPosTime ( )
inlineoverridevirtual

Reimplemented from CDVDInputStream.

◆ GetLength()

int64_t CDVDInputStreamBluray::GetLength ( )
overridevirtual

Implements CDVDInputStream.

◆ GetState()

bool CDVDInputStreamBluray::GetState ( std::string &  xmlstate)
inlineoverridevirtual

◆ GetStreamInfo()

void CDVDInputStreamBluray::GetStreamInfo ( int  pid,
std::string &  language 
)

◆ GetTime()

int CDVDInputStreamBluray::GetTime ( )
overridevirtual

◆ GetTitleFile()

BLURAY_TITLE_INFO * CDVDInputStreamBluray::GetTitleFile ( const std::string &  name)

◆ GetTitleLongest()

BLURAY_TITLE_INFO * CDVDInputStreamBluray::GetTitleLongest ( )

◆ GetTotalButtons()

int CDVDInputStreamBluray::GetTotalButtons ( )
inlineoverridevirtual

◆ GetTotalTime()

int CDVDInputStreamBluray::GetTotalTime ( )
overridevirtual

◆ HasMenu()

bool CDVDInputStreamBluray::HasMenu ( )
overridevirtual

◆ IsEOF()

bool CDVDInputStreamBluray::IsEOF ( )
overridevirtual

Implements CDVDInputStream.

◆ IsInMenu()

bool CDVDInputStreamBluray::IsInMenu ( )
overridevirtual

◆ MouseClick()

bool CDVDInputStreamBluray::MouseClick ( const CPoint point)

◆ MouseMove()

bool CDVDInputStreamBluray::MouseMove ( const CPoint point)

◆ NextStream()

CDVDInputStream::ENextStream CDVDInputStreamBluray::NextStream ( )
overridevirtual

Reimplemented from CDVDInputStream.

◆ OnBack()

void CDVDInputStreamBluray::OnBack ( )
inlineoverridevirtual

◆ OnDown()

void CDVDInputStreamBluray::OnDown ( )
inlineoverridevirtual

◆ OnLeft()

void CDVDInputStreamBluray::OnLeft ( )
inlineoverridevirtual

◆ OnMenu()

void CDVDInputStreamBluray::OnMenu ( )
overridevirtual

◆ OnMouseClick()

bool CDVDInputStreamBluray::OnMouseClick ( const CPoint point)
inlineoverridevirtual

◆ OnMouseMove()

bool CDVDInputStreamBluray::OnMouseMove ( const CPoint point)
inlineoverridevirtual

◆ OnNext()

void CDVDInputStreamBluray::OnNext ( )
inlineoverridevirtual

◆ OnPrevious()

void CDVDInputStreamBluray::OnPrevious ( )
inlineoverridevirtual

◆ OnRight()

void CDVDInputStreamBluray::OnRight ( )
inlineoverridevirtual

◆ OnUp()

void CDVDInputStreamBluray::OnUp ( )
inlineoverridevirtual

◆ Open()

bool CDVDInputStreamBluray::Open ( )
overridevirtual

Reimplemented from CDVDInputStream.

◆ OverlayCallback()

void CDVDInputStreamBluray::OverlayCallback ( const BD_OVERLAY * const  ov)

◆ OverlayClear()

void CDVDInputStreamBluray::OverlayClear ( SPlane plane,
int  x,
int  y,
int  w,
int  h 
)
staticprotected

◆ OverlayClose()

void CDVDInputStreamBluray::OverlayClose ( )
protected

◆ OverlayFlush()

void CDVDInputStreamBluray::OverlayFlush ( int64_t  pts)
protected

◆ OverlayInit()

void CDVDInputStreamBluray::OverlayInit ( SPlane plane,
int  w,
int  h 
)
staticprotected

◆ Pause()

bool CDVDInputStreamBluray::Pause ( double  dTime)
inlineoverridevirtual

Implements CDVDInputStream.

◆ PosTime()

bool CDVDInputStreamBluray::PosTime ( int  ms)
overridevirtual

◆ ProcessEvent()

void CDVDInputStreamBluray::ProcessEvent ( )

◆ Read()

int CDVDInputStreamBluray::Read ( uint8_t buf,
int  buf_size 
)
overridevirtual

Implements CDVDInputStream.

◆ Seek()

int64_t CDVDInputStreamBluray::Seek ( int64_t  offset,
int  whence 
)
overridevirtual

Implements CDVDInputStream.

◆ SeekChapter()

bool CDVDInputStreamBluray::SeekChapter ( int  ch)
overridevirtual

◆ SelectButton()

void CDVDInputStreamBluray::SelectButton ( int  iButton)
inlineoverridevirtual

◆ SetState()

bool CDVDInputStreamBluray::SetState ( const std::string &  xmlstate)
inlineoverridevirtual

◆ SkipStill()

void CDVDInputStreamBluray::SkipStill ( )
overridevirtual

◆ UserInput()

void CDVDInputStreamBluray::UserInput ( bd_vk_key_e  vk)

Member Data Documentation

◆ m_angle

uint32_t CDVDInputStreamBluray::m_angle = 0
protected

◆ m_bd

BLURAY* CDVDInputStreamBluray::m_bd = nullptr
protected

◆ m_clip

BLURAY_CLIP_INFO* CDVDInputStreamBluray::m_clip = nullptr
protected

◆ m_dispTimeBeforeRead

int CDVDInputStreamBluray::m_dispTimeBeforeRead = 0
protected

◆ m_event

BD_EVENT CDVDInputStreamBluray::m_event
protected

◆ m_hold

enum CDVDInputStreamBluray::EHoldState CDVDInputStreamBluray::m_hold = HOLD_NONE
protected

◆ m_menu

bool CDVDInputStreamBluray::m_menu = false
protected

◆ m_navmode

bool CDVDInputStreamBluray::m_navmode = false
protected

◆ m_planes

SPlane CDVDInputStreamBluray::m_planes[2]
protected

◆ m_player

IVideoPlayer* CDVDInputStreamBluray::m_player = nullptr
protected

◆ m_playlist

uint32_t CDVDInputStreamBluray::m_playlist = MAX_PLAYLIST_ID + 1
protected

◆ m_title

const BLURAY_TITLE* CDVDInputStreamBluray::m_title = nullptr
protected

◆ m_titleInfo

BLURAY_TITLE_INFO* CDVDInputStreamBluray::m_titleInfo = nullptr
protected

The documentation for this class was generated from the following files: