source: golgotha/src/i4/sound/sound3d.cc @ 80

Last change on this file since 80 was 80, checked in by Sam Hocevar, 11 years ago
  • Adding the Golgotha source code. Not sure what's going to be interesting in there, but since it's all public domain, there's certainly stuff to pick up.
File size: 1.6 KB
Line 
1/********************************************************************** <BR>
2  This file is part of Crack dot Com's free source code release of
3  Golgotha. <a href="http://www.crack.com/golgotha_release"> <BR> for
4  information about compiling & licensing issues visit this URL</a>
5  <PRE> If that doesn't help, contact Jonathan Clark at
6  golgotha_source@usa.net (Subject should have "GOLG" in it)
7***********************************************************************/
8
9#include "sound/sound3d.hh"
10
11i4_3d_vector i4_3d_sound_parameters::null(0,0,0);
12
13class i4_null_3d_voice_class : public i4_3d_voice_class
14//{{{
15{
16protected:
17  completion_function_type complete;
18  void *context;
19public:
20  i4_null_3d_voice_class() : i4_3d_voice_class(), complete(0), context(0) {}
21
22  virtual void set_completer(completion_function_type _complete, void *_context)
23  //{{{
24  {
25    complete = _complete;
26    context = _context;
27  }
28  //}}}
29  virtual void play() { if (complete) (*complete)(this); }
30  virtual void update() {}
31};
32//}}}
33
34class i4_null_3d_sound_class : public i4_3d_sound_manager_class
35//{{{
36{
37public:
38  i4_null_3d_voice_class null_3d_voice;
39
40  I4_SOUND_NAME("No 3D sound");
41
42  virtual void init() {}
43  virtual void load_sounds(w32 max_sounds) { }
44
45  virtual i4_3d_voice_class *alloc(i4_sound_id sound_id, const i4_3d_sound_parameters& param)
46  //{{{
47  {
48    return &null_3d_voice;
49  }
50  //}}}
51};
52//}}}
53
54i4_null_3d_sound_class i4_null_3d_sound;
55
56i4_3d_sound_manager_class *i4_3d_sound_man = &i4_null_3d_sound;
57
58//{{{ Emacs Locals
59// Local Variables:
60// folded-file: t
61// End:
62//}}}
Note: See TracBrowser for help on using the repository browser.