Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
EnableFIFOQueueForMainThread.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/minecraft/threading/EnableQueueForMainThread.h"
7
8namespace Bedrock::Threading {
9
10class EnableFIFOQueueForMainThread : public ::Bedrock::Threading::EnableQueueForMainThread {
11public:
12 // EnableFIFOQueueForMainThread inner types define
13 using Task = ::std::function<void()>;
14
15public:
16 // member variables
17 // NOLINTBEGIN
18 ::ll::TypedStorage<8, 40, ::std::deque<::std::function<void()>>> mQueue;
19 ::ll::TypedStorage<8, 80, ::std::mutex> mQueueMutex;
20 // NOLINTEND
21
22#ifdef LL_PLAT_S
23#else // LL_PLAT_C
24public:
25 // prevent constructor by default
26 EnableFIFOQueueForMainThread();
27
28#endif
29public:
30 // member functions
31 // NOLINTBEGIN
32#ifdef LL_PLAT_C
33 MCNAPI explicit EnableFIFOQueueForMainThread(::std::string name);
34
35 MCNAPI void queueForMainThreadFIFO(::std::function<void()>&& task);
36#endif
37 // NOLINTEND
38
39public:
40 // constructor thunks
41 // NOLINTBEGIN
42#ifdef LL_PLAT_C
43 MCNAPI void* $ctor(::std::string name);
44#endif
45 // NOLINTEND
46
47public:
48 // destructor thunk
49 // NOLINTBEGIN
50#ifdef LL_PLAT_C
51 MCNAPI void $dtor();
52#endif
53 // NOLINTEND
54
55public:
56 // vftables
57 // NOLINTBEGIN
58 MCNAPI static void** $vftable();
59 // NOLINTEND
60};
61
62} // namespace Bedrock::Threading
Definition EnableQueueForMainThread.h:10
MCAPI void * $ctor(::std::string name)