Changeset 28349 in vbox for trunk/src/VBox/Main/include
- Timestamp:
- Apr 15, 2010 9:18:31 AM (15 years ago)
- svn:sync-xref-src-repo-rev:
- 60109
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/include/HostHardwareLinux.h
r25728 r28349 44 44 /** The device node of the drive. */ 45 45 iprt::MiniString mDevice; 46 /** The hal unique device identifier, if available. */ 46 /** A unique identifier for the device, if available. This should be 47 * kept consistant accross different probing methods of a given 48 * platform if at all possible. */ 47 49 iprt::MiniString mUdi; 48 50 /** A textual description of the drive. */ … … 124 126 /** The device node of the device. */ 125 127 iprt::MiniString mDevice; 126 /** The sysfs path of the device. */ 128 /** The system identifier of the device. Specific to the probing 129 * method. */ 127 130 iprt::MiniString mSysfsPath; 128 131 /** Type for the list of interfaces. */ 129 132 typedef std::vector<iprt::MiniString> InterfaceList; 130 /** The sys fs paths of the device's interfaces. */133 /** The system IDs of the device's interfaces. */ 131 134 InterfaceList mInterfaces; 132 135 133 136 /** Constructors */ 134 137 USBDeviceInfo(const iprt::MiniString &aDevice, 135 const iprt::MiniString &aSys fsPath)138 const iprt::MiniString &aSystemID) 136 139 : mDevice(aDevice), 137 mSysfsPath(aSys fsPath)140 mSysfsPath(aSystemID) 138 141 { } 139 142 }; … … 172 175 /** Convenience typedef. */ 173 176 typedef VBoxMainUSBDeviceInfo::USBDeviceInfo::InterfaceList USBInterfaceList; 177 178 /** Implementation of the hotplug waiter class below */ 179 class VBoxMainHotplugWaiterImpl 180 { 181 public: 182 VBoxMainHotplugWaiterImpl (void) {} 183 virtual ~VBoxMainHotplugWaiterImpl (void) {} 184 /** @copydoc VBoxMainHotplugWaiter::Wait */ 185 virtual int Wait (RTMSINTERVAL cMillies) = 0; 186 /** @copydoc VBoxMainHotplugWaiter::Interrupt */ 187 virtual void Interrupt (void) = 0; 188 }; 174 189 175 190 /** … … 181 196 class VBoxMainHotplugWaiter 182 197 { 183 /** Opaque context struct. */ 184 struct Context; 185 186 /** Opaque waiter context. */ 187 Context *mContext; 188 public: 189 /** Constructor */ 198 /** Class implementation. */ 199 VBoxMainHotplugWaiterImpl *mImpl; 200 public: 201 /** Constructor. Responsible for selecting the implementation. */ 190 202 VBoxMainHotplugWaiter (void); 191 203 /** Destructor. */ 192 ~VBoxMainHotplugWaiter (void); 204 ~VBoxMainHotplugWaiter (void) 205 { 206 delete mImpl; 207 } 193 208 /** 194 209 * Wait for a hotplug event. … … 202 217 * @param cMillies How long to wait for at most. 203 218 */ 204 int Wait (RTMSINTERVAL cMillies); 219 int Wait (RTMSINTERVAL cMillies) 220 { 221 return mImpl->Wait(cMillies); 222 } 205 223 /** 206 224 * Interrupts an active wait. In the current implementation, the wait 207 225 * may not return until up to two seconds after calling this method. 208 226 */ 209 void Interrupt (void); 227 void Interrupt (void) 228 { 229 mImpl->Interrupt(); 230 } 210 231 }; 211 232
Note:
See TracChangeset
for help on using the changeset viewer.