OpenXcom  1.0
Open-source clone of the original X-Com
ExtraSounds.h
1 #pragma once
2 /*
3  * Copyright 2010-2016 OpenXcom Developers.
4  *
5  * This file is part of OpenXcom.
6  *
7  * OpenXcom 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  * OpenXcom 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 OpenXcom. If not, see <http://www.gnu.org/licenses/>.
19  */
20 #include <yaml-cpp/yaml.h>
21 #include <string>
22 #include <map>
23 
24 namespace OpenXcom
25 {
26 
27 class SoundSet;
28 
33 {
34 private:
35  std::string _type;
36  std::map<int, std::string> _sounds;
37  int _modIndex;
38 
39  void loadSound(SoundSet *set, int index, const std::string &fileName) const;
40 public:
42  ExtraSounds();
44  virtual ~ExtraSounds();
46  void load(const YAML::Node &node, int modIndex);
48  std::string getType() const;
50  std::map<int, std::string> *getSounds();
52  int getModIndex() const;
54  SoundSet *loadSoundSet(SoundSet *set) const;
55 };
56 
57 }
SoundSet * loadSoundSet(SoundSet *set) const
Load the external sound into a set.
Definition: ExtraSounds.cpp:88
Container of a set of sounds.
Definition: SoundSet.h:34
ExtraSounds()
Creates a blank external sound set.
Definition: ExtraSounds.cpp:33
std::string getType() const
Gets the sound&#39;s type.
Definition: ExtraSounds.cpp:60
For adding a set of extra sound data to the game.
Definition: ExtraSounds.h:32
void load(const YAML::Node &node, int modIndex)
Loads the data from yaml.
Definition: ExtraSounds.cpp:49
int getModIndex() const
Gets the mod index for this external sound set.
Definition: ExtraSounds.cpp:78
std::map< int, std::string > * getSounds()
Gets the list of sounds defined by this mod.
Definition: ExtraSounds.cpp:69
virtual ~ExtraSounds()
Cleans up the external sound set.
Definition: ExtraSounds.cpp:40
Definition: BaseInfoState.cpp:40