43 NULLHandle(
const NULLHandle&) =
delete;
44 NULLHandle& operator=(
const NULLHandle&) =
delete;
50 virtual ~NULLHandle() {}
52 virtual bool resume();
54 virtual bool getKeep();
55 virtual bool setKeep(
bool keep);
56 virtual bool seek(
double position);
57 virtual double getPosition();
58 virtual Status getStatus();
59 virtual float getVolume();
60 virtual bool setVolume(
float volume);
61 virtual float getPitch();
62 virtual bool setPitch(
float pitch);
63 virtual int getLoopCount();
64 virtual bool setLoopCount(
int count);
65 virtual bool setStopCallback(
stopCallback callback = 0,
void* data = 0);
81 virtual std::shared_ptr<IHandle>
play(std::shared_ptr<IReader> reader,
bool keep =
false);
82 virtual std::shared_ptr<IHandle>
play(std::shared_ptr<ISound> sound,
bool keep =
false);
93 static void registerPlugin();
#define AUD_NAMESPACE_BEGIN
Opens the audaspace namespace aud.
Definition: Audaspace.h:116
This class represents a sound source as stream or as buffer which can be read for example by another ...
Definition: IReader.h:34
virtual void unlock()=0
Unlocks the previously locked device.
This class enables global synchronization of several audio applications if supported.
Definition: ISynchronizer.h:38
This device plays nothing.
Definition: NULLDevice.h:36
#define AUD_API
Used for exporting symbols in the shared library.
Definition: Audaspace.h:93
virtual void lock()=0
Locks the device.
virtual ISynchronizer * getSynchronizer()=0
Retrieves the synchronizer for this device, which enables accurate synchronization between audio play...
void(* stopCallback)(void *)
The stopCallback is called when a handle reaches the end of the stream and thus gets stopped...
Definition: IHandle.h:42
Specification of a sound device.
Definition: Specification.h:128
virtual void stopAll()=0
Stops all playing sounds.
virtual void setVolume(float volume)=0
Sets the overall device volume.
virtual float getVolume() const =0
Retrieves the overall device volume.
Defines the IHandle interface as well as possible states of the handle.
virtual std::shared_ptr< IHandle > play(std::shared_ptr< IReader > reader, bool keep=false)=0
Plays a sound source.
#define AUD_NAMESPACE_END
Closes the audaspace namespace aud.
Definition: Audaspace.h:119
The IHandle interface represents a playback handles of a specific device.
Definition: IHandle.h:48
virtual DeviceSpecs getSpecs() const =0
Returns the specification of the device.
The IDevice interface represents an output device for sound sources.
Definition: IDevice.h:46
#define AUD_LOCAL
Used for hiding symbols from export in the shared library.
Definition: Audaspace.h:80
Status
Status of a playback handle.
Definition: IHandle.h:30