ScummVM API documentation
Video::PacoDecoder::PacoVideoTrack Class Reference
Inheritance diagram for Video::PacoDecoder::PacoVideoTrack:
Video::VideoDecoder::FixedRateVideoTrack Video::VideoDecoder::VideoTrack Video::VideoDecoder::Track

Public Member Functions

 PacoVideoTrack (uint16 frameRate, uint16 frameCount, uint16 width, uint16 height)
 
bool endOfTrack () const override
 
bool isRewindable () const override
 
uint16 getWidth () const override
 
uint16 getHeight () const override
 
Graphics::PixelFormat getPixelFormat () const override
 
int getCurFrame () const override
 
int getFrameCount () const override
 
const Graphics::Surface * decodeNextFrame () override
 
virtual void handleFrame (Common::SeekableReadStream *fileStream, uint32 chunkSize, int curFrame)
 
virtual void handleEOC ()
 
void handlePalette (Common::SeekableReadStream *fileStream)
 
const byte * getPalette () const override
 
bool hasDirtyPalette () const override
 
const Common::List< Common::Rect > * getDirtyRects () const
 
void clearDirtyRects ()
 
void copyDirtyRectsToBuffer (uint8 *dst, uint pitch)
 
Common::Rational getFrameRate () const override
 
- Public Member Functions inherited from Video::VideoDecoder::FixedRateVideoTrack
uint32 getNextFrameStartTime () const override
 
Audio::Timestamp getDuration () const override
 
Audio::Timestamp getFrameTime (uint frame) const override
 
uint getFrameAtTime (const Audio::Timestamp &time) const
 
- Public Member Functions inherited from Video::VideoDecoder::VideoTrack
TrackType getTrackType () const override
 
bool endOfTrack () const override
 
virtual uint16 getWidth () const =0
 
virtual uint16 getHeight () const =0
 
virtual Graphics::PixelFormat getPixelFormat () const =0
 
virtual bool setOutputPixelFormat (const Graphics::PixelFormat &format)
 
virtual void setCodecAccuracy (Image::CodecAccuracy accuracy)
 
virtual int getCurFrame () const =0
 
virtual int getCurFrameDelay () const
 
virtual int getFrameCount () const
 
virtual uint32 getNextFrameStartTime () const =0
 
virtual const Graphics::Surface * decodeNextFrame ()=0
 
virtual const byte * getPalette () const
 
virtual bool hasDirtyPalette () const
 
virtual Audio::Timestamp getFrameTime (uint frame) const
 
virtual bool setReverse (bool reverse)
 
virtual bool isReversed () const
 
virtual bool canDither () const
 
virtual void setDither (const byte *palette)
 
- Public Member Functions inherited from Video::VideoDecoder::Track
virtual TrackType getTrackType () const =0
 
virtual bool endOfTrack () const =0
 
virtual bool isRewindable () const
 
virtual bool rewind ()
 
virtual bool isSeekable () const
 
virtual bool seek (const Audio::Timestamp &time)
 
void pause (bool shouldPause)
 
bool isPaused () const
 
virtual Audio::Timestamp getDuration () const
 

Protected Attributes

Graphics::Surface * _surface
 
Graphics::Palette _palette
 
bool _dirtyPalette
 
int _curFrame
 
uint32 _frameCount
 
uint16 _frameRate
 
Common::List< Common::Rect > _dirtyRects
 

Additional Inherited Members

- Public Types inherited from Video::VideoDecoder::Track
enum  TrackType { kTrackTypeNone , kTrackTypeVideo , kTrackTypeAudio }
 
virtual Common::Rational getFrameRate () const =0
 
- Protected Member Functions inherited from Video::VideoDecoder::Track
virtual void pauseIntern (bool shouldPause)
 

Member Function Documentation

◆ endOfTrack()

bool Video::PacoDecoder::PacoVideoTrack::endOfTrack ( ) const
overridevirtual

Return if the track has finished.

Implements Video::VideoDecoder::Track.

◆ isRewindable()

bool Video::PacoDecoder::PacoVideoTrack::isRewindable ( ) const
inlineoverridevirtual

Return if the track is rewindable.

If a video is seekable, it does not need to implement this for it to also be rewindable.

Reimplemented from Video::VideoDecoder::Track.

◆ getWidth()

uint16 Video::PacoDecoder::PacoVideoTrack::getWidth ( ) const
overridevirtual

Get the width of this track

Implements Video::VideoDecoder::VideoTrack.

◆ getHeight()

uint16 Video::PacoDecoder::PacoVideoTrack::getHeight ( ) const
overridevirtual

Get the height of this track

Implements Video::VideoDecoder::VideoTrack.

◆ getPixelFormat()

Graphics::PixelFormat Video::PacoDecoder::PacoVideoTrack::getPixelFormat ( ) const
overridevirtual

Get the pixel format of this track

Implements Video::VideoDecoder::VideoTrack.

◆ getCurFrame()

int Video::PacoDecoder::PacoVideoTrack::getCurFrame ( ) const
inlineoverridevirtual

Get the current frame of this track

See also
VideoDecoder::getCurFrame()

Implements Video::VideoDecoder::VideoTrack.

◆ getFrameCount()

int Video::PacoDecoder::PacoVideoTrack::getFrameCount ( ) const
inlineoverridevirtual

Get the frame count of this track

Note
If the frame count is unknown, return 0 (which is also the default implementation of the function). However, one must also implement endOfTrack() in that case.

Reimplemented from Video::VideoDecoder::VideoTrack.

◆ decodeNextFrame()

const Graphics::Surface * Video::PacoDecoder::PacoVideoTrack::decodeNextFrame ( )
overridevirtual

Decode the next frame

Implements Video::VideoDecoder::VideoTrack.

◆ getPalette()

const byte * Video::PacoDecoder::PacoVideoTrack::getPalette ( ) const
overridevirtual

Get the palette currently in use by this track

Reimplemented from Video::VideoDecoder::VideoTrack.

◆ hasDirtyPalette()

bool Video::PacoDecoder::PacoVideoTrack::hasDirtyPalette ( ) const
inlineoverridevirtual

Does the palette currently in use by this track need to be updated?

Reimplemented from Video::VideoDecoder::VideoTrack.

◆ getFrameRate()

Common::Rational Video::PacoDecoder::PacoVideoTrack::getFrameRate ( ) const
inlineoverridevirtual

Get the rate at which this track is played.

Implements Video::VideoDecoder::FixedRateVideoTrack.


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