source: trunk/nv/sdl/sdl_audio.hh @ 194

Last change on this file since 194 was 194, checked in by epyon, 12 years ago
  • interface - audio added (minimal)
  • fmod/audio - fmodex audio (minimal) implementation
  • sdl/audio - sdl_mixer audio (minimal) implementation
File size: 1.1 KB
RevLine 
[194]1// Copyright (C) 2012-2013 ChaosForge / Kornel Kisielewicz
2// http://chaosforge.org/
3//
4// This file is part of NV Libraries.
5// For conditions of distribution and use, see copyright notice in nv.hh
6/**
7 * @file sdl_audio.hh
8 * @author Kornel Kisielewicz epyon@chaosforge.org
9 * @brief SDL Audio interface
10 */
11
12#ifndef NV_SDL_AUDIO_HH
13#define NV_SDL_AUDIO_HH
14
15#include <nv/common.hh>
16#include <nv/interface/audio.hh>
17
18namespace nv
19{
20
21        namespace sdl
22        {
23                class audio;
24
25                class sound : public nv::sound
26                {
27                private:
28                        friend class nv::sdl::audio;
29                        sound( void* data ) : m_sound( data ) {}
30                public:
31                        virtual ~sound();
32                private:
33                        void* m_sound;
34                };
35
36                class channel : public nv::channel
37                {
38                private:
39                        friend class nv::sdl::audio;
40                        virtual ~channel() {}
41                };
42
43                class audio : public nv::audio
44                {
45                public:
46                        audio();
47                        virtual nv::channel* play_sound( nv::sound* a_sound );
48                        virtual nv::sound* load_sound( const std::string& a_path );
49                        virtual void update();
50                        virtual ~audio();
51                };
52        }
53}
54
55#endif // NV_SDL_AUDIO_HH
Note: See TracBrowser for help on using the repository browser.