SoundBuffer_Session provides control over a playing soundeffect.  
 More...
#include <soundbuffer_session.h>
|  | 
|  | SoundBuffer_Session () | 
|  | Creates a null instance. 
 | 
|  | 
| virtual | ~SoundBuffer_Session () | 
|  | 
| void | add_filter (SoundFilter &filter) | 
|  | Adds the sound filter to the session. See SoundFilter for details. 
 | 
|  | 
| int | get_frequency () const | 
|  | Returns the frequency of the session. 
 | 
|  | 
| int | get_length () const | 
|  | Returns the total length (in samples) of the sound buffer played. 
 | 
|  | 
| bool | get_looping () const | 
|  | Returns whether this session loops. 
 | 
|  | 
| float | get_pan () const | 
|  | Returns the current pan (in a measure from -1 -> 1). 
 | 
|  | 
| int | get_position () const | 
|  | Returns the current sample position of the playback. 
 | 
|  | 
| float | get_position_relative () const | 
|  | Returns the sample position relative to the full length. 
 | 
|  | 
| float | get_volume () const | 
|  | Returns the linear relative volume of the soundeffect. 
 | 
|  | 
| bool | is_null () const | 
|  | Returns true if this object is invalid. 
 | 
|  | 
| bool | is_playing () | 
|  | Returns true if the session is playing. 
 | 
|  | 
| void | play () | 
|  | Starts playback of the session. 
 | 
|  | 
| void | remove_filter (SoundFilter &filter) | 
|  | Remove the sound filter from the session. See SoundFilter for details. 
 | 
|  | 
| bool | set_end_position (int pos) | 
|  | Sets the end position within the current stream. 
 | 
|  | 
| void | set_frequency (int new_freq) | 
|  | Sets the frequency of the session. 
 | 
|  | 
| void | set_looping (bool loop) | 
|  | Determines whether this session should loop. 
 | 
|  | 
| void | set_pan (float new_pan) | 
|  | Sets the panning of the session played in measures from -1 -> 1. 
 | 
|  | 
| bool | set_position (int new_pos) | 
|  | Sets the session position to 'new_pos'. 
 | 
|  | 
| bool | set_position_relative (float new_pos) | 
|  | Sets the relative position of the session. 
 | 
|  | 
| void | set_volume (float new_volume) | 
|  | Sets the volume of the session in a relative measure (0->1) 
 | 
|  | 
| void | stop () | 
|  | Stops playback of the session. 
 | 
|  | 
| void | throw_if_null () const | 
|  | Throw an exception if this object is invalid. 
 | 
|  | 
SoundBuffer_Session provides control over a playing soundeffect. 
Whenever a soundbuffer is played, it returns a SoundBuffer_Session class, which can be used to control the sound (its volume, pitch, pan, position). It can also be used to retrigger the sound or to stop it.
 
◆ SoundBuffer_Session()
      
        
          | clan::SoundBuffer_Session::SoundBuffer_Session | ( |  | ) |  | 
      
 
 
◆ ~SoundBuffer_Session()
  
  | 
        
          | virtual clan::SoundBuffer_Session::~SoundBuffer_Session | ( |  | ) |  |  | virtual | 
 
 
◆ add_filter()
      
        
          | void clan::SoundBuffer_Session::add_filter | ( | SoundFilter & | filter | ) |  | 
      
 
Adds the sound filter to the session. See SoundFilter for details. 
- Parameters
- 
  
    | filter | Sound filter to pass sound through. |  
 
 
 
◆ get_frequency()
      
        
          | int clan::SoundBuffer_Session::get_frequency | ( |  | ) | const | 
      
 
Returns the frequency of the session. 
 
 
◆ get_length()
      
        
          | int clan::SoundBuffer_Session::get_length | ( |  | ) | const | 
      
 
Returns the total length (in samples) of the sound buffer played. 
Value returned will be -1 if the length is unknown (in case of non-static soundeffects like streamed sound) 
 
 
◆ get_looping()
      
        
          | bool clan::SoundBuffer_Session::get_looping | ( |  | ) | const | 
      
 
Returns whether this session loops. 
- Returns
- true if session should loop, false otherwise 
 
 
◆ get_pan()
      
        
          | float clan::SoundBuffer_Session::get_pan | ( |  | ) | const | 
      
 
Returns the current pan (in a measure from -1 -> 1). 
-1 means the soundeffect is only playing in the left speaker, and 1 means the soundeffect is only playing in the right speaker. 
 
 
◆ get_position()
      
        
          | int clan::SoundBuffer_Session::get_position | ( |  | ) | const | 
      
 
Returns the current sample position of the playback. 
 
 
◆ get_position_relative()
      
        
          | float clan::SoundBuffer_Session::get_position_relative | ( |  | ) | const | 
      
 
Returns the sample position relative to the full length. 
The value returned will be between 0 and 1, where 0 means the session is at the beginning, and 1 means that the soundeffect has reached the end. 
 
 
◆ get_volume()
      
        
          | float clan::SoundBuffer_Session::get_volume | ( |  | ) | const | 
      
 
Returns the linear relative volume of the soundeffect. 
0 means the soundeffect is muted, 1 means the soundeffect is playing at "max" volume. 
 
 
◆ is_null()
  
  | 
        
          | bool clan::SoundBuffer_Session::is_null | ( |  | ) | const |  | inline | 
 
Returns true if this object is invalid. 
 
 
◆ is_playing()
      
        
          | bool clan::SoundBuffer_Session::is_playing | ( |  | ) |  | 
      
 
Returns true if the session is playing. 
 
 
◆ play()
      
        
          | void clan::SoundBuffer_Session::play | ( |  | ) |  | 
      
 
Starts playback of the session. 
 
 
◆ remove_filter()
      
        
          | void clan::SoundBuffer_Session::remove_filter | ( | SoundFilter & | filter | ) |  | 
      
 
Remove the sound filter from the session. See SoundFilter for details. 
 
 
◆ set_end_position()
      
        
          | bool clan::SoundBuffer_Session::set_end_position | ( | int | pos | ) |  | 
      
 
Sets the end position within the current stream. 
- Parameters
- 
  
  
- Returns
- True for success. False otherwise. 
 
 
◆ set_frequency()
      
        
          | void clan::SoundBuffer_Session::set_frequency | ( | int | new_freq | ) |  | 
      
 
Sets the frequency of the session. 
- Parameters
- 
  
    | new_freq | New frequency of session. |  
 
 
 
◆ set_looping()
      
        
          | void clan::SoundBuffer_Session::set_looping | ( | bool | loop | ) |  | 
      
 
Determines whether this session should loop. 
- Parameters
- 
  
    | loop | true if session should loop, false otherwise |  
 
 
 
◆ set_pan()
      
        
          | void clan::SoundBuffer_Session::set_pan | ( | float | new_pan | ) |  | 
      
 
Sets the panning of the session played in measures from -1 -> 1. 
Setting the pan with a value of -1 will pan the session to the extreme left (left speaker only), 1 will pan the session to the extreme right (right speaker only).
- Parameters
- 
  
    | new_pan | New pan of the session played. |  
 
- Returns
- Returns true if the operation completed sucecsfully. 
 
 
◆ set_position()
      
        
          | bool clan::SoundBuffer_Session::set_position | ( | int | new_pos | ) |  | 
      
 
Sets the session position to 'new_pos'. 
- Parameters
- 
  
    | new_pos | = The new position of the session. |  
 
- Returns
- Returns true if operation completed succesfully. 
 
 
◆ set_position_relative()
      
        
          | bool clan::SoundBuffer_Session::set_position_relative | ( | float | new_pos | ) |  | 
      
 
Sets the relative position of the session. 
Value must be between 0 and 1, where 0 sets the session to the beginning, and 1 sets it to the end of the sound buffer.
- Parameters
- 
  
    | new_pos | New relative position. |  
 
- Returns
- Returns true if operation completed succesfully. 
 
 
◆ set_volume()
      
        
          | void clan::SoundBuffer_Session::set_volume | ( | float | new_volume | ) |  | 
      
 
Sets the volume of the session in a relative measure (0->1) 
A value of 0 will effectively mute the sound (although it will still be sampled), and a value of 1 will set the volume to "max".
- Parameters
- 
  
    | new_volume | New volume of session. |  
 
- Returns
- Returns true if the operation completed succesfully. 
 
 
◆ stop()
      
        
          | void clan::SoundBuffer_Session::stop | ( |  | ) |  | 
      
 
Stops playback of the session. 
 
 
◆ throw_if_null()
      
        
          | void clan::SoundBuffer_Session::throw_if_null | ( |  | ) | const | 
      
 
Throw an exception if this object is invalid. 
 
 
◆ SoundBuffer
◆ SoundOutput_Impl
  
  | 
        
          | friend class SoundOutput_Impl |  | friend | 
 
 
The documentation for this class was generated from the following file: