// Copyright 2014 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_PROFILES_PROFILE_AVATAR_DOWNLOADER_H_ #define CHROME_BROWSER_PROFILES_PROFILE_AVATAR_DOWNLOADER_H_ #include #include "base/files/file_path.h" #include "chrome/browser/bitmap_fetcher/bitmap_fetcher.h" class ProfileInfoCache; class ProfileAvatarDownloader : public chrome::BitmapFetcherDelegate { public: ProfileAvatarDownloader(size_t icon_index, const base::FilePath& profile_path, ProfileInfoCache* cache); ~ProfileAvatarDownloader() override; void Start(); // BitmapFetcherDelegate: void OnFetchComplete(const GURL& url, const SkBitmap* bitmap) override; private: // Downloads the avatar image from a url. scoped_ptr fetcher_; // Index of the avatar being downloaded. size_t icon_index_; // Path of the profile for which the avatar is being downloaded. base::FilePath profile_path_; ProfileInfoCache* cache_; // Weak. }; #endif // CHROME_BROWSER_PROFILES_PROFILE_AVATAR_DOWNLOADER_H_