HaikuDepot: notify work status from main window
[haiku.git] / src / apps / devices / Documentation / Specification.txt
blob0433db5002b0fbeee2eaca211f3970c6eb04be63
1 Each device has:
2 - Name (long/short)
3 - Manufacturer (long/short)
4 - Category (one master list, each bus type maps its device types onto the master list)
5 - Driver used
6 - Device paths
7 - Its bus type
8 - Its connection parent, if applicable
10 Each source has: (currently the RescanDevices method does this)
11 - Init function
12 - Scan method that returns the devices.
13 - DevManSource, USBSource, FWSource, ...
15 DeviceManager Specification
16 ===========================
18 DeviceManager : BApplication
19 -------------
21 DeviceManagerView : BView
22 -----------------
25 Device : public BStringItem
26 ------
27 BString GetName() const;
28 BString GetManufacturer() const;
29 Category GetCategory() const;
30 BString DriverUsed() const;
31 BString DevPathsPublished() const;
32 BView Get
33 private:
34 BString _name;
35 BString _manufacturer;
36 Category _category;
37 BString _driverUsed;
38 BString devPathsPublished;
39 map<BString, BString> _attributes;
41 Bus : public BStringItem
42 ---
43 virtual bool IsPresent() const = 0;
44 virtual Scan() = 0;
45 virtual vector<Device *> Devices() = 0;
47 PCIBus : public Bus
48 ------
50 PCIDevice: public Device
51 ---------
53 ISABus : public Bus
54 -----
56 ISADevice : public Device
57 ---------
59 USBBus : public Bus
60 ------
62 USBDevice : public Device
63 ---------
65 SCSIBus : public Bus
66 -------
68 SCSIDevice : public Device
69 ----------