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

Side by Side Diff: Source/core/platform/graphics/ImageBuffer.h

Issue 14856010: Adding color space conversion code (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Attemptimp to re-upload the patch Created 7 years, 6 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 Nikolas Zimmermann <zimmermann@kde.org> 2 * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org>
3 * Copyright (C) 2007, 2008, 2009 Apple Inc. All rights reserved. 3 * Copyright (C) 2007, 2008, 2009 Apple Inc. All rights reserved.
4 * Copyright (C) 2010 Torch Mobile (Beijing) Co. Ltd. All rights reserved. 4 * Copyright (C) 2010 Torch Mobile (Beijing) Co. Ltd. All rights reserved.
5 * 5 *
6 * Redistribution and use in source and binary forms, with or without 6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions 7 * modification, are permitted provided that the following conditions
8 * are met: 8 * are met:
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 PassRefPtr<Uint8ClampedArray> getUnmultipliedImageData(const IntRect&, C oordinateSystem = LogicalCoordinateSystem) const; 111 PassRefPtr<Uint8ClampedArray> getUnmultipliedImageData(const IntRect&, C oordinateSystem = LogicalCoordinateSystem) const;
112 PassRefPtr<Uint8ClampedArray> getPremultipliedImageData(const IntRect&, CoordinateSystem = LogicalCoordinateSystem) const; 112 PassRefPtr<Uint8ClampedArray> getPremultipliedImageData(const IntRect&, CoordinateSystem = LogicalCoordinateSystem) const;
113 113
114 void putByteArray(Multiply multiplied, Uint8ClampedArray*, const IntSize & sourceSize, const IntRect& sourceRect, const IntPoint& destPoint, CoordinateSy stem = LogicalCoordinateSystem); 114 void putByteArray(Multiply multiplied, Uint8ClampedArray*, const IntSize & sourceSize, const IntRect& sourceRect, const IntPoint& destPoint, CoordinateSy stem = LogicalCoordinateSystem);
115 115
116 void convertToLuminanceMask(); 116 void convertToLuminanceMask();
117 117
118 String toDataURL(const String& mimeType, const double* quality = 0, Coor dinateSystem = LogicalCoordinateSystem) const; 118 String toDataURL(const String& mimeType, const double* quality = 0, Coor dinateSystem = LogicalCoordinateSystem) const;
119 AffineTransform baseTransform() const { return AffineTransform(); } 119 AffineTransform baseTransform() const { return AffineTransform(); }
120 void transformColorSpace(ColorSpace srcColorSpace, ColorSpace dstColorSp ace); 120 void transformColorSpace(ColorSpace srcColorSpace, ColorSpace dstColorSp ace);
121 void platformTransformColorSpace(const Vector<int>&); 121 void platformTransformColorSpace(const Vector<uint8_t>&);
122 static const Vector<uint8_t>& getLinearRgbLUT();
123 static const Vector<uint8_t>& getDeviceRgbLUT();
122 PlatformLayer* platformLayer() const; 124 PlatformLayer* platformLayer() const;
123 125
124 // FIXME: current implementations of this method have the restriction th at they only work 126 // FIXME: current implementations of this method have the restriction th at they only work
125 // with textures that are RGB or RGBA format, UNSIGNED_BYTE type and lev el 0, as specified in 127 // with textures that are RGB or RGBA format, UNSIGNED_BYTE type and lev el 0, as specified in
126 // Extensions3D::canUseCopyTextureCHROMIUM(). 128 // Extensions3D::canUseCopyTextureCHROMIUM().
127 bool copyToPlatformTexture(GraphicsContext3D&, Platform3DObject, GC3Denu m, GC3Denum, GC3Dint, bool, bool); 129 bool copyToPlatformTexture(GraphicsContext3D&, Platform3DObject, GC3Denu m, GC3Denum, GC3Dint, bool, bool);
128 130
129 void reportMemoryUsage(MemoryObjectInfo*) const; 131 void reportMemoryUsage(MemoryObjectInfo*) const;
130 132
131 private: 133 private:
(...skipping 20 matching lines...) Expand all
152 // so that create() knows when it should return failure. 154 // so that create() knows when it should return failure.
153 ImageBuffer(const IntSize&, float resolutionScale, RenderingMode, Opacit yMode, bool& success); 155 ImageBuffer(const IntSize&, float resolutionScale, RenderingMode, Opacit yMode, bool& success);
154 ImageBuffer(const IntSize&, float resolutionScale, const GraphicsContext *, bool hasAlpha, bool& success); 156 ImageBuffer(const IntSize&, float resolutionScale, const GraphicsContext *, bool hasAlpha, bool& success);
155 }; 157 };
156 158
157 String ImageDataToDataURL(const ImageData&, const String& mimeType, const do uble* quality); 159 String ImageDataToDataURL(const ImageData&, const String& mimeType, const do uble* quality);
158 160
159 } // namespace WebCore 161 } // namespace WebCore
160 162
161 #endif // ImageBuffer_h 163 #endif // ImageBuffer_h
OLDNEW
« no previous file with comments | « Source/WebKit/chromium/tests/ImageFilterBuilderTest.cpp ('k') | Source/core/platform/graphics/ImageBuffer.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698