LeviLamina
Loading...
Searching...
No Matches
TaskQueuePortImpl.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/threading/LocklessQueue.h"
7#include "mc/deps/core/threading/XTaskQueueDispatchMode.h"
8
9// auto generated forward declare list
10// clang-format off
12namespace OS { struct ThreadPoolActionStatus; }
13// clang-format on
14
16public:
17 // TaskQueuePortImpl inner types declare
18 // clang-format off
19 struct QueueEntry;
20 struct TerminationEntry;
21 struct WaitRegistration;
22 // clang-format on
23
24 // TaskQueuePortImpl inner types define
25 struct QueueEntry {};
26
28
30
31public:
32 // member functions
33 // NOLINTBEGIN
34 MCAPI bool AppendEntry(::TaskQueuePortImpl::QueueEntry const&, uint64);
35
36 MCAPI bool AppendWaitRegistrationEntry(::TaskQueuePortImpl::WaitRegistration*);
37
38 MCAPI void CancelPendingEntries(::ITaskQueuePortContext*, bool);
39
40 MCAPI bool DrainOneItem(::OS::ThreadPoolActionStatus&);
41
42 MCAPI long Initialize(::XTaskQueueDispatchMode);
43
44 MCAPI long InitializeWaitRegistration(::TaskQueuePortImpl::WaitRegistration*);
45
46 MCAPI void NotifyItemQueued();
47
48 MCAPI void ProcessThreadPoolCallback(::OS::ThreadPoolActionStatus&);
49
50 MCAPI void ScheduleTermination(::TaskQueuePortImpl::TerminationEntry*);
51
52 MCAPI void SubmitPendingCallback();
53
54 MCAPI TaskQueuePortImpl();
55
56 MCAPI bool Wait(::ITaskQueuePortContext*, uint);
57 // NOLINTEND
58
59public:
60 // static functions
61 // NOLINTBEGIN
62 MCAPI static void EraseQueue(::LocklessQueue<::TaskQueuePortImpl::QueueEntry>*);
63
64 MCAPI static void WaitCallback(::_TP_CALLBACK_INSTANCE*, void*, ::_TP_WAIT*, ulong);
65 // NOLINTEND
66
67public:
68 // constructor thunks
69 // NOLINTBEGIN
70 MCAPI void* $ctor();
71 // NOLINTEND
72
73public:
74 // vftables
75 // NOLINTBEGIN
76 MCAPI static void** $vftable();
77 // NOLINTEND
78};
Definition LocklessQueue.h:6
Definition TaskQueuePortImpl.h:15
Definition ITaskQueuePortContext.h:5
Definition ThreadPoolActionStatus.h:7
Definition TaskQueuePortImpl.h:25
Definition TaskQueuePortImpl.h:27
Definition TaskQueuePortImpl.h:29