Skylicht Engine
Loading...
Searching...
No Matches
Skylicht::Audio::IStream Class Referenceabstract

Interface for an audio data stream (File, Memory, etc.). More...

#include <Stream/IStream.h>

Inheritance diagram for Skylicht::Audio::IStream:
Skylicht::Audio::CFileStream Skylicht::Audio::CMemoryStream Skylicht::Audio::COnlineMemoryStream Skylicht::CZipAudioFileStream

Public Member Functions

virtual IStreamCursorcreateCursor ()=0
 Create a new cursor for this stream.
virtual void grab ()
 Increment reference count.
virtual bool drop ()
 Decrement reference count and delete if zero.
int getSampleRate ()
 Get expected sample rate (for recorder/procedural streams).
int getChannels ()
 Get number of channels (for recorder/procedural streams).
void setStreamAudio (int sampleRate, int channels)
 Set stream audio properties.
virtual void uploadData (unsigned char *buffer, int size)
 Upload new data to the stream (used in online/dynamic streams).
virtual void stopStream ()
 Stop the stream and clear buffers.

Protected Attributes

int m_referenceCount
int m_sampleRate
int m_channels

Detailed Description

Interface for an audio data stream (File, Memory, etc.).

Member Function Documentation

◆ createCursor()

virtual IStreamCursor * Skylicht::Audio::IStream::createCursor ( )
pure virtual

◆ drop()

virtual bool Skylicht::Audio::IStream::drop ( )
inlinevirtual

Decrement reference count and delete if zero.

Returns
True if the object was deleted

◆ getChannels()

int Skylicht::Audio::IStream::getChannels ( )
inline

Get number of channels (for recorder/procedural streams).

Returns
Number of channels

◆ getSampleRate()

int Skylicht::Audio::IStream::getSampleRate ( )
inline

Get expected sample rate (for recorder/procedural streams).

Returns
Sample rate in Hz

◆ setStreamAudio()

void Skylicht::Audio::IStream::setStreamAudio ( int sampleRate,
int channels )
inline

Set stream audio properties.

Parameters
sampleRateSample rate in Hz
channelsNumber of channels

◆ stopStream()

virtual void Skylicht::Audio::IStream::stopStream ( )
inlinevirtual

Stop the stream and clear buffers.

Reimplemented in Skylicht::Audio::COnlineMemoryStream.

◆ uploadData()

virtual void Skylicht::Audio::IStream::uploadData ( unsigned char * buffer,
int size )
inlinevirtual

Upload new data to the stream (used in online/dynamic streams).

Parameters
bufferData buffer
sizeSize in bytes

Reimplemented in Skylicht::Audio::COnlineMemoryStream.


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