Elaztek Developer Hub
Blamite Game Engine - blam!  00406.12.10.23.1457.blamite
The core library for the Blamite Game Engine.
activity_manager.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "types.h"
4 
5 namespace discord {
6 
7 class ActivityManager final {
8 public:
9  ~ActivityManager() = default;
10 
11  Result RegisterCommand(char const* command);
13  void UpdateActivity(Activity const& activity, std::function<void(Result)> callback);
14  void ClearActivity(std::function<void(Result)> callback);
15  void SendRequestReply(UserId userId,
17  std::function<void(Result)> callback);
18  void SendInvite(UserId userId,
19  ActivityActionType type,
20  char const* content,
21  std::function<void(Result)> callback);
22  void AcceptInvite(UserId userId, std::function<void(Result)> callback);
23 
28 
29 private:
30  friend class Core;
31 
32  ActivityManager() = default;
33  ActivityManager(ActivityManager const& rhs) = delete;
34  ActivityManager& operator=(ActivityManager const& rhs) = delete;
35  ActivityManager(ActivityManager&& rhs) = delete;
36  ActivityManager& operator=(ActivityManager&& rhs) = delete;
37 
38  IDiscordActivityManager* internal_;
39  static IDiscordActivityEvents events_;
40 };
41 
42 } // namespace discord
discord::ActivityManager::RegisterSteam
Result RegisterSteam(std::uint32_t steamId)
Definition: activity_manager.cpp:79
discord::ActivityManager::AcceptInvite
void AcceptInvite(UserId userId, std::function< void(Result)> callback)
Definition: activity_manager.cpp:162
discord
Definition: achievement_manager.cpp:12
discord::ActivityManager::~ActivityManager
~ActivityManager()=default
EDiscordResult
EDiscordResult
Definition: ffi.h:45
EDiscordActivityJoinRequestReply
EDiscordActivityJoinRequestReply
Definition: ffi.h:146
DiscordActivity
Definition: ffi.h:310
discord::ActivityJoinRequestReply
ActivityJoinRequestReply
Definition: types.h:113
discord::Core
Definition: core.h:19
discord::User
Definition: types.h:223
discord::ActivityManager::OnActivityInvite
Event< ActivityActionType, User const &, Activity const & > OnActivityInvite
Definition: activity_manager.h:27
DiscordUser
Definition: ffi.h:256
discord::ActivityManager::SendRequestReply
void SendRequestReply(UserId userId, ActivityJoinRequestReply reply, std::function< void(Result)> callback)
Definition: activity_manager.cpp:118
discord::ActivityEvents::OnActivitySpectate
static void DISCORD_CALLBACK OnActivitySpectate(void *callbackData, char const *secret)
Definition: activity_manager.cpp:27
discord::Core::ActivityManager
discord::ActivityManager & ActivityManager()
Definition: core.cpp:101
types.h
discord::ActivityEvents::OnActivityJoinRequest
static void DISCORD_CALLBACK OnActivityJoinRequest(void *callbackData, DiscordUser *user)
Definition: activity_manager.cpp:38
core.h
discord::Result
Result
Definition: types.h:12
discord::ActivityManager::SendInvite
void SendInvite(UserId userId, ActivityActionType type, char const *content, std::function< void(Result)> callback)
Definition: activity_manager.cpp:139
discord::ActivityManager::UpdateActivity
void UpdateActivity(Activity const &activity, std::function< void(Result)> callback)
Definition: activity_manager.cpp:85
discord::ActivityManager::RegisterCommand
Result RegisterCommand(char const *command)
Definition: activity_manager.cpp:73
discord::ActivityEvents::OnActivityInvite
static void DISCORD_CALLBACK OnActivityInvite(void *callbackData, EDiscordActivityActionType type, DiscordUser *user, DiscordActivity *activity)
Definition: activity_manager.cpp:49
DISCORD_CALLBACK
#define DISCORD_CALLBACK
Definition: ffi.h:19
uint32_t
unsigned int uint32_t
Definition: stdint.h:17
discord::Activity
Definition: types.h:340
discord::ActivityManager::OnActivityJoin
Event< char const * > OnActivityJoin
Definition: activity_manager.h:24
IDiscordActivityManager
Definition: ffi.h:514
discord::ActivityManager::OnActivitySpectate
Event< char const * > OnActivitySpectate
Definition: activity_manager.h:25
discord::ActivityActionType
ActivityActionType
Definition: types.h:102
discord::ActivityManager::ClearActivity
void ClearActivity(std::function< void(Result)> callback)
Definition: activity_manager.cpp:103
activity_manager.h
discord::ActivityEvents
Definition: activity_manager.cpp:14
EDiscordActivityActionType
EDiscordActivityActionType
Definition: ffi.h:135
discord::Event
Definition: event.h:9
discord::UserId
Snowflake UserId
Definition: types.h:199
IDiscordActivityEvents
Definition: ffi.h:504
discord::ActivityManager
Definition: activity_manager.h:7
discord::ActivityEvents::OnActivityJoin
static void DISCORD_CALLBACK OnActivityJoin(void *callbackData, char const *secret)
Definition: activity_manager.cpp:16
discord::ActivityManager::OnActivityJoinRequest
Event< User const & > OnActivityJoinRequest
Definition: activity_manager.h:26