20#include "pedigree/kernel/Log.h"
21#include "pedigree/kernel/compiler.h"
22#include "pedigree/kernel/machine/Device.h"
23#include "pedigree/kernel/utilities/String.h"
24#include "pedigree/kernel/utilities/Vector.h"
25#include "pedigree/kernel/utilities/utility.h"
28#include "modules/Module.h"
29#include "system/kernel/machine/mach_pc/Ps2Controller.h"
32EXPORTED_PUBLIC
Ps2Mouse* g_Ps2Mouse = 0;
40 if (p->addresses().count() > 0) {
41 if (p->addresses()[0]->m_Name.compare(
"ps2-base", 8)) {
45 if (pNewChild->initialise(controller)) {
46 g_Ps2Mouse = pNewChild;
48 ERROR(
"PS/2 Mouse initialisation failed!");
57 auto c = pedigree_std::make_callable(f);
71 auto removeMouse = [](
Device* device) {
return device == g_Ps2Mouse ? nullptr : device; };
72 auto callback = pedigree_std::make_callable(removeMouse);
78MODULE_NAME(
"ps2mouse");
static void addToRoot(Device *device)
static void foreach(Callback callback, Device *root=0)