LeviLamina
Loading...
Searching...
No Matches
DeferredSubscriptionHub.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/pub_sub/ConnectPosition.h"
7
8// auto generated forward declare list
9// clang-format off
10namespace Bedrock::PubSub { class DeferredSubscription; }
11namespace Bedrock::PubSub { class RawSubscription; }
12// clang-format on
13
14namespace Bedrock::PubSub {
15
17public:
18 // DeferredSubscriptionHub inner types define
19 enum class HubType : int {
20 Priority = 0,
21 Fifo = 1,
22 RecursiveFIFO = 2,
23 };
24
25public:
26 // virtual functions
27 // NOLINTBEGIN
28 // vIndex: 0
29 virtual ~DeferredSubscriptionHub() = default;
30
31 // vIndex: 1
32 virtual uint64 runDeferredEvents(uint64) = 0;
33
34 // vIndex: 2
35 virtual uint64 runDeferredEventsForDuration(::std::chrono::milliseconds) = 0;
36
37 // vIndex: 3
38 virtual void flushPendingEvents() = 0;
39
40 // vIndex: 4
41 virtual void clear() = 0;
42
43 // vIndex: 5
44 virtual uint64 erase(::Bedrock::PubSub::RawSubscription&) = 0;
45
46 // vIndex: 6
47 virtual uint64 size() const = 0;
48
49 // vIndex: 7
50 virtual bool empty() const = 0;
51
52 // vIndex: 8
53 virtual ::Bedrock::PubSub::DeferredSubscriptionHub::HubType getHubType() const = 0;
54
55 // vIndex: 9
56 virtual void _join(::Bedrock::PubSub::DeferredSubscription&&) = 0;
57
58 // vIndex: 10
59 virtual void _enqueue(::std::function<void()>, ::Bedrock::PubSub::ConnectPosition, ::std::optional<int>) = 0;
60 // NOLINTEND
61
62public:
63 // virtual function thunks
64 // NOLINTBEGIN
65
66 // NOLINTEND
67
68public:
69 // vftables
70 // NOLINTBEGIN
71 MCNAPI static void** $vftable();
72 // NOLINTEND
73};
74
75} // namespace Bedrock::PubSub
Definition DeferredSubscriptionHub.h:16
Definition DeferredSubscription.h:10
Definition RawSubscription.h:10