ladybird/Kernel/Devices/HID/HIDDevice.h
Liav A 9eb08bdb0f Kernel: Make major and minor numbers to be DistinctNumerics
This helps avoid confusion in general, and make constructors, methods
and code patterns much more clean and understandable.
2021-12-23 23:02:39 +01:00

35 lines
595 B
C++

/*
* Copyright (c) 2021, Liav A. <liavalb@hotmail.co.il>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#include <Kernel/Devices/CharacterDevice.h>
#include <Kernel/Random.h>
namespace Kernel {
class HIDDevice : public CharacterDevice {
public:
enum class Type {
Unknown = 0,
Keyboard,
Mouse,
};
virtual Type instrument_type() const = 0;
virtual void enable_interrupts() = 0;
protected:
HIDDevice(MajorNumber major, MinorNumber minor)
: CharacterDevice(major, minor)
{
}
EntropySource m_entropy_source;
};
}