1
from dbus import Interface, SystemBus
4
class HALManager(object):
6
def __init__(self, bus=None):
7
self._bus = bus or SystemBus()
8
manager = self._bus.get_object("org.freedesktop.Hal",
9
"/org/freedesktop/Hal/Manager")
10
self._manager = Interface(manager, "org.freedesktop.Hal.Manager")
12
def get_devices(self):
14
Returns a list of HAL devices.
17
for udi in self._manager.GetAllDevices():
18
device = self._bus.get_object("org.freedesktop.Hal", udi)
19
device = Interface(device, "org.freedesktop.Hal.Device")
20
device = HALDevice(device)
21
devices.append(device)
25
class HALDevice(object):
27
def __init__(self, device):
30
self.properties = device.GetAllProperties()
31
self.udi = self.properties["info.udi"]
34
def add_child(self, device):
35
self._children.append(device)
38
def get_children(self):