-/* $Id$
-
-This file is part of libmspal
-Copyright © 2008 Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
#ifndef MSP_AL_STREAMER_H_
#define MSP_AL_STREAMER_H_
namespace Msp {
namespace AL {
-class Sound;
+class SoundDecoder;
class Buffer;
/**
-A streamer transfers data from a Sound to a Source. It is permanently attached
-to the same Source, but can play multiple Sounds during its lifetime. A single
-Sound can only be played by one Streamer at a time.
+A streamer transfers data from a SoundDecoder to a Source. It is permanently
+attached to the same Source, but can read from multiple decoders during its
+lifetime.
*/
class Streamer
{
private:
Source &src;
- Sound *snd;
+ SoundDecoder *decoder;
std::list<Buffer *> buffers;
public:
Streamer(Source &);
~Streamer();
- void play(Sound &);
+ void play(SoundDecoder &);
void stop();
void tick();
};