raylib-cpp
C++ object-oriented wrapper library for raylib.
AudioDevice.hpp
1 #ifndef RAYLIB_CPP_INCLUDE_AUDIODEVICE_HPP_
2 #define RAYLIB_CPP_INCLUDE_AUDIODEVICE_HPP_
3 
4 #include "./raylib.hpp"
5 #include "./raylib-cpp-utils.hpp"
6 #include "./RaylibException.hpp"
7 
8 namespace raylib {
12 class AudioDevice {
13  public:
21  AudioDevice(bool lateInit = false) {
22  if (!lateInit) {
23  if (!Init()) {
24  throw RaylibException("Failed to initialize AudioDevice");
25  }
26  }
27  }
28 
33  Close();
34  }
35 
39  inline bool Init() {
40  ::InitAudioDevice();
41  return IsReady();
42  }
43 
47  inline void Close() {
48  ::CloseAudioDevice();
49  }
50 
54  inline bool IsReady() const {
55  return ::IsAudioDeviceReady();
56  }
57 
63  inline AudioDevice& SetVolume(float volume) {
64  ::SetMasterVolume(volume);
65  return *this;
66  }
67 };
68 } // namespace raylib
69 
70 #endif // RAYLIB_CPP_INCLUDE_AUDIODEVICE_HPP_
raylib
All raylib-cpp classes and functions appear in the raylib namespace.
Definition: AudioDevice.hpp:8
raylib::AudioDevice::SetVolume
AudioDevice & SetVolume(float volume)
Set master volume (listener).
Definition: AudioDevice.hpp:63
raylib::AudioDevice::Init
bool Init()
Initialize audio device and context.
Definition: AudioDevice.hpp:39
raylib::AudioDevice::~AudioDevice
~AudioDevice()
Close the audio device and context.
Definition: AudioDevice.hpp:32
raylib::AudioDevice::AudioDevice
AudioDevice(bool lateInit=false)
Initialize audio device and context.
Definition: AudioDevice.hpp:21
raylib::AudioDevice
Audio device management functions.
Definition: AudioDevice.hpp:12
raylib::AudioDevice::Close
void Close()
Close the audio device and context.
Definition: AudioDevice.hpp:47
raylib::AudioDevice::IsReady
bool IsReady() const
Check if audio device has been initialized successfully.
Definition: AudioDevice.hpp:54
raylib::RaylibException
Exception used for most raylib-related exceptions.
Definition: RaylibException.hpp:13