Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
WatchdogTimer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class Scheduler;
8class TaskResult;
9class WorkerPool;
10// clang-format on
11
12class WatchdogTimer {
13public:
14 // member variables
15 // NOLINTBEGIN
26 // NOLINTEND
27
28public:
29 // prevent constructor by default
30 WatchdogTimer& operator=(WatchdogTimer const&);
31 WatchdogTimer(WatchdogTimer const&);
32 WatchdogTimer();
33
34public:
35 // member functions
36 // NOLINTBEGIN
37#ifdef LL_PLAT_C
38 MCNAPI WatchdogTimer(
39 ::WorkerPool& workerPool,
40 ::Scheduler& scheduler,
41 ::std::chrono::nanoseconds timeout,
42 bool startPaused,
43 ::std::function<::std::chrono::steady_clock::time_point()> timeoutCallback,
44 ::std::chrono::nanoseconds deadline,
45 bool assertOnDeadline
46 );
47
48 MCNAPI ::TaskResult _watchdogTimerThreadRoutine();
49
50 MCNAPI void terminateWatchdogTimer();
51#endif
52 // NOLINTEND
53
54public:
55 // constructor thunks
56 // NOLINTBEGIN
57#ifdef LL_PLAT_C
58 MCNAPI void* $ctor(
59 ::WorkerPool& workerPool,
60 ::Scheduler& scheduler,
61 ::std::chrono::nanoseconds timeout,
62 bool startPaused,
63 ::std::function<::std::chrono::steady_clock::time_point()> timeoutCallback,
64 ::std::chrono::nanoseconds deadline,
65 bool assertOnDeadline
66 );
67#endif
68 // NOLINTEND
69};
Definition Scheduler.h:15
Definition TaskResult.h:5
Definition WorkerPool.h:22
Definition Alias.h:14