LeviLamina
Loading...
Searching...
No Matches
SessionInfoManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
7#include "mc/deps/core/utility/NonOwnerPointer.h"
8#include "mc/deps/core/utility/pub_sub/Connector.h"
9
10// auto generated forward declare list
11// clang-format off
12namespace Bedrock { class SessionInfo; }
13namespace Bedrock { class SessionInfoManagerImpl; }
14namespace Bedrock::Threading { class Mutex; }
15// clang-format on
16
17namespace Bedrock {
18
20 public ::Bedrock::ImplBase<::Bedrock::SessionInfoManager> {
21public:
22 // virtual functions
23 // NOLINTBEGIN
24 virtual void initialize() = 0;
25
26 virtual void beginNewSession() = 0;
27
28 virtual ::std::shared_ptr<::Bedrock::SessionInfo const> getCurrentSession() const = 0;
29
30 virtual ::Bedrock::AccessUpdateEditor<
31 ::std::shared_ptr<::Bedrock::SessionInfo>,
35 editCurrentSession() = 0;
36
37 virtual ::Bedrock::PubSub::Connector<void(
39 ::std::shared_ptr<::Bedrock::SessionInfo const> const&
40 )>&
41 onCurrentSessionChanged() = 0;
42
43 virtual ::std::string serializeSession(::Bedrock::SessionInfo const&) const = 0;
44
45 virtual ::std::shared_ptr<::Bedrock::SessionInfo> deserializeSession(::std::string_view) const = 0;
46
47 virtual ~SessionInfoManager() /*override*/;
48 // NOLINTEND
49
50public:
51 // destructor thunk
52 // NOLINTBEGIN
53 MCNAPI void $dtor();
54 // NOLINTEND
55
56public:
57 // virtual function thunks
58 // NOLINTBEGIN
59
60 // NOLINTEND
61};
62
63} // namespace Bedrock
Definition EnableNonOwnerReferences.h:7
Definition _HeaderOutputPredefine.h:256
Definition NonOwnerPointer.h:9
Definition SessionInfoManagerImpl.h:20
Definition SessionInfoManager.h:20
Definition SessionInfo.h:7
Definition Mutex.h:10
Definition _HeaderOutputPredefine.h:265