#include <sdlmixer.h>
Inheritance diagram for Wt::SDLMixer::Channel:


Public Member Functions | |
| virtual void | setVolume (int) |
| virtual void | play (Audio::Chunk &chunk, int duration=-1) |
| virtual void | fadeIn (Audio::Chunk &chunk, int ms, int duration=-1) |
| virtual void | fadeOut (int ms) |
| virtual void | pause () |
| pause channel | |
| virtual void | resume () |
| resume channel | |
| virtual void | stop (int ms=0) |
| stop channel | |
| virtual bool | playing () const |
| virtual bool | paused () const |
| virtual int | fading () const |
| virtual Audio::Chunk * | chunk () const |
Public Attributes | |
| Signal01< void, Channel * > | finished |
| WVar< int > | loops |
Protected Member Functions | |
| Channel (int id) | |
Private Attributes | |
| Audio::Chunk * | chunk_p |
| int | channel_id |
Friends | |
| class | Audio |
| class | SDLMixer |
| class | Chunk |
Definition at line 97 of file sdlmixer.h.
| Wt::SDLMixer::Channel::Channel | ( | int | id | ) | [protected] |
Definition at line 351 of file sdlmixer.cpp.
00351 : 00352 Audio::Channel(), 00353 chunk_p(0), 00354 channel_id(id) {}
| Audio::Chunk * Wt::SDLMixer::Channel::chunk | ( | ) | const [virtual] |
Reimplemented from Wt::Audio::Channel.
Definition at line 408 of file sdlmixer.cpp.
References chunk_p.
Referenced by fadeIn(), and play().
00408 { 00409 return chunk_p; 00410 }
| void Wt::SDLMixer::Channel::fadeIn | ( | Audio::Chunk & | chunk, | |
| int | ms, | |||
| int | duration = -1 | |||
| ) | [virtual] |
Reimplemented from Wt::Audio::Channel.
Definition at line 371 of file sdlmixer.cpp.
References channel_id, chunk(), chunk_p, and Wt::Audio::Channel::loops.
00371 { 00372 SDLMixer::Chunk& c = * static_cast<SDLMixer::Chunk *>(&chunk); 00373 int status = Mix_FadeInChannelTimed(channel_id, c, 00374 loops - 1, ms, duration); 00375 if (!status) 00376 chunk_p = &c; 00377 }
Here is the call graph for this function:

| void Wt::SDLMixer::Channel::fadeOut | ( | int | ms | ) | [virtual] |
Reimplemented from Wt::Audio::Channel.
Definition at line 379 of file sdlmixer.cpp.
References channel_id.
00379 { 00380 Mix_FadeOutChannel(channel_id, ms); 00381 }
| int Wt::SDLMixer::Channel::fading | ( | ) | const [virtual] |
Reimplemented from Wt::Audio::Channel.
Definition at line 404 of file sdlmixer.cpp.
References channel_id, and Wt::SDLMixer::fadingTypeMap.
00404 { 00405 return fadingTypeMap[Mix_FadingChannel(channel_id)]; 00406 }
| void Wt::SDLMixer::Channel::pause | ( | ) | [virtual] |
pause channel
Reimplemented from Wt::Audio::Channel.
Definition at line 383 of file sdlmixer.cpp.
References channel_id.
00383 { 00384 Mix_Pause(channel_id); 00385 }
| bool Wt::SDLMixer::Channel::paused | ( | ) | const [virtual] |
Reimplemented from Wt::Audio::Channel.
Definition at line 400 of file sdlmixer.cpp.
References channel_id.
00400 { 00401 return Mix_Paused(channel_id); 00402 }
| void Wt::SDLMixer::Channel::play | ( | Audio::Chunk & | chunk, | |
| int | duration = -1 | |||
| ) | [virtual] |
Reimplemented from Wt::Audio::Channel.
Definition at line 362 of file sdlmixer.cpp.
References channel_id, chunk(), chunk_p, Wt::Audio::Channel::loops, and trace.
00362 { 00363 trace("sdlmixer", "SDLMixer::Channel::play()\n"); 00364 SDLMixer::Chunk& c = * static_cast<SDLMixer::Chunk *>(&chunk); 00365 int status = Mix_PlayChannelTimed(channel_id, c, 00366 loops - 1, duration); 00367 if (!status) 00368 chunk_p = &c; 00369 }
Here is the call graph for this function:

| bool Wt::SDLMixer::Channel::playing | ( | ) | const [virtual] |
Reimplemented from Wt::Audio::Channel.
Definition at line 396 of file sdlmixer.cpp.
References channel_id.
00396 { 00397 return Mix_Playing(channel_id); 00398 }
| void Wt::SDLMixer::Channel::resume | ( | ) | [virtual] |
resume channel
Reimplemented from Wt::Audio::Channel.
Definition at line 387 of file sdlmixer.cpp.
References channel_id.
00387 { 00388 Mix_Resume(channel_id); 00389 }
| void Wt::SDLMixer::Channel::setVolume | ( | int | ) | [virtual] |
Reimplemented from Wt::Audio::Channel.
Definition at line 356 of file sdlmixer.cpp.
References channel_id, and Wt::Singleton< DERIVED >::instance().
00356 { 00357 SDLMixer& self = * static_cast<SDLMixer *>(instance()); 00358 int hwvol = self.HWVolume(volume); 00359 Mix_Volume(channel_id, hwvol); 00360 }
Here is the call graph for this function:

| void Wt::SDLMixer::Channel::stop | ( | int | ms = 0 |
) | [virtual] |
stop channel
Reimplemented from Wt::Audio::Channel.
Definition at line 391 of file sdlmixer.cpp.
References channel_id.
00391 { 00392 (ms) ? Mix_ExpireChannel(channel_id, ms) : 00393 Mix_HaltChannel(channel_id); 00394 }
friend class Audio [friend] |
friend class Chunk [friend] |
Definition at line 100 of file sdlmixer.h.
friend class SDLMixer [friend] |
Definition at line 99 of file sdlmixer.h.
int Wt::SDLMixer::Channel::channel_id [private] |
Audio::Chunk* Wt::SDLMixer::Channel::chunk_p [private] |
Signal01<void, Channel *> Wt::Audio::Channel::finished [inherited] |
WVar<int> Wt::Audio::Channel::loops [inherited] |
This document is licensed under the terms of the GNU Free Documentation License and may be freely distributed under the conditions given by this license.