Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(81)

Side by Side Diff: components/image_fetcher/image_decoder.h

Issue 2761303002: Move common ImageFetcher component files to core/ (Closed)
Patch Set: Rebased. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2016 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_IMAGE_FETCHER_IMAGE_DECODER_H_
6 #define COMPONENTS_IMAGE_FETCHER_IMAGE_DECODER_H_
7
8 #include <string>
9
10 #include "base/callback_forward.h"
11 #include "base/macros.h"
12
13 namespace gfx {
14 class Image;
15 class Size;
16 } // namespace gfx
17
18 namespace image_fetcher {
19
20 using ImageDecodedCallback = base::Callback<void(const gfx::Image&)>;
21
22 // ImageDecoder defines the common interface for decoding images.
23 class ImageDecoder {
24 public:
25 ImageDecoder() {}
26 virtual ~ImageDecoder() {}
27
28 // Decodes the passed |image_data| and runs the given callback. The callback
29 // is run even if decoding the image fails. In case an error occured during
30 // decoding the image an empty image is passed to the callback.
31 // For images with multiple frames (e.g. ico files), a frame with a size as
32 // close as possible to |desired_image_frame_size| is chosen (tries to take
33 // one in larger size if there's no precise match). Passing gfx::Size() as
34 // |desired_image_frame_size| is also supported and will result in chosing the
35 // smallest available size.
36 virtual void DecodeImage(const std::string& image_data,
37 const gfx::Size& desired_image_frame_size,
38 const ImageDecodedCallback& callback) = 0;
39
40 private:
41 DISALLOW_COPY_AND_ASSIGN(ImageDecoder);
42 };
43
44 } // namespace image_fetcher
45
46 #endif // COMPONENTS_IMAGE_FETCHER_IMAGE_DECODER_H_
OLDNEW
« no previous file with comments | « components/image_fetcher/image_data_fetcher_unittest.cc ('k') | components/image_fetcher/image_fetcher.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698