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 COMPONENTS_STORAGE_MONITOR_REMOVABLE_STORAGE_OBSERVER_H_ 6#define COMPONENTS_STORAGE_MONITOR_REMOVABLE_STORAGE_OBSERVER_H_ 7 8#include "components/storage_monitor/storage_info.h" 9 10namespace storage_monitor { 11 12// Clients use this class to register for event-based notifications of 13// removable storage devices attached to or removed from the system. 14class RemovableStorageObserver { 15 public: 16 // When a removable storage device is attached, this 17 // event is triggered. 18 virtual void OnRemovableStorageAttached(const StorageInfo& info) {} 19 20 // When a removable storage device is detached, this 21 // event is triggered. 22 virtual void OnRemovableStorageDetached(const StorageInfo& info) {} 23 24 protected: 25 virtual ~RemovableStorageObserver() {} 26}; 27 28} // namespace storage_monitor 29 30#endif // COMPONENTS_STORAGE_MONITOR_REMOVABLE_STORAGE_OBSERVER_H_ 31