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.
38 lines
1.0 KiB
38 lines
1.0 KiB
11 months ago
|
#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
|