Elaztek Developer Hub
Blamite Game Engine - blam!  00406.12.10.23.1457.blamite
The core library for the Blamite Game Engine.
core.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "types.h"
4 #include "application_manager.h"
5 #include "user_manager.h"
6 #include "image_manager.h"
7 #include "activity_manager.h"
8 #include "relationship_manager.h"
9 #include "lobby_manager.h"
10 #include "network_manager.h"
11 #include "overlay_manager.h"
12 #include "storage_manager.h"
13 #include "store_manager.h"
14 #include "voice_manager.h"
15 #include "achievement_manager.h"
16 
17 namespace discord {
18 
19 class Core final {
20 public:
21  static Result Create(ClientId clientId, std::uint64_t flags, Core** instance);
22 
23  ~Core();
24 
26  void SetLogHook(LogLevel minLevel, std::function<void(LogLevel, char const*)> hook);
27 
40 
41 private:
42  Core() = default;
43  Core(Core const& rhs) = delete;
44  Core& operator=(Core const& rhs) = delete;
45  Core(Core&& rhs) = delete;
46  Core& operator=(Core&& rhs) = delete;
47 
48  IDiscordCore* internal_;
49  Event<LogLevel, char const*> setLogHook_;
50  discord::ApplicationManager applicationManager_;
51  discord::UserManager userManager_;
52  discord::ImageManager imageManager_;
53  discord::ActivityManager activityManager_;
54  discord::RelationshipManager relationshipManager_;
55  discord::LobbyManager lobbyManager_;
56  discord::NetworkManager networkManager_;
57  discord::OverlayManager overlayManager_;
58  discord::StorageManager storageManager_;
59  discord::StoreManager storeManager_;
60  discord::VoiceManager voiceManager_;
61  discord::AchievementManager achievementManager_;
62 };
63 
64 } // namespace discord
voice_manager.h
discord::Core::StorageManager
discord::StorageManager & StorageManager()
Definition: core.cpp:146
discord::Core::RunCallbacks
Result RunCallbacks()
Definition: core.cpp:51
discord
Definition: achievement_manager.cpp:12
IDiscordCore::get_storage_manager
struct IDiscordStorageManager *DISCORD_API * get_storage_manager(struct IDiscordCore *core)
DiscordResult_Ok
@ DiscordResult_Ok
Definition: ffi.h:46
discord::Core::OverlayManager
discord::OverlayManager & OverlayManager()
Definition: core.cpp:137
discord::Core::NetworkManager
discord::NetworkManager & NetworkManager()
Definition: core.cpp:128
IDiscordCore::get_voice_manager
struct IDiscordVoiceManager *DISCORD_API * get_voice_manager(struct IDiscordCore *core)
network_manager.h
discord::StorageManager
Definition: storage_manager.h:7
user_manager.h
discord::Core::ImageManager
discord::ImageManager & ImageManager()
Definition: core.cpp:92
DISCORD_VERSION
#define DISCORD_VERSION
Definition: ffi.h:31
discord::Core
Definition: core.h:19
achievement_manager.h
discord::ApplicationManager
Definition: application_manager.h:7
IDiscordCore::get_network_manager
struct IDiscordNetworkManager *DISCORD_API * get_network_manager(struct IDiscordCore *core)
IDiscordCore::get_lobby_manager
struct IDiscordLobbyManager *DISCORD_API * get_lobby_manager(struct IDiscordCore *core)
discord::Core::Create
static Result Create(ClientId clientId, std::uint64_t flags, Core **instance)
Definition: core.cpp:12
discord::AchievementManager
Definition: achievement_manager.h:7
discord::ClientId
std::int64_t ClientId
Definition: types.h:195
discord::Core::ActivityManager
discord::ActivityManager & ActivityManager()
Definition: core.cpp:101
discord::Core::~Core
~Core()
Definition: core.cpp:43
discord::Event::Connect
Token Connect(EventHandler slot)
Definition: event.h:23
uint64_t
unsigned long long uint64_t
Definition: stdint.h:18
types.h
application_manager.h
discord::UserManager
Definition: user_manager.h:7
discord::Core::UserManager
discord::UserManager & UserManager()
Definition: core.cpp:83
discord::VoiceManager
Definition: voice_manager.h:7
core.h
discord::Result
Result
Definition: types.h:12
relationship_manager.h
lobby_manager.h
IDiscordCore::get_achievement_manager
struct IDiscordAchievementManager *DISCORD_API * get_achievement_manager(struct IDiscordCore *core)
IDiscordCore::get_activity_manager
struct IDiscordActivityManager *DISCORD_API * get_activity_manager(struct IDiscordCore *core)
IDiscordCore::get_relationship_manager
struct IDiscordRelationshipManager *DISCORD_API * get_relationship_manager(struct IDiscordCore *core)
IDiscordCore::get_application_manager
struct IDiscordApplicationManager *DISCORD_API * get_application_manager(struct IDiscordCore *core)
discord::Core::StoreManager
discord::StoreManager & StoreManager()
Definition: core.cpp:155
IDiscordCore::get_store_manager
struct IDiscordStoreManager *DISCORD_API * get_store_manager(struct IDiscordCore *core)
EDiscordLogLevel
EDiscordLogLevel
Definition: ffi.h:98
discord::Core::SetLogHook
void SetLogHook(LogLevel minLevel, std::function< void(LogLevel, char const *)> hook)
Definition: core.cpp:57
discord::LogLevel
LogLevel
Definition: types.h:65
discord::RelationshipManager
Definition: relationship_manager.h:7
discord::ImageManager
Definition: image_manager.h:7
discord::OverlayManager
Definition: overlay_manager.h:7
discord::Core::LobbyManager
discord::LobbyManager & LobbyManager()
Definition: core.cpp:119
discord::LobbyManager
Definition: lobby_manager.h:7
storage_manager.h
store_manager.h
activity_manager.h
discord::Core::AchievementManager
discord::AchievementManager & AchievementManager()
Definition: core.cpp:173
IDiscordCore
Definition: ffi.h:1025
discord::StoreManager
Definition: store_manager.h:7
discord::Event
Definition: event.h:9
IDiscordCore::get_user_manager
struct IDiscordUserManager *DISCORD_API * get_user_manager(struct IDiscordCore *core)
discord::Core::VoiceManager
discord::VoiceManager & VoiceManager()
Definition: core.cpp:164
discord::Core::RelationshipManager
discord::RelationshipManager & RelationshipManager()
Definition: core.cpp:110
DiscordCreateParams
Definition: ffi.h:1051
discord::Result::InternalError
@ InternalError
IDiscordCore::get_image_manager
struct IDiscordImageManager *DISCORD_API * get_image_manager(struct IDiscordCore *core)
IDiscordCore::get_overlay_manager
struct IDiscordOverlayManager *DISCORD_API * get_overlay_manager(struct IDiscordCore *core)
discord::ActivityManager
Definition: activity_manager.h:7
DiscordCreate
enum EDiscordResult DISCORD_API DiscordCreate(DiscordVersion version, struct DiscordCreateParams *params, struct IDiscordCore **result)
discord::Event::DisconnectAll
void DisconnectAll()
Definition: event.h:40
discord::Core::ApplicationManager
discord::ApplicationManager & ApplicationManager()
Definition: core.cpp:74
image_manager.h
overlay_manager.h
discord::NetworkManager
Definition: network_manager.h:7