1// Copyright (c) 2012 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 CHROME_BROWSER_CHROMEOS_DEVICE_HIERARCHY_OBSERVER_H_ 6#define CHROME_BROWSER_CHROMEOS_DEVICE_HIERARCHY_OBSERVER_H_ 7 8namespace chromeos { 9 10// Observers receive notifications when a device has been added/removed. 11class DeviceHierarchyObserver { 12 public: 13 virtual void DeviceHierarchyChanged() = 0; 14 15 // Called when a new device (e.g. an external USB keyboard) is attached or 16 // detached. 17 virtual void DeviceAdded(int device_id) = 0; 18 virtual void DeviceRemoved(int device_id) = 0; 19 20 protected: 21 virtual ~DeviceHierarchyObserver() {} 22}; 23 24} // namespace chromeos 25 26#endif // CHROME_BROWSER_CHROMEOS_DEVICE_HIERARCHY_OBSERVER_H_ 27