diff options
Diffstat (limited to 'kernel/kapi/devices/device.cpp')
| -rw-r--r-- | kernel/kapi/devices/device.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/kernel/kapi/devices/device.cpp b/kernel/kapi/devices/device.cpp index 4c63f6a4..3eb9aaac 100644 --- a/kernel/kapi/devices/device.cpp +++ b/kernel/kapi/devices/device.cpp @@ -12,6 +12,21 @@ namespace kapi::devices : m_name(name) {} + auto device::as(interface interface) noexcept -> void * + { + return query_interface(interface); + } + + auto device::as(interface interface) const noexcept -> void const * + { + return const_cast<device *>(this)->query_interface(interface); + } + + auto device::is_a(interface interface) const noexcept -> bool + { + return const_cast<device *>(this)->query_interface(interface) != nullptr; + } + auto device::name() const -> kstd::string const & { return m_name; |
