LeviLamina
Loading...
Searching...
No Matches
DispatchTargets.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7namespace Bedrock::PubSub::Detail { class PublisherBase; }
8namespace Bedrock::PubSub::Detail { class SubscriptionBodyBase; }
9// clang-format on
10
11namespace Bedrock::PubSub::Detail {
12
14public:
15 // DispatchTargets inner types define
16 using SSOTargets = ::std::array<::std::weak_ptr<::Bedrock::PubSub::Detail::SubscriptionBodyBase>, 32>;
17
18 using StorageType = ::std::variant<
19 ::std::monostate,
20 ::std::array<::std::weak_ptr<::Bedrock::PubSub::Detail::SubscriptionBodyBase>, 32>,
21 ::std::vector<::std::weak_ptr<::Bedrock::PubSub::Detail::SubscriptionBodyBase>>>;
22
23 using StrongTarget = ::std::shared_ptr<::Bedrock::PubSub::Detail::SubscriptionBodyBase>;
24
25 using UnboundedTargets = ::std::vector<::std::weak_ptr<::Bedrock::PubSub::Detail::SubscriptionBodyBase>>;
26
27 using WeakTarget = ::std::weak_ptr<::Bedrock::PubSub::Detail::SubscriptionBodyBase>;
28
29public:
30 // member variables
31 // NOLINTBEGIN
32 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::Bedrock::PubSub::Detail::SubscriptionBodyBase>> mSingleDispatch;
33 ::ll::TypedStorage<8, 8, ::std::weak_ptr<::Bedrock::PubSub::Detail::SubscriptionBodyBase>*> mMultiDispatchBegin;
34 ::ll::TypedStorage<8, 8, ::std::weak_ptr<::Bedrock::PubSub::Detail::SubscriptionBodyBase>*> mMultiDispatchEnd;
35 ::ll::TypedStorage<
36 8,
37 520,
38 ::std::variant<
39 ::std::monostate,
40 ::std::array<::std::weak_ptr<::Bedrock::PubSub::Detail::SubscriptionBodyBase>, 32>,
41 ::std::vector<::std::weak_ptr<::Bedrock::PubSub::Detail::SubscriptionBodyBase>>>>
42 mStorage;
43 // NOLINTEND
44
45public:
46 // member functions
47 // NOLINTBEGIN
48 MCAPI bool loadSubscriptions(::Bedrock::PubSub::Detail::PublisherBase const& publisher);
49
50 MCAPI ~DispatchTargets();
51 // NOLINTEND
52
53public:
54 // destructor thunk
55 // NOLINTBEGIN
56 MCAPI void $dtor();
57 // NOLINTEND
58};
59
60} // namespace Bedrock::PubSub::Detail
Definition DispatchTargets.h:13
Definition PublisherBase.h:18
Definition SubscriptionBodyBase.h:20