Contur 2
Educational OS kernel simulator
Loading...
Searching...
No Matches
kernel_diagnostics.h
Go to the documentation of this file.
1
3
4#pragma once
5
6#include <memory>
7
9
10namespace contur {
11
12 class IKernel;
13
16 {
17 public:
20 explicit KernelDiagnostics(const IKernel &kernel);
21
24
27
30
33
35 KernelDiagnostics &operator=(KernelDiagnostics &&) noexcept;
36
38 [[nodiscard]] Result<KernelDiagnosticsSnapshot> captureSnapshot() const override;
39
40 private:
41 struct Impl;
42 std::unique_ptr<Impl> impl_;
43 };
44
45} // namespace contur
Read-only diagnostics interface for querying kernel state.
Top-level kernel facade.
Definition i_kernel.h:145
KernelDiagnostics & operator=(const KernelDiagnostics &)=delete
Copy assignment is disabled.
KernelDiagnostics(const KernelDiagnostics &)=delete
Copy construction is disabled.
~KernelDiagnostics() override
Destroys diagnostics adapter.
std::unique_ptr< Impl > impl_
Result< KernelDiagnosticsSnapshot > captureSnapshot() const override
Captures a diagnostics snapshot.
KernelDiagnostics(KernelDiagnostics &&) noexcept
Move-constructs diagnostics adapter state.
KernelDiagnostics(const IKernel &kernel)
Constructs diagnostics adapter bound to a kernel facade.
A result type that holds either a success value of type T or an ErrorCode.
Definition error.h:104
Read-only diagnostics contracts exposed by kernel-adjacent adapters.
Definition block.h:15
Diagnostics snapshot used by external observers.