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 UI_EVENTS_OZONE_DEVICE_EVENT_H_
6#define UI_EVENTS_OZONE_DEVICE_EVENT_H_
7
8#include "base/files/file_path.h"
9#include "base/macros.h"
10#include "ui/events/ozone/events_ozone_export.h"
11
12namespace ui {
13
14class EVENTS_OZONE_EXPORT DeviceEvent {
15 public:
16  enum DeviceType {
17    INPUT,
18    DISPLAY,
19  };
20
21  enum ActionType {
22    ADD,
23    REMOVE,
24    CHANGE,
25  };
26
27  DeviceEvent(DeviceType type, ActionType action, const base::FilePath& path);
28
29  DeviceType device_type() const { return device_type_; }
30  ActionType action_type() const { return action_type_; }
31  base::FilePath path() const { return path_; }
32
33 private:
34  DeviceType device_type_;
35  ActionType action_type_;
36  base::FilePath path_;
37
38  DISALLOW_COPY_AND_ASSIGN(DeviceEvent);
39};
40
41}  // namespace ui
42
43#endif  // UI_EVENTS_OZONE_DEVICE_EVENT_H_
44