LeviLamina
Loading...
Searching...
No Matches
IInvocationStateTracker.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/oreui/binding/interface/InvocationResult.h"
7#include "mc/client/gui/oreui/binding/interface/InvocationState.h"
8
9// auto generated forward declare list
10// clang-format off
11namespace Bedrock::PubSub { class Subscription; }
12namespace OreUI::Detail { class IdType; }
13// clang-format on
14
15namespace OreUI::Detail {
16
18public:
19 // IInvocationStateTracker inner types declare
20 // clang-format off
22 // clang-format on
23
24 // IInvocationStateTracker inner types define
26 public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<1, 1, ::OreUI::InvocationState> mState;
30 ::ll::TypedStorage<1, 1, ::OreUI::InvocationResult> mResult;
31 ::ll::TypedStorage<1, 1, uchar> mProgress;
32 ::ll::TypedStorage<4, 8, ::std::optional<int>> mError;
33 // NOLINTEND
34 };
35
36 using OnChange =
37 void(::OreUI::Detail::IdType const&, ::OreUI::Detail::IInvocationStateTracker::InvocationInformation const&);
38
39 using OnRemoved = void(::OreUI::Detail::IdType const&);
40
41public:
42 // virtual functions
43 // NOLINTBEGIN
44 virtual ~IInvocationStateTracker() = default;
45
46 virtual ::Bedrock::PubSub::Subscription onChange(
47 ::OreUI::Detail::IdType const& id,
48 ::std::function<void(
49 ::OreUI::Detail::IdType const&,
50 ::OreUI::Detail::IInvocationStateTracker::InvocationInformation const&
51 )> observer
52 ) = 0;
53
54 virtual ::Bedrock::PubSub::Subscription
55 onRemove(::OreUI::Detail::IdType const& id, ::std::function<void(::OreUI::Detail::IdType const&)> observer) = 0;
56
57 virtual void setState(
58 ::OreUI::Detail::IdType const& id,
59 ::OreUI::Detail::IInvocationStateTracker::InvocationInformation const& information
60 ) = 0;
61
62 virtual void setState(
63 ::OreUI::Detail::IdType const& id,
64 ::OreUI::InvocationState state,
65 ::OreUI::InvocationResult result,
66 uchar progress,
67 ::std::optional<int> error
68 ) = 0;
69
70 virtual void remove(::OreUI::Detail::IdType const& id) = 0;
71 // NOLINTEND
72
73public:
74 // virtual function thunks
75 // NOLINTBEGIN
76
77 // NOLINTEND
78};
79
80} // namespace OreUI::Detail
Definition Subscription.h:10
Definition IInvocationStateTracker.h:7
Definition IdType.h:7