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

Side by Side Diff: Source/platform/image-decoders/jpeg/JPEGImageDecoder.h

Issue 418653002: Allowing YUV data to be retrieved from the JPEG Decoder. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Removed useless added parameter Created 6 years, 5 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
1 /* 1 /*
2 * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. 2 * Copyright (C) 2006 Apple Computer, Inc. All rights reserved.
3 * Copyright (C) 2008-2009 Torch Mobile, Inc. 3 * Copyright (C) 2008-2009 Torch Mobile, Inc.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 29 matching lines...) Expand all
40 class PLATFORM_EXPORT JPEGImageDecoder : public ImageDecoder { 40 class PLATFORM_EXPORT JPEGImageDecoder : public ImageDecoder {
41 WTF_MAKE_NONCOPYABLE(JPEGImageDecoder); 41 WTF_MAKE_NONCOPYABLE(JPEGImageDecoder);
42 public: 42 public:
43 JPEGImageDecoder(ImageSource::AlphaOption, ImageSource::GammaAndColorProfile Option, size_t maxDecodedBytes); 43 JPEGImageDecoder(ImageSource::AlphaOption, ImageSource::GammaAndColorProfile Option, size_t maxDecodedBytes);
44 virtual ~JPEGImageDecoder(); 44 virtual ~JPEGImageDecoder();
45 45
46 // ImageDecoder 46 // ImageDecoder
47 virtual String filenameExtension() const OVERRIDE { return "jpg"; } 47 virtual String filenameExtension() const OVERRIDE { return "jpg"; }
48 virtual bool isSizeAvailable() OVERRIDE; 48 virtual bool isSizeAvailable() OVERRIDE;
49 virtual bool hasColorProfile() const OVERRIDE { return m_hasColorProfile; } 49 virtual bool hasColorProfile() const OVERRIDE { return m_hasColorProfile; }
50 virtual IntSize decodedSize() const OVERRIDE { return m_decodedSize; } 50 virtual IntSize decodedSize(int component = 0) const OVERRIDE;
51 virtual bool setSize(unsigned width, unsigned height) OVERRIDE; 51 virtual bool setSize(unsigned width, unsigned height) OVERRIDE;
52 virtual ImageFrame* frameBufferAtIndex(size_t) OVERRIDE; 52 virtual ImageFrame* frameBufferAtIndex(size_t) OVERRIDE;
53 // CAUTION: setFailed() deletes |m_reader|. Be careful to avoid 53 // CAUTION: setFailed() deletes |m_reader|. Be careful to avoid
54 // accessing deleted memory, especially when calling this from inside 54 // accessing deleted memory, especially when calling this from inside
55 // JPEGImageReader! 55 // JPEGImageReader!
56 virtual bool setFailed() OVERRIDE; 56 virtual bool setFailed() OVERRIDE;
57 virtual void setHardwareDecoding(bool hardwareDecoding) OVERRIDE { m_hardwar eDecoding = hardwareDecoding; }
Stephen White 2014/07/23 21:45:53 As above: maybe setAcceleratedYUVDecoding?
sugoi1 2014/07/24 15:48:31 Done.
58 virtual bool hardwareDecoding() const OVERRIDE { return m_hardwareDecoding; }
59 virtual bool doHardwareDecoding() OVERRIDE;
60 virtual void setDecodingBuffers(OwnPtr<DecodingBuffers>&) OVERRIDE;
57 61
58 bool outputScanlines(); 62 bool outputScanlines();
59 unsigned desiredScaleNumerator() const; 63 unsigned desiredScaleNumerator() const;
60 void jpegComplete(); 64 void jpegComplete();
61 65
62 void setOrientation(ImageOrientation orientation) { m_orientation = orientat ion; } 66 void setOrientation(ImageOrientation orientation) { m_orientation = orientat ion; }
63 void setHasColorProfile(bool hasColorProfile) { m_hasColorProfile = hasColor Profile; } 67 void setHasColorProfile(bool hasColorProfile) { m_hasColorProfile = hasColor Profile; }
64 void setDecodedSize(unsigned width, unsigned height); 68 void setDecodedSize(unsigned width, unsigned height);
65 69
66 private: 70 private:
67 // Decodes the image. If |onlySize| is true, stops decoding after 71 // Decodes the image. If |onlySize| is true, stops decoding after
68 // calculating the image size. If decoding fails but there is no more 72 // calculating the image size. If decoding fails but there is no more
69 // data coming, sets the "decode failure" flag. 73 // data coming, sets the "decode failure" flag.
70 void decode(bool onlySize); 74 void decode(bool onlySize);
71 75
72 OwnPtr<JPEGImageReader> m_reader; 76 OwnPtr<JPEGImageReader> m_reader;
77 OwnPtr<DecodingBuffers> m_decodingBuffers;
73 IntSize m_decodedSize; 78 IntSize m_decodedSize;
74 bool m_hasColorProfile; 79 bool m_hasColorProfile;
80 bool m_hardwareDecoding;
75 }; 81 };
76 82
77 } // namespace blink 83 } // namespace blink
78 84
79 #endif 85 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698