1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-18 07:55:07 +00:00
serenity/Kernel/Devices/RandomDevice.h
Andreas Kling 8cbb7f101f Kernel: Have File virtuals take a FileDescriptor& rather than a Process&.
This will allow us to implement different behaviors depending on the role
of the descriptor a File is being accessed through.
2019-04-29 13:58:40 +02:00

21 lines
611 B
C++

#pragma once
#include "CharacterDevice.h"
class RandomDevice final : public CharacterDevice {
AK_MAKE_ETERNAL
public:
RandomDevice();
virtual ~RandomDevice() override;
static dword random_value();
private:
// ^CharacterDevice
virtual ssize_t read(FileDescriptor&, byte*, ssize_t) override;
virtual ssize_t write(FileDescriptor&, const byte*, ssize_t) override;
virtual bool can_read(FileDescriptor&) const override;
virtual bool can_write(FileDescriptor&) const override { return true; }
virtual const char* class_name() const override { return "RandomDevice"; }
};