1// Copyright 2013 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_MEDIA_GALLERIES_FILEAPI_IAPPS_FINDER_H_ 6#define CHROME_BROWSER_MEDIA_GALLERIES_FILEAPI_IAPPS_FINDER_H_ 7 8#include <string> 9 10#include "base/callback.h" 11 12namespace iapps { 13 14typedef base::Callback<void(const std::string&)> IAppsFinderCallback; 15 16// These methods look for the iTunes/iPhoto library in in an asynchronous 17// manner and call |callback| on the UI thread as soon as the result is known. 18// If a library exists, |callback| gets the device id for the library. If a 19// library does not exist, or the OS does not support iTunes/iPhoto, then 20// |callback| gets an empty string. 21 22void FindIPhotoLibrary(const IAppsFinderCallback& callback); 23 24void FindITunesLibrary(const IAppsFinderCallback& callback); 25 26// These methods returns true if |path| should be interpreted as the device 27// indicated by |device_id|. 28 29bool PathIndicatesIPhotoLibrary(const std::string& device_id, 30 const base::FilePath& path); 31 32bool PathIndicatesITunesLibrary(const std::string& device_id, 33 const base::FilePath& path); 34 35} // namespace iapps 36 37#endif // CHROME_BROWSER_MEDIA_GALLERIES_FILEAPI_IAPPS_FINDER_H_ 38