USBSystem.h 734 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /*
  2. * TI Voxel Lib component.
  3. *
  4. * Copyright (c) 2014 Texas Instruments Inc.
  5. */
  6. #ifndef VOXEL_USBSYSTEM_H
  7. #define VOXEL_USBSYSTEM_H
  8. #include "Common.h"
  9. #include "Device.h"
  10. namespace Voxel
  11. {
  12. /**
  13. * \addtogroup IO
  14. * @{
  15. */
  16. class VOXEL_NO_EXPORT USBSystemPrivate;
  17. // This facilitates getting device handle corresponding a particular vid:pid:serial
  18. class VOXEL_EXPORT USBSystem
  19. {
  20. protected:
  21. Ptr<USBSystemPrivate> _usbPrivate;
  22. public:
  23. USBSystem();
  24. Vector<DevicePtr> getDevices();
  25. bool isInitialized();
  26. inline USBSystemPrivate &getUSBSystemPrivate() { return *_usbPrivate; }
  27. String getDeviceNode(const USBDevice &usbd);
  28. virtual ~USBSystem() {}
  29. };
  30. /**
  31. * @}
  32. */
  33. }
  34. #endif // VOXEL_USBSYSTEM_H