1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 12:38:12 +00:00
serenity/Kernel/Devices/DebugLogDevice.h
Andreas Kling 3817f5f619 Kernel+LibC: Add a DebugLogDevice that forwards everything to I/O port 0xe9.
This is then used to implement the userspace dbgprintf() in a far more
efficient way than what we had before. :^)
2019-04-18 16:08:52 +02:00

17 lines
601 B
C++

#include <Kernel/Devices/CharacterDevice.h>
class DebugLogDevice final : public CharacterDevice {
public:
DebugLogDevice();
virtual ~DebugLogDevice() override;
static DebugLogDevice& the();
private:
// ^CharacterDevice
virtual ssize_t read(Process&, byte*, ssize_t) override { return 0; }
virtual ssize_t write(Process&, const byte*, ssize_t) override;
virtual bool can_write(Process&) const override { return true; }
virtual bool can_read(Process&) const override { return true; }
virtual const char* class_name() const override { return "DebugLogDevice"; }
};