The Pedigree Project
0.1
src
system
include
pedigree
kernel
debugger
commands
IrqsCommand.h
1
/*
2
* Copyright (c) 2026, Pedigree Developers
3
*
4
* Permission to use, copy, modify, and distribute this software for any
5
* purpose with or without fee is hereby granted.
6
*/
7
8
#ifndef IRQSCOMMAND_H
9
#define IRQSCOMMAND_H
10
11
#include "pedigree/kernel/debugger/DebuggerCommand.h"
12
#include "pedigree/kernel/machine/IrqManager.h"
13
15
class
IrqsCommand
:
public
DebuggerCommand
{
16
public
:
17
IrqsCommand
();
18
~IrqsCommand
();
19
20
void
autocomplete
(
const
HugeStaticString
& input,
HugeStaticString
& output);
21
22
bool
execute
(
const
HugeStaticString
& input,
HugeStaticString
& output, InterruptState& state,
23
DebuggerIO
* screen);
24
25
const
NormalStaticString
getString
() {
26
return
NormalStaticString
(
"irqs"
);
27
}
28
29
private
:
30
static
constexpr
size_t
SnapshotCapacity = 256;
31
static_assert
(SnapshotCapacity == (
static_cast<
size_t
>
(1) << (
sizeof
(uint8_t) * 8)),
32
"the IRQ debugger buffer must cover every uint8_t line number"
);
33
34
IrqLineDiagnosticSnapshot
m_Snapshots[SnapshotCapacity];
35
};
36
37
#endif
DebuggerCommand
Definition
DebuggerCommand.h:37
DebuggerIO
Definition
DebuggerIO.h:49
IrqsCommand
Definition
IrqsCommand.h:15
IrqsCommand::autocomplete
void autocomplete(const HugeStaticString &input, HugeStaticString &output)
Definition
IrqsCommand.cc:81
IrqsCommand::execute
bool execute(const HugeStaticString &input, HugeStaticString &output, InterruptState &state, DebuggerIO *screen)
Definition
IrqsCommand.cc:83
IrqsCommand::getString
const NormalStaticString getString()
Definition
IrqsCommand.h:25
StaticString
Definition
StaticString.h:49
IrqLineDiagnosticSnapshot
Definition
include/pedigree/kernel/machine/IrqManager.h:220
Generated on Thu Sep 24 2026 06:24:01 for The Pedigree Project by
1.9.8