LeviLamina
Loading...
Searching...
No Matches
ResourceLoadManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/threading/IAsyncResult.h"
7#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
8#include "mc/platform/brstd/move_only_function.h"
9#include "mc/resources/ResourceLoadType.h"
10
11// auto generated forward declare list
12// clang-format off
13class TaskResult;
14// clang-format on
15
17public:
18 // ResourceLoadManager inner types declare
19 // clang-format off
20 struct LoadOrder;
22 class TaskGroupState;
23 // clang-format on
24
25 // ResourceLoadManager inner types define
26 struct LoadOrder {};
27
29 public:
30 // member variables
31 // NOLINTBEGIN
34 // NOLINTEND
35
36 public:
37 // prevent constructor by default
38 TaskGroupState& operator=(TaskGroupState const&);
41 };
42
44 public:
45 // member variables
46 // NOLINTBEGIN
53 // NOLINTEND
54
55 public:
56 // prevent constructor by default
60
61 public:
62 // member functions
63 // NOLINTBEGIN
64 MCNAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<void>> queue(
65 ::brstd::move_only_function<::TaskResult()> threadedCallback,
66 ::std::function<void()> mainThreadCallback,
67 uint taskPriority
68 );
69 // NOLINTEND
70 };
71
72public:
73 // member variables
74 // NOLINTBEGIN
81 // NOLINTEND
82
83public:
84 // prevent constructor by default
88
89public:
90 // virtual functions
91 // NOLINTBEGIN
92 // vIndex: 0
93 virtual ~ResourceLoadManager() /*override*/ = default;
94 // NOLINTEND
95
96public:
97 // member functions
98 // NOLINTBEGIN
99 MCNAPI void
100 _prepareTaskGroupToRunAgain(::gsl::not_null<::ResourceLoadManager::ResourceLoadTaskGroup*> resourceLoadTaskGroup);
101
102 MCNAPI bool cancel(::ResourceLoadType resourceLoadType);
103
104 MCNAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<void>> queue(
105 ::ResourceLoadType resourceLoadType,
106 ::brstd::move_only_function<::TaskResult()> threadedCallback,
107 ::std::function<void()> mainThreadCallback,
108 uint taskPriority
109 );
110 // NOLINTEND
111
112public:
113 // static functions
114 // NOLINTBEGIN
115 MCNAPI static ::std::function<void()> _wrapMainThreadCallback(
117 ::std::function<void()>&& mainThreadCallback
118 );
119
120 MCNAPI static ::brstd::move_only_function<::TaskResult()> _wrapTaskCallback(
122 ::brstd::move_only_function<::TaskResult()>&& threadedCallback
123 );
124
125 MCNAPI static void queueChild(
126 ::brstd::move_only_function<::TaskResult()> threadedCallback,
127 ::std::function<void()> mainThreadCallback,
128 uint taskPriority
129 );
130 // NOLINTEND
131};
Definition EnableNonOwnerReferences.h:7
Definition ResourceLoadManager.h:43
MCAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult< void > > queue(::brstd::move_only_function<::TaskResult()> threadedCallback, ::std::function< void()> mainThreadCallback, uint taskPriority)
Definition ResourceLoadManager.h:28
Definition ResourceLoadManager.h:16
MCAPI bool cancel(::ResourceLoadType resourceLoadType)
MCAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult< void > > queue(::ResourceLoadType resourceLoadType, ::brstd::move_only_function<::TaskResult()> threadedCallback, ::std::function< void()> mainThreadCallback, uint taskPriority)
static MCAPI void queueChild(::brstd::move_only_function<::TaskResult()> threadedCallback, ::std::function< void()> mainThreadCallback, uint taskPriority)
MCAPI void _prepareTaskGroupToRunAgain(::gsl::not_null<::ResourceLoadManager::ResourceLoadTaskGroup * > resourceLoadTaskGroup)
static MCAPI ::std::function< void()> _wrapMainThreadCallback(::ResourceLoadManager::ResourceLoadTaskGroup &resourceLoadTaskGroup, ::std::function< void()> &&mainThreadCallback)
static MCAPI ::brstd::move_only_function<::TaskResult()> _wrapTaskCallback(::ResourceLoadManager::ResourceLoadTaskGroup &resourceLoadTaskGroup, ::brstd::move_only_function<::TaskResult()> &&threadedCallback)
Definition TaskResult.h:5
Definition move_only_function.h:9
Definition ResourceLoadManager.h:26
Definition Alias.h:14