1cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 2cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// found in the LICENSE file. 4cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 5cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#ifndef COMPONENTS_FAVICON_BASE_FAVICON_CALLBACK_H_ 6cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#define COMPONENTS_FAVICON_BASE_FAVICON_CALLBACK_H_ 7cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 8cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#include <vector> 9cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 10cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#include "base/callback.h" 11cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 12cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)namespace favicon_base { 13cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 14f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)struct FaviconRawBitmapResult; 15cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)struct FaviconImageResult; 16cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 17cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Callback for functions that can be used to return a |gfx::Image| and the 18cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// |GURL| it is loaded from. They are returned as a |FaviconImageResult| object. 19cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)typedef base::Callback<void(const FaviconImageResult&)> FaviconImageCallback; 20cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 21cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Callback for functions returning raw data for a favicon. In 22f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// |FaviconRawBitmapResult|, the data is not yet converted as a |gfx::Image|. 23f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)typedef base::Callback<void(const FaviconRawBitmapResult&)> 24f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) FaviconRawBitmapCallback; 25cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 26cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Callback for functions returning raw data for a favicon in multiple 27f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// resolution. In |FaviconRawBitmapResult|, the data is not yet converted as a 28cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// |gfx::Image|. 29f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)typedef base::Callback<void(const std::vector<FaviconRawBitmapResult>&)> 30cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) FaviconResultsCallback; 31cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 32cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)} // namespace favicon_base 33cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 34cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#endif // COMPONENTS_FAVICON_BASE_FAVICON_CALLBACK_H_ 35