SuperTuxKart
Loading...
Searching...
No Matches
music.hpp
1//
2// SuperTuxKart - a fun racing game with go-kart
3// Copyright (C) 2006-2015 Patrick Ammann <pammann@aro.ch>
4//
5// This program is free software; you can redistribute it and/or
6// modify it under the terms of the GNU General Public License
7// as published by the Free Software Foundation; either version 3
8// of the License, or (at your option) any later version.
9//
10// This program is distributed in the hope that it will be useful,
11// but WITHOUT ANY WARRANTY; without even the implied warranty of
12// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13// GNU General Public License for more details.
14//
15// You should have received a copy of the GNU General Public License
16// along with this program; if not, write to the Free Software
17// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18
19#ifndef HEADER_MUSIC_HPP
20#define HEADER_MUSIC_HPP
21
22#include <string>
23
24#include "utils/no_copy.hpp"
29class Music : public NoCopy
30{
31public:
32 virtual bool load (const std::string& filename) = 0;
33 virtual bool playMusic () = 0;
34 virtual bool stopMusic () = 0;
35 virtual bool pauseMusic () = 0;
36 virtual bool resumeMusic () = 0;
37 virtual void setVolume (float volume) = 0;
38 virtual void updateFaster(float percent, float pitch) = 0;
39 virtual void update () = 0;
40 virtual bool isPlaying () = 0;
41
42 virtual ~Music () {};
43};
44
45#endif // HEADER_MUSIC_HPP
46
Abstract interface for classes that can handle music playback.
Definition: music.hpp:30
Utility class, you can inherit from this class to disallow the assignment operator and copy construct...
Definition: no_copy.hpp:26