LeviLamina
Loading...
Searching...
No Matches
WorkerPoolManagerImpl.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/threading/WorkerPoolManager.h"
7
8// auto generated forward declare list
9// clang-format off
10namespace Bedrock { class WorkerPoolHandleInterface; }
11namespace Bedrock::Threading { class OSThreadPriority; }
12// clang-format on
13
14namespace Bedrock {
15
16class WorkerPoolManagerImpl : public ::Bedrock::WorkerPoolManager {
17public:
18 // WorkerPoolManagerImpl inner types declare
19 // clang-format off
20 struct PoolEntry;
21 // clang-format on
22
23 // WorkerPoolManagerImpl inner types define
24 struct PoolEntry {
25 public:
26 // member variables
27 // NOLINTBEGIN
30 // NOLINTEND
31
32 public:
33 // prevent constructor by default
34 PoolEntry& operator=(PoolEntry const&);
35 PoolEntry(PoolEntry const&);
36 PoolEntry();
37
38 public:
39 // member functions
40 // NOLINTBEGIN
41 MCNAPI ~PoolEntry();
42 // NOLINTEND
43
44 public:
45 // destructor thunk
46 // NOLINTBEGIN
47 MCNAPI void $dtor();
48 // NOLINTEND
49 };
50
51public:
52 // member variables
53 // NOLINTBEGIN
56 // NOLINTEND
57
58public:
59 // prevent constructor by default
60 WorkerPoolManagerImpl& operator=(WorkerPoolManagerImpl const&);
61 WorkerPoolManagerImpl(WorkerPoolManagerImpl const&);
62
63public:
64 // virtual functions
65 // NOLINTBEGIN
66 virtual void init() /*override*/;
67
68 virtual ::std::shared_ptr<::Bedrock::WorkerPoolHandleInterface> createWorkerPool(
69 ::std::string name,
70 uint64 threadCount,
72 ::std::optional<uint64> const coreAffinityMask,
73 bool suppressWorkerProfiling,
74 ::std::optional<int> const idealCore
75 ) /*override*/;
76
77 virtual void tick() /*override*/;
78
79 virtual ~WorkerPoolManagerImpl() /*override*/ = default;
80 // NOLINTEND
81
82public:
83 // member functions
84 // NOLINTBEGIN
86 // NOLINTEND
87
88public:
89 // constructor thunks
90 // NOLINTBEGIN
91 MCNAPI void* $ctor();
92 // NOLINTEND
93
94public:
95 // virtual function thunks
96 // NOLINTBEGIN
97 MCNAPI void $init();
98
99 MCNAPI ::std::shared_ptr<::Bedrock::WorkerPoolHandleInterface> $createWorkerPool(
100 ::std::string name,
101 uint64 threadCount,
103 ::std::optional<uint64> const coreAffinityMask,
104 bool suppressWorkerProfiling,
105 ::std::optional<int> const idealCore
106 );
107
108 MCNAPI void $tick();
109
110
111 // NOLINTEND
112
113public:
114 // vftables
115 // NOLINTBEGIN
116 MCNAPI static void** $vftableForImplBase();
117
119 // NOLINTEND
120};
121
122} // namespace Bedrock
Definition OSThreadPriority.h:7
Definition WorkerPoolHandleInterface.h:15
static MCAPI void ** $vftableForEnableNonOwnerReferences()
MCAPI ::std::shared_ptr<::Bedrock::WorkerPoolHandleInterface > $createWorkerPool(::std::string name, uint64 threadCount, ::Bedrock::Threading::OSThreadPriority const &priority, ::std::optional< uint64 > const coreAffinityMask, bool suppressWorkerProfiling, ::std::optional< int > const idealCore)
static MCAPI void ** $vftableForImplBase()
Definition WorkerPoolManager.h:17
Definition WorkerPoolManagerImpl.h:24
Definition Alias.h:14