Upload upstream chromium 67.0.3396
[platform/framework/web/chromium-efl.git] / device / serial / serial_device_enumerator_linux.h
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef DEVICE_SERIAL_SERIAL_DEVICE_ENUMERATOR_LINUX_H_
6 #define DEVICE_SERIAL_SERIAL_DEVICE_ENUMERATOR_LINUX_H_
7
8 #include "base/macros.h"
9 #include "device/serial/serial_device_enumerator.h"
10 #include "device/udev_linux/scoped_udev.h"
11
12 namespace device {
13
14 // Discovers and enumerates serial devices available to the host.
15 class SerialDeviceEnumeratorLinux : public SerialDeviceEnumerator {
16  public:
17   SerialDeviceEnumeratorLinux();
18   ~SerialDeviceEnumeratorLinux() override;
19
20   // Implementation for SerialDeviceEnumerator.
21   std::vector<mojom::SerialDeviceInfoPtr> GetDevices() override;
22
23  private:
24   ScopedUdevPtr udev_;
25
26   DISALLOW_COPY_AND_ASSIGN(SerialDeviceEnumeratorLinux);
27 };
28
29 }  // namespace device
30
31 #endif  // DEVICE_SERIAL_SERIAL_DEVICE_ENUMERATOR_LINUX_H_