clan::SoundProvider_Session Class Referenceabstract

Sound provider playback session. More...

#include <soundprovider_session.h>

Public Member Functions

 SoundProvider_Session ()
 
virtual ~SoundProvider_Session ()
 
virtual bool eof () const =0
 Returns true if no more input data is available. More...
 
virtual int get_data (float **data_ptr, int data_requested)=0
 Called when a playback session needs more sample data. More...
 
virtual int get_frequency () const =0
 Returns the playback frequency of the input data. More...
 
virtual int get_num_channels () const =0
 Returns the number of channels filled when get_data is called. More...
 
virtual int get_num_samples () const =0
 Returns the number of samples in the soundbuffer. More...
 
virtual int get_position () const =0
 Returns the current position in the playback stream. More...
 
virtual bool play ()=0
 Start/continue playing of the stream. More...
 
virtual bool set_end_position (int pos)=0
 Sets the end position within the current stream. More...
 
virtual bool set_looping (bool)
 Enable/disable session looping. More...
 
virtual bool set_position (int pos)=0
 Sets the position within the current stream. More...
 
virtual void stop ()=0
 Stops the current stream. More...
 

Detailed Description

Sound provider playback session.

Interface used by ClanLib during playback of sound providers.

Constructor & Destructor Documentation

clan::SoundProvider_Session::SoundProvider_Session ( )
virtual clan::SoundProvider_Session::~SoundProvider_Session ( )
virtual

Member Function Documentation

virtual bool clan::SoundProvider_Session::eof ( ) const
pure virtual

Returns true if no more input data is available.

Returns
True if end of input data. False otherwise.
virtual int clan::SoundProvider_Session::get_data ( float **  data_ptr,
int  data_requested 
)
pure virtual

Called when a playback session needs more sample data.

Parameters
data_ptr= Points to a buffer that should be filled with sample data.
data_requested= Samples of data requested.
Returns
Number of samples actually filled with sample data.
virtual int clan::SoundProvider_Session::get_frequency ( ) const
pure virtual

Returns the playback frequency of the input data.

Returns
Playback frequency.
virtual int clan::SoundProvider_Session::get_num_channels ( ) const
pure virtual

Returns the number of channels filled when get_data is called.

virtual int clan::SoundProvider_Session::get_num_samples ( ) const
pure virtual

Returns the number of samples in the soundbuffer.

virtual int clan::SoundProvider_Session::get_position ( ) const
pure virtual

Returns the current position in the playback stream.

virtual bool clan::SoundProvider_Session::play ( )
pure virtual

Start/continue playing of the stream.

Returns
True for success. False otherwise.
virtual bool clan::SoundProvider_Session::set_end_position ( int  pos)
pure virtual

Sets the end position within the current stream.

Parameters
pos= End position.
Returns
True for success. False otherwise.
virtual bool clan::SoundProvider_Session::set_looping ( bool  )
inlinevirtual

Enable/disable session looping.

If this function returns false (default), the clanSound mixer will manually try to simulate looping by setting the position to 0 when eof is encountered.

virtual bool clan::SoundProvider_Session::set_position ( int  pos)
pure virtual

Sets the position within the current stream.

Parameters
posPosition to seek to.
Returns
True for success. False otherwise.
virtual void clan::SoundProvider_Session::stop ( )
pure virtual

Stops the current stream.


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