Chromium Code Reviews| Index: chrome/browser/system_monitor/image_capture_device_browser_mac.h |
| diff --git a/chrome/browser/system_monitor/image_capture_device_browser_mac.h b/chrome/browser/system_monitor/image_capture_device_browser_mac.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..fd7c54fedc78a8ec574bcf5da4a22ff4753f95c7 |
| --- /dev/null |
| +++ b/chrome/browser/system_monitor/image_capture_device_browser_mac.h |
| @@ -0,0 +1,47 @@ |
| +// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CHROME_BROWSER_SYSTEM_MONITOR_IMAGE_CAPTURE_DEVICE_MAC_H_ |
| +#define CHROME_BROWSER_SYSTEM_MONITOR_IMAGE_CAPTURE_DEVICE_MAC_H_ |
| + |
| +#import <Foundation/Foundation.h> |
| + |
| +#include "base/file_path.h" |
|
Lei Zhang
2012/12/19 00:30:52
nit: remove unused headers.
Greg Billock
2012/12/19 17:20:08
Done.
|
| +#include "base/memory/scoped_nsobject.h" |
| +#include "base/platform_file.h" |
| +#include "base/string_util.h" |
| +#include "base/sys_string_conversions.h" |
| + |
| +@protocol ICDeviceBrowserDelegate; |
| +@class ImageCaptureCameraInterface; |
| +@class ImageCaptureDeviceBrowserMac; |
| +class ImageCaptureDeviceBrowserTest; |
| + |
| +namespace chrome { |
| + |
| +// This wrapper basically allows the owner to have a scoped_ptr rather than a |
| +// scoped_nsobject, isolating the Objective-C parts of the implementation away. |
| +class ImageCaptureDeviceBrowser { |
| + public: |
| + ImageCaptureDeviceBrowser(); |
| + ~ImageCaptureDeviceBrowser(); |
| + |
| + // The UUIDs passed here are available in the device attach notifications |
| + // given through SystemMonitor. They're gotten by cracking the device ID |
| + // and taking the unique ID output. |
| + static ImageCaptureCameraInterface* cameraInterfaceForUUID( |
| + const std::string& uuid); |
| + |
| + // Returns a weak pointer to the internal ImageCapture interface protocol. |
| + id<ICDeviceBrowserDelegate> device_browser(); |
| + |
| + private: |
| + scoped_nsobject<ImageCaptureDeviceBrowserMac> device_browser_; |
| +}; |
| + |
| +} // namespace chrome |
| + |
| + |
| + |
| +#endif // CHROME_BROWSER_SYSTEM_MONITOR_IMAGE_CAPTURE_DEVICE_MAC_H_ |