Audaspace 1.5.0
A high level audio library.
Loading...
Searching...
No Matches
SDLDevice.h
Go to the documentation of this file.
1/*******************************************************************************
2 * Copyright 2009-2016 Jörg Müller
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 ******************************************************************************/
16
17#pragma once
18
19#ifdef SDL_PLUGIN
20#define AUD_BUILD_PLUGIN
21#endif
22
30
31#include <SDL.h>
32
34
39{
40private:
44 bool m_playback;
45
52 AUD_LOCAL static void SDL_mix(void* data, Uint8* buffer, int length);
53
54 // delete copy constructor and operator=
55 SDLDevice(const SDLDevice&) = delete;
56 SDLDevice& operator=(const SDLDevice&) = delete;
57
58protected:
59 virtual void playing(bool playing);
60
61public:
70
74 virtual ~SDLDevice();
75
79 static void registerPlugin();
80};
81
#define AUD_DEFAULT_BUFFER_SIZE
The default playback buffer size of a device.
Definition Audaspace.h:103
#define AUD_NAMESPACE_END
Closes the audaspace namespace aud.
Definition Audaspace.h:119
#define AUD_LOCAL
Used for hiding symbols from export in the shared library.
Definition Audaspace.h:80
#define AUD_NAMESPACE_BEGIN
Opens the audaspace namespace aud.
Definition Audaspace.h:116
#define AUD_PLUGIN_API
Used for exporting symbols in the shared library.
Definition Audaspace.h:94
The SoftwareDevice class.
This device plays back through SDL, the simple direct media layer.
Definition SDLDevice.h:39
virtual void playing(bool playing)
This function tells the device, to start or pause playback.
SDLDevice(DeviceSpecs specs, int buffersize=AUD_DEFAULT_BUFFER_SIZE)
Opens the SDL audio device for playback.
virtual ~SDLDevice()
Closes the SDL audio device.
static void registerPlugin()
Registers this plugin.
The software device is a generic device with software mixing.
Definition SoftwareDevice.h:52
Specification of a sound device.
Definition Specification.h:129