blob: 85ba2b5ff91cfb617374687ccc151dfd7a46a69d [file] [log] [blame]
Ben Chan89cf29e2011-08-10 13:11:05 -07001// Copyright (c) 2011 The Chromium OS 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 CROS_DISKS_DEVICE_EVENT_DISPATCHER_INTERFACE_H_
6#define CROS_DISKS_DEVICE_EVENT_DISPATCHER_INTERFACE_H_
7
Ben Chan89cf29e2011-08-10 13:11:05 -07008namespace cros_disks {
9
Ben Chan2a5ea752011-12-21 09:48:19 -080010struct DeviceEvent;
Ben Chan89cf29e2011-08-10 13:11:05 -070011
12// An interface class for dispatching device events.
13class DeviceEventDispatcherInterface {
14 public:
Ben Chan40ecb9b2017-03-08 11:26:07 -080015 virtual ~DeviceEventDispatcherInterface() = default;
Ben Chan89cf29e2011-08-10 13:11:05 -070016
17 // Implemented by a derived class to dispatch a device event.
18 virtual void DispatchDeviceEvent(const DeviceEvent& event) = 0;
19};
20
21} // namespace cros_disks
22
23#endif // CROS_DISKS_DEVICE_EVENT_DISPATCHER_INTERFACE_H_