diff options
Diffstat (limited to 'kernel/devices/src/storage/storage_controller.cpp')
| -rw-r--r-- | kernel/devices/src/storage/storage_controller.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/kernel/devices/src/storage/storage_controller.cpp b/kernel/devices/src/storage/storage_controller.cpp index f95f533..d127a8c 100644 --- a/kernel/devices/src/storage/storage_controller.cpp +++ b/kernel/devices/src/storage/storage_controller.cpp @@ -1,5 +1,8 @@ #include "devices/storage/storage_controller.hpp" +#include "devices/device.hpp" + +#include <algorithm> #include <cstddef> namespace devices::storage @@ -14,4 +17,20 @@ namespace devices::storage { return m_major; } + + auto storage_controller::device_by_minor(size_t minor) -> device * + { + auto it = std::ranges::find_if(m_devices, [minor](auto const & device) { return device->minor() == minor; }); + + if (it != m_devices.end()) + { + return *it; + } + return nullptr; + } + + auto storage_controller::devices_count() -> size_t + { + return m_devices.size(); + } } // namespace devices::storage
\ No newline at end of file |
