xbmc
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
CDVDInputStreamNavigator Class Reference
Inheritance diagram for CDVDInputStreamNavigator:
Inheritance graph
[legend]
Collaboration diagram for CDVDInputStreamNavigator:
Collaboration graph
[legend]

Public Member Functions

 CDVDInputStreamNavigator (IVideoPlayer *player, const CFileItem &fileitem)
 
bool Open () override
 
void Close () override
 
int Read (uint8_t *buf, int buf_size) override
 
int64_t Seek (int64_t offset, int whence) override
 
int GetBlockSize () override
 
bool IsEOF () override
 
int64_t GetLength () override
 
ENextStream NextStream () override
 
void ActivateButton () override
 
void SelectButton (int iButton) override
 
void SkipStill () override
 
void SkipWait ()
 
void OnUp () override
 
void OnDown () override
 
void OnLeft () override
 
void OnRight () override
 
bool OnMenu () override
 Open the Menu. More...
 
void OnBack () override
 
void OnNext () override
 
void OnPrevious () override
 
bool OnMouseMove (const CPoint &point) override
 
bool OnMouseClick (const CPoint &point) override
 
int GetCurrentButton () override
 
int GetTotalButtons () override
 
bool GetCurrentButtonInfo (CDVDOverlaySpu &pOverlayPicture, CDVDDemuxSPU *pSPU, int iButtonType)
 
MenuType GetSupportedMenuType () override
 Get the supported menu type. More...
 
bool IsInMenu () override
 
double GetTimeStampCorrection () override
 
int GetActiveSubtitleStream ()
 
int GetSubTitleStreamCount ()
 
SubtitleStreamInfo GetSubtitleStreamInfo (const int iId)
 
bool SetActiveSubtitleStream (int iId)
 
void EnableSubtitleStream (bool bEnable)
 
bool IsSubtitleStreamEnabled ()
 
int GetActiveAudioStream ()
 
int GetAudioStreamCount ()
 
int GetActiveAngle ()
 
bool SetAngle (int angle)
 
bool SetActiveAudioStream (int iId)
 
AudioStreamInfo GetAudioStreamInfo (const int iId)
 
bool GetState (std::string &xmlstate) override
 
bool SetState (const std::string &xmlstate) override
 
int GetChapter () override
 
int GetChapterCount () override
 
void GetChapterName (std::string &name, int idx=-1) override
 
int64_t GetChapterPos (int ch=-1) override
 
bool SeekChapter (int iChapter) override
 
CDVDInputStream::IDisplayTimeGetIDisplayTime () override
 
int GetTotalTime () override
 
int GetTime () override
 
float GetVideoAspectRatio ()
 
CDVDInputStream::IPosTimeGetIPosTime () override
 
bool PosTime (int iTimeInMsec) override
 
std::string GetDVDTitleString ()
 
std::string GetDVDVolIdString ()
 Get the DVD volume ID string. Alternative to the dvd title (since some DVD authors even forget to set it). More...
 
std::string GetDVDSerialString ()
 
void CheckButtons ()
 
VideoStreamInfo GetVideoStreamInfo ()
 
- Public Member Functions inherited from CDVDInputStream
 CDVDInputStream (DVDStreamType m_streamType, const CFileItem &fileitem)
 
virtual std::string & GetContent ()
 
virtual std::string GetFileName ()
 
virtual CURL GetURL ()
 
virtual void Abort ()
 
virtual bool CanSeek ()
 
virtual bool CanPause ()
 
virtual void SetReadRate (uint32_t rate)
 Indicate expected read rate in bytes per second. This could be used to throttle caching rate. Should be seen as only a hint.
 
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 ()
 
virtual IChapterGetIChapter ()
 
const CVariantGetProperty (const std::string &key)
 
- Public Member Functions inherited from CDVDInputStream::IMenus
virtual bool CanSeek ()
 

Protected Member Functions

int ProcessBlock (uint8_t *buffer, int *read)
 
int GetAngleCount ()
 
void GetVideoResolution (uint32_t *width, uint32_t *height)
 
bool FillDVDState (DVDState &dvdstate)
 Provided a pod DVDState struct, fill it with the current dvdnav state. More...
 

Static Protected Member Functions

static void SetAudioStreamName (AudioStreamInfo &info, const audio_attr_t &audio_attributes)
 
static void SetSubtitleStreamName (SubtitleStreamInfo &info, const subp_attr_t &subp_attributes)
 

Protected Attributes

DllDvdNav m_dll
 
bool m_bCheckButtons
 
bool m_bEOF
 
int m_holdmode
 
int m_iTotalTime
 
int m_iTime
 
int64_t m_iCellStart
 
bool m_bInMenu
 
int64_t m_iVobUnitStart
 
int64_t m_iVobUnitStop
 
int64_t m_iVobUnitCorrection
 
int m_iTitleCount
 
int m_iTitle
 
int m_iPartCount
 
int m_iPart
 
struct dvdnav_s * m_dvdnav
 
dvdnav_stream_cb m_dvdnav_stream_cb
 
std::unique_ptr< CDVDInputStreamFilem_pstream
 
IVideoPlayerm_pVideoPlayer
 
uint8_t m_lastblock [DVD_VIDEO_BLOCKSIZE]
 
int m_lastevent
 
std::map< int, std::map< int, int64_t > > m_mapTitleChapters
 
CDVDStateSerializer m_dvdStateSerializer
 
- 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 Function Documentation

◆ FillDVDState()

bool CDVDInputStreamNavigator::FillDVDState ( DVDState dvdstate)
protected

Provided a pod DVDState struct, fill it with the current dvdnav state.

Parameters
[in,out]dvdstatethe DVD state struct to be filled
Returns
true if it was possible to fill the state struct based on the current dvdnav state, false otherwise

◆ GetDVDVolIdString()

std::string CDVDInputStreamNavigator::GetDVDVolIdString ( )

Get the DVD volume ID string. Alternative to the dvd title (since some DVD authors even forget to set it).

Returns
The DVD volume id

◆ GetSupportedMenuType()

MenuType CDVDInputStreamNavigator::GetSupportedMenuType ( )
inlineoverridevirtual

Get the supported menu type.

Returns
The supported menu type

Implements CDVDInputStream::IMenus.

◆ OnMenu()

bool CDVDInputStreamNavigator::OnMenu ( )
overridevirtual

Open the Menu.

Returns
true if the menu is successfully opened, false otherwise

Implements CDVDInputStream::IMenus.

◆ Open()

bool CDVDInputStreamNavigator::Open ( )
overridevirtual
Bug:
libdvdnav isn't const correct
Bug:
libdvdnav isn't const correct
Bug:
libdvdnav isn't const correct

Reimplemented from CDVDInputStream.

Member Data Documentation

◆ m_dvdStateSerializer

CDVDStateSerializer CDVDInputStreamNavigator::m_dvdStateSerializer
protected

DVD state serializer handler


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