mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 03:37:43 +00:00
Kernel/USB: Add get_driver_by_name
helper in USBManagement
This commit is contained in:
parent
2aa17f619c
commit
3cfdc6e363
2 changed files with 7 additions and 0 deletions
|
@ -81,6 +81,12 @@ void USBManagement::register_driver(NonnullLockRefPtr<Driver> driver)
|
||||||
m_available_drivers.append(driver);
|
m_available_drivers.append(driver);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LockRefPtr<Driver> USBManagement::get_driver_by_name(StringView name)
|
||||||
|
{
|
||||||
|
auto it = m_available_drivers.find_if([name](auto driver) { return driver->name() == name; });
|
||||||
|
return it.is_end() ? nullptr : LockRefPtr { *it };
|
||||||
|
}
|
||||||
|
|
||||||
void USBManagement::unregister_driver(NonnullLockRefPtr<Driver> driver)
|
void USBManagement::unregister_driver(NonnullLockRefPtr<Driver> driver)
|
||||||
{
|
{
|
||||||
dbgln_if(USB_DEBUG, "Unregistering driver {}", driver->name());
|
dbgln_if(USB_DEBUG, "Unregistering driver {}", driver->name());
|
||||||
|
|
|
@ -22,6 +22,7 @@ public:
|
||||||
static USBManagement& the();
|
static USBManagement& the();
|
||||||
|
|
||||||
void register_driver(NonnullLockRefPtr<Driver> driver);
|
void register_driver(NonnullLockRefPtr<Driver> driver);
|
||||||
|
LockRefPtr<Driver> get_driver_by_name(StringView name);
|
||||||
void unregister_driver(NonnullLockRefPtr<Driver> driver);
|
void unregister_driver(NonnullLockRefPtr<Driver> driver);
|
||||||
|
|
||||||
Vector<NonnullLockRefPtr<Driver>>& available_drivers() { return m_available_drivers; }
|
Vector<NonnullLockRefPtr<Driver>>& available_drivers() { return m_available_drivers; }
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue