]>
Dogcows Code - chaz/yoink/blob - src/moof/sound.hh
2 /*] Copyright (c) 2009-2010, Charles McGarvey [**************************
3 **] All rights reserved.
7 * Distributable under the terms and conditions of the 2-clause BSD license;
8 * see the file COPYING for a complete text of the license.
10 **************************************************************************/
12 #ifndef _MOOF_SOUND_HH_
13 #define _MOOF_SOUND_HH_
17 * Load and play sounds, current supports ogg vorbis.
22 #include <boost/shared_ptr.hpp>
24 #include <moof/math.hh>
25 #include <moof/resource.hh>
32 typedef resource_handle
<sound
> sound_handle
;
34 typedef resource_handle
<sound_stream
> sound_stream_handle
;
37 class sound
: public resource
42 explicit sound(const std::string
& path
);
46 // this implicitly stops the sound if it is playing
47 void sample(const std::string
& path
);
54 bool is_playing() const;
56 void position(const vector3
& position
);
57 void velocity(const vector3
& velocity
);
58 void gain(scalar gain
);
59 void pitch(scalar pitch
);
60 void loop(bool looping
);
62 static void listener_position(const vector3
& position
);
63 static void listener_velocity(const vector3
& velocity
);
64 static void listener_orientation(const vector3
& forward
,
70 boost::shared_ptr
<impl
> impl_
;
74 class sound_stream
: public sound
79 explicit sound_stream(const std::string
& path
) :
82 void enqueue(const std::string
& path
);
90 #endif // _MOOF_SOUND_HH_
This page took 0.039123 seconds and 4 git commands to generate.