The Pedigree Project
0.1
src
system
kernel
core
processor
DeviceHardIrqContext.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 PEDIGREE_KERNEL_CORE_PROCESSOR_DEVICEHARDIRQCONTEXT_H
9
#define PEDIGREE_KERNEL_CORE_PROCESSOR_DEVICEHARDIRQCONTEXT_H
10
#include "pedigree/kernel/process/ExecutionContext.h"
11
#include "pedigree/kernel/processor/ProcessorInformation.h"
12
13
#include <config.h>
14
16
class
DeviceHardIrqContext
{
17
public
:
18
DeviceHardIrqContext
(
size_t
& previousDepth,
bool
& restorationArmed);
19
~DeviceHardIrqContext
();
20
22
static
void
restoreDepth
(
size_t
previousDepth);
23
24
private
:
25
DeviceHardIrqContext
(
const
DeviceHardIrqContext
&);
26
DeviceHardIrqContext
& operator=(
const
DeviceHardIrqContext
&);
27
28
ProcessorInformation& m_Information;
29
bool
& m_RestorationArmed;
30
size_t
m_PreviousDepth;
31
ExecutionContextGuard
m_ExecutionContext;
32
};
33
39
class
SuspendDeviceHardIrqContext
{
40
public
:
41
SuspendDeviceHardIrqContext
();
42
~SuspendDeviceHardIrqContext
();
43
44
private
:
45
SuspendDeviceHardIrqContext
(
const
SuspendDeviceHardIrqContext
&);
46
SuspendDeviceHardIrqContext
& operator=(
const
SuspendDeviceHardIrqContext
&);
47
48
ProcessorInformation& m_Information;
49
};
50
51
#endif
DeviceHardIrqContext
Definition
DeviceHardIrqContext.h:16
DeviceHardIrqContext::restoreDepth
static void restoreDepth(size_t previousDepth)
Definition
Processor.cc:169
ExecutionContextGuard
Definition
ExecutionContext.h:70
SuspendDeviceHardIrqContext
Definition
DeviceHardIrqContext.h:39
Generated on Tue Sep 22 2026 06:05:50 for The Pedigree Project by
1.9.8