The open source repository for the action RPG game in development by Sig Productions titled 'Adventures in Lestoria'!
https://forums.lestoria.net
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.0 KiB
37 lines
1.0 KiB
#pragma once
|
|
|
|
#include "types.h"
|
|
|
|
namespace discord {
|
|
|
|
class VoiceManager final {
|
|
public:
|
|
~VoiceManager() = default;
|
|
|
|
Result GetInputMode(InputMode* inputMode);
|
|
void SetInputMode(InputMode inputMode, std::function<void(Result)> callback);
|
|
Result IsSelfMute(bool* mute);
|
|
Result SetSelfMute(bool mute);
|
|
Result IsSelfDeaf(bool* deaf);
|
|
Result SetSelfDeaf(bool deaf);
|
|
Result IsLocalMute(Snowflake userId, bool* mute);
|
|
Result SetLocalMute(Snowflake userId, bool mute);
|
|
Result GetLocalVolume(Snowflake userId, std::uint8_t* volume);
|
|
Result SetLocalVolume(Snowflake userId, std::uint8_t volume);
|
|
|
|
Event<> OnSettingsUpdate;
|
|
|
|
private:
|
|
friend class Core;
|
|
|
|
VoiceManager() = default;
|
|
VoiceManager(VoiceManager const& rhs) = delete;
|
|
VoiceManager& operator=(VoiceManager const& rhs) = delete;
|
|
VoiceManager(VoiceManager&& rhs) = delete;
|
|
VoiceManager& operator=(VoiceManager&& rhs) = delete;
|
|
|
|
IDiscordVoiceManager* internal_;
|
|
static IDiscordVoiceEvents events_;
|
|
};
|
|
|
|
} // namespace discord
|
|
|