Skylicht Engine
Loading...
Searching...
No Matches
Skylicht::Audio::CFileStreamCursor Class Reference

Stream cursor for standard file access. More...

#include <Stream/CFileStream.h>

Inheritance diagram for Skylicht::Audio::CFileStreamCursor:
Skylicht::Audio::IStreamCursor

Public Member Functions

 CFileStreamCursor (FILE *file)
virtual int seek (int pos, EOrigin origin)
 Move the cursor position.
virtual int tell ()
 Get current cursor position.
virtual int read (unsigned char *buff, int len)
 Read data from the stream.
virtual bool endOfStream ()
 Check if the cursor is at the end of the stream.
virtual int size ()
 Get total size of the stream.
virtual bool readyReadData (int len)
 Check if a certain amount of data is ready to be read.
Public Member Functions inherited from Skylicht::Audio::IStreamCursor
virtual void trim ()
 Trim read data from the stream (used in dynamic streams).

Protected Attributes

FILE * m_file
int m_size
int m_pos
unsigned char * m_buffer
int m_bufferSize
int m_bufferAvailableBytes
int m_bufferPos
int m_bufferOffset

Additional Inherited Members

Public Types inherited from Skylicht::Audio::IStreamCursor
enum  EOrigin { OriginStart , OriginCurrent , OriginEnd }
 Origin for seek operations. More...

Detailed Description

Stream cursor for standard file access.

Member Function Documentation

◆ endOfStream()

virtual bool Skylicht::Audio::CFileStreamCursor::endOfStream ( )
virtual

Check if the cursor is at the end of the stream.

Returns
True if at EOF

Implements Skylicht::Audio::IStreamCursor.

◆ read()

virtual int Skylicht::Audio::CFileStreamCursor::read ( unsigned char * buff,
int len )
virtual

Read data from the stream.

Parameters
buffDestination buffer
lenNumber of bytes to read
Returns
Number of bytes actually read

Implements Skylicht::Audio::IStreamCursor.

◆ readyReadData()

virtual bool Skylicht::Audio::CFileStreamCursor::readyReadData ( int len)
virtual

Check if a certain amount of data is ready to be read.

Parameters
lenNumber of bytes to check
Returns
True if data is available

Implements Skylicht::Audio::IStreamCursor.

◆ seek()

virtual int Skylicht::Audio::CFileStreamCursor::seek ( int pos,
EOrigin origin )
virtual

Move the cursor position.

Parameters
posOffset in bytes
originWhere to seek from
Returns
0 on success, or -1 on error

Implements Skylicht::Audio::IStreamCursor.

◆ size()

virtual int Skylicht::Audio::CFileStreamCursor::size ( )
virtual

Get total size of the stream.

Returns
Size in bytes

Implements Skylicht::Audio::IStreamCursor.

◆ tell()

virtual int Skylicht::Audio::CFileStreamCursor::tell ( )
virtual

Get current cursor position.

Returns
Current position in bytes

Implements Skylicht::Audio::IStreamCursor.


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