ScummVM API documentation
sound.h
1
/* ScummVM - Graphic Adventure Engine
2
*
3
* ScummVM is the legal property of its developers, whose names
4
* are too numerous to list here. Please refer to the COPYRIGHT
5
* file distributed with this source distribution.
6
*
7
* This program is free software: you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation, either version 3 of the License, or
10
* (at your option) any later version.
11
*
12
* This program is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
16
*
17
* You should have received a copy of the GNU General Public License
18
* along with this program. If not, see <http://www.gnu.org/licenses/>.
19
*
20
*/
21
22
#ifndef MADS_SOUND_H
23
#define MADS_SOUND_H
24
25
#include "common/scummsys.h"
26
#include "common/queue.h"
27
28
namespace
Audio
{
29
class
Mixer;
30
}
31
32
namespace
OPL
{
33
class
OPL
;
34
}
35
36
namespace
MADS
{
37
38
namespace
Nebular {
39
class
ASound;
40
}
41
42
class
MADSEngine;
43
44
class
SoundManager
{
45
private
:
46
MADSEngine
*_vm;
47
Audio::Mixer
*_mixer;
48
OPL::OPL
*_opl;
49
Nebular::ASound
*_driver;
50
bool
_pollSoundEnabled;
51
bool
_soundPollFlag;
52
bool
_newSoundsPaused;
53
Common::Queue<int>
_queuedCommands;
54
int
_masterVolume;
55
public
:
56
SoundManager
(
MADSEngine
*vm,
Audio::Mixer
*mixer);
57
~
SoundManager
();
58
59
bool
_preferRoland;
60
64
void
init(
int
sectionNumber);
65
69
void
closeDriver();
70
74
void
removeDriver();
75
80
void
setEnabled(
bool
flag);
81
85
void
pauseNewCommands();
86
90
void
startQueuedCommands();
91
95
void
setVolume(
int
volume);
96
98
103
void
command(
int
commandId,
int
param = 0);
104
108
void
stop();
109
114
void
noise();
115
117
};
118
119
}
// End of namespace MADS
120
121
#endif
/* MADS_SOUND_H */
Common::Queue< int >
Audio::Mixer
Definition:
mixer.h:59
MADS::SoundManager
Definition:
sound.h:44
MADS::MADSEngine
Definition:
mads.h:87
OPL
Definition:
fmopl.h:35
MADS
Definition:
action.h:28
MADS::Nebular::ASound
Definition:
sound_nebular.h:151
Audio
Definition:
system.h:38
OPL::OPL
Definition:
fmopl.h:115
engines
mads
sound.h
Generated on Thu Nov 14 2024 09:09:45 for ScummVM API documentation by
1.8.13