Commit 58bee6c2 authored by Christopher Cameron's avatar Christopher Cameron Committed by Chromium LUCI CQ

ImageData: Renames and deletes

Delete functions that ImageData doesn't use.

Also rename |color_settings| to |image_data_settings| or |settings| to
reflect the fact that this is not just for color settings.

Remove many redundant ImageData:: prefixes.

TBR=fserb, yiyix

Bug: 1160105
Change-Id: I172ef3ba2ab3e3895df39eea56ac0aa0f8e8c2da
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2598722Reviewed-by: default avatarccameron <ccameron@chromium.org>
Commit-Queue: ccameron <ccameron@chromium.org>
Cr-Commit-Position: refs/heads/master@{#838498}
parent ed47cf2c
...@@ -777,11 +777,11 @@ TEST(V8ScriptValueSerializerTest, RoundTripImageDataWithColorSpaceInfo) { ...@@ -777,11 +777,11 @@ TEST(V8ScriptValueSerializerTest, RoundTripImageDataWithColorSpaceInfo) {
// ImageData objects with color space information should serialize and // ImageData objects with color space information should serialize and
// deserialize correctly. // deserialize correctly.
V8TestingScope scope; V8TestingScope scope;
ImageDataSettings* color_settings = ImageDataSettings::Create(); ImageDataSettings* image_data_settings = ImageDataSettings::Create();
color_settings->setColorSpace("display-p3"); image_data_settings->setColorSpace("display-p3");
color_settings->setStorageFormat("float32"); image_data_settings->setStorageFormat("float32");
ImageData* image_data = ImageData* image_data = ImageData::CreateImageData(2, 1, image_data_settings,
ImageData::CreateImageData(2, 1, color_settings, ASSERT_NO_EXCEPTION); ASSERT_NO_EXCEPTION);
static_cast<unsigned char*>(image_data->BufferBase()->Data())[0] = 200; static_cast<unsigned char*>(image_data->BufferBase()->Data())[0] = 200;
v8::Local<v8::Value> wrapper = v8::Local<v8::Value> wrapper =
ToV8(image_data, scope.GetContext()->Global(), scope.GetIsolate()); ToV8(image_data, scope.GetContext()->Global(), scope.GetIsolate());
...@@ -790,9 +790,9 @@ TEST(V8ScriptValueSerializerTest, RoundTripImageDataWithColorSpaceInfo) { ...@@ -790,9 +790,9 @@ TEST(V8ScriptValueSerializerTest, RoundTripImageDataWithColorSpaceInfo) {
ImageData* new_image_data = V8ImageData::ToImpl(result.As<v8::Object>()); ImageData* new_image_data = V8ImageData::ToImpl(result.As<v8::Object>());
EXPECT_NE(image_data, new_image_data); EXPECT_NE(image_data, new_image_data);
EXPECT_EQ(image_data->Size(), new_image_data->Size()); EXPECT_EQ(image_data->Size(), new_image_data->Size());
ImageDataSettings* new_color_settings = new_image_data->getSettings(); ImageDataSettings* new_image_data_settings = new_image_data->getSettings();
EXPECT_EQ("display-p3", new_color_settings->colorSpace()); EXPECT_EQ("display-p3", new_image_data_settings->colorSpace());
EXPECT_EQ("float32", new_color_settings->storageFormat()); EXPECT_EQ("float32", new_image_data_settings->storageFormat());
EXPECT_EQ(image_data->BufferBase()->ByteLength(), EXPECT_EQ(image_data->BufferBase()->ByteLength(),
new_image_data->BufferBase()->ByteLength()); new_image_data->BufferBase()->ByteLength());
EXPECT_EQ(200, static_cast<unsigned char*>( EXPECT_EQ(200, static_cast<unsigned char*>(
...@@ -845,9 +845,9 @@ TEST(V8ScriptValueSerializerTest, DecodeImageDataV18) { ...@@ -845,9 +845,9 @@ TEST(V8ScriptValueSerializerTest, DecodeImageDataV18) {
ASSERT_TRUE(V8ImageData::HasInstance(result, scope.GetIsolate())); ASSERT_TRUE(V8ImageData::HasInstance(result, scope.GetIsolate()));
ImageData* new_image_data = V8ImageData::ToImpl(result.As<v8::Object>()); ImageData* new_image_data = V8ImageData::ToImpl(result.As<v8::Object>());
EXPECT_EQ(IntSize(2, 1), new_image_data->Size()); EXPECT_EQ(IntSize(2, 1), new_image_data->Size());
ImageDataSettings* new_color_settings = new_image_data->getSettings(); ImageDataSettings* new_image_data_settings = new_image_data->getSettings();
EXPECT_EQ("display-p3", new_color_settings->colorSpace()); EXPECT_EQ("display-p3", new_image_data_settings->colorSpace());
EXPECT_EQ("float32", new_color_settings->storageFormat()); EXPECT_EQ("float32", new_image_data_settings->storageFormat());
EXPECT_EQ(32u, new_image_data->BufferBase()->ByteLength()); EXPECT_EQ(32u, new_image_data->BufferBase()->ByteLength());
EXPECT_EQ(200, static_cast<unsigned char*>( EXPECT_EQ(200, static_cast<unsigned char*>(
new_image_data->BufferBase()->Data())[0]); new_image_data->BufferBase()->Data())[0]);
......
...@@ -85,20 +85,6 @@ class CORE_EXPORT ImageData final : public ScriptWrappable, ...@@ -85,20 +85,6 @@ class CORE_EXPORT ImageData final : public ScriptWrappable,
unsigned width, unsigned width,
unsigned height, unsigned height,
ExceptionState&); ExceptionState&);
static ImageData* Create(NotShared<DOMUint16Array>,
unsigned width,
ExceptionState&);
static ImageData* Create(NotShared<DOMUint16Array>,
unsigned width,
unsigned height,
ExceptionState&);
static ImageData* Create(NotShared<DOMFloat32Array>,
unsigned width,
ExceptionState&);
static ImageData* Create(NotShared<DOMFloat32Array>,
unsigned width,
unsigned height,
ExceptionState&);
static ImageData* CreateImageData(unsigned width, static ImageData* CreateImageData(unsigned width,
unsigned height, unsigned height,
...@@ -110,7 +96,7 @@ class CORE_EXPORT ImageData final : public ScriptWrappable, ...@@ -110,7 +96,7 @@ class CORE_EXPORT ImageData final : public ScriptWrappable,
ImageDataSettings*, ImageDataSettings*,
ExceptionState&); ExceptionState&);
ImageDataSettings* getSettings() { return color_settings_; } ImageDataSettings* getSettings() { return settings_; }
static ImageData* CreateForTest(const IntSize&); static ImageData* CreateForTest(const IntSize&);
static ImageData* CreateForTest(const IntSize&, static ImageData* CreateForTest(const IntSize&,
...@@ -168,7 +154,7 @@ class CORE_EXPORT ImageData final : public ScriptWrappable, ...@@ -168,7 +154,7 @@ class CORE_EXPORT ImageData final : public ScriptWrappable,
private: private:
IntSize size_; IntSize size_;
Member<ImageDataSettings> color_settings_; Member<ImageDataSettings> settings_;
ImageDataArray data_; ImageDataArray data_;
NotShared<DOMUint8ClampedArray> data_u8_; NotShared<DOMUint8ClampedArray> data_u8_;
NotShared<DOMUint16Array> data_u16_; NotShared<DOMUint16Array> data_u16_;
...@@ -178,18 +164,6 @@ class CORE_EXPORT ImageData final : public ScriptWrappable, ...@@ -178,18 +164,6 @@ class CORE_EXPORT ImageData final : public ScriptWrappable,
const unsigned&, const unsigned&,
ImageDataStorageFormat, ImageDataStorageFormat,
ExceptionState* = nullptr); ExceptionState* = nullptr);
static NotShared<DOMUint8ClampedArray> AllocateAndValidateUint8ClampedArray(
const unsigned&,
ExceptionState* = nullptr);
static NotShared<DOMUint16Array> AllocateAndValidateUint16Array(
const unsigned&,
ExceptionState* = nullptr);
static NotShared<DOMFloat32Array> AllocateAndValidateFloat32Array(
const unsigned&,
ExceptionState* = nullptr);
}; };
} // namespace blink } // namespace blink
......
...@@ -101,10 +101,10 @@ TEST_F(ImageDataTest, TestCropRect) { ...@@ -101,10 +101,10 @@ TEST_F(ImageDataTest, TestCropRect) {
else else
data_array = data_f32; data_array = data_f32;
ImageDataSettings* color_settings = ImageDataSettings::Create(); ImageDataSettings* image_data_settings = ImageDataSettings::Create();
color_settings->setStorageFormat(image_data_storage_format_names[i]); image_data_settings->setStorageFormat(image_data_storage_format_names[i]);
image_data = ImageData::CreateForTest(IntSize(width, height), data_array, image_data = ImageData::CreateForTest(IntSize(width, height), data_array,
color_settings); image_data_settings);
for (int j = 0; j < num_test_cases; j++) { for (int j = 0; j < num_test_cases; j++) {
// Test the size of the cropped image data // Test the size of the cropped image data
IntRect src_rect(IntPoint(), image_data->Size()); IntRect src_rect(IntPoint(), image_data->Size());
......
...@@ -1569,8 +1569,8 @@ ImageData* BaseRenderingContext2D::createImageData( ...@@ -1569,8 +1569,8 @@ ImageData* BaseRenderingContext2D::createImageData(
ImageData* image_data, ImageData* image_data,
ExceptionState& exception_state) const { ExceptionState& exception_state) const {
ImageData* result = nullptr; ImageData* result = nullptr;
ImageDataSettings* color_settings = image_data->getSettings(); ImageDataSettings* image_data_settings = image_data->getSettings();
result = ImageData::Create(image_data->Size(), color_settings); result = ImageData::Create(image_data->Size(), image_data_settings);
if (!result) if (!result)
exception_state.ThrowRangeError("Out of memory at ImageData creation"); exception_state.ThrowRangeError("Out of memory at ImageData creation");
return result; return result;
...@@ -1589,10 +1589,10 @@ ImageData* BaseRenderingContext2D::createImageData( ...@@ -1589,10 +1589,10 @@ ImageData* BaseRenderingContext2D::createImageData(
IntSize size(abs(sw), abs(sh)); IntSize size(abs(sw), abs(sh));
ImageData* result = nullptr; ImageData* result = nullptr;
ImageDataSettings* color_settings = ImageDataSettings::Create(); ImageDataSettings* image_data_settings = ImageDataSettings::Create();
color_settings->setColorSpace(kSRGBCanvasColorSpaceName); image_data_settings->setColorSpace(kSRGBCanvasColorSpaceName);
color_settings->setStorageFormat(kUint8ClampedArrayStorageFormatName); image_data_settings->setStorageFormat(kUint8ClampedArrayStorageFormatName);
result = ImageData::Create(size, color_settings); result = ImageData::Create(size, image_data_settings);
if (!result) if (!result)
exception_state.ThrowRangeError("Out of memory at ImageData creation"); exception_state.ThrowRangeError("Out of memory at ImageData creation");
...@@ -1602,9 +1602,9 @@ ImageData* BaseRenderingContext2D::createImageData( ...@@ -1602,9 +1602,9 @@ ImageData* BaseRenderingContext2D::createImageData(
ImageData* BaseRenderingContext2D::createImageData( ImageData* BaseRenderingContext2D::createImageData(
unsigned width, unsigned width,
unsigned height, unsigned height,
ImageDataSettings* color_settings, ImageDataSettings* image_data_settings,
ExceptionState& exception_state) const { ExceptionState& exception_state) const {
return ImageData::CreateImageData(width, height, color_settings, return ImageData::CreateImageData(width, height, image_data_settings,
exception_state); exception_state);
} }
...@@ -1622,9 +1622,10 @@ ImageData* BaseRenderingContext2D::getImageData( ...@@ -1622,9 +1622,10 @@ ImageData* BaseRenderingContext2D::getImageData(
int sy, int sy,
int sw, int sw,
int sh, int sh,
ImageDataSettings* color_settings, ImageDataSettings* image_data_settings,
ExceptionState& exception_state) { ExceptionState& exception_state) {
return getImageDataInternal(sx, sy, sw, sh, color_settings, exception_state); return getImageDataInternal(sx, sy, sw, sh, image_data_settings,
exception_state);
} }
ImageData* BaseRenderingContext2D::getImageDataInternal( ImageData* BaseRenderingContext2D::getImageDataInternal(
...@@ -1632,7 +1633,7 @@ ImageData* BaseRenderingContext2D::getImageDataInternal( ...@@ -1632,7 +1633,7 @@ ImageData* BaseRenderingContext2D::getImageDataInternal(
int sy, int sy,
int sw, int sw,
int sh, int sh,
ImageDataSettings* color_settings, ImageDataSettings* image_data_settings,
ExceptionState& exception_state) { ExceptionState& exception_state) {
if (!base::CheckMul(sw, sh).IsValid<int>()) { if (!base::CheckMul(sw, sh).IsValid<int>()) {
exception_state.ThrowRangeError("Out of memory at ImageData creation"); exception_state.ThrowRangeError("Out of memory at ImageData creation");
...@@ -1678,17 +1679,18 @@ ImageData* BaseRenderingContext2D::getImageDataInternal( ...@@ -1678,17 +1679,18 @@ ImageData* BaseRenderingContext2D::getImageDataInternal(
const IntRect image_data_rect(sx, sy, sw, sh); const IntRect image_data_rect(sx, sy, sw, sh);
if (!color_settings) { if (!image_data_settings) {
color_settings = ImageDataSettings::Create(); image_data_settings = ImageDataSettings::Create();
color_settings->setColorSpace(kSRGBCanvasColorSpaceName); image_data_settings->setColorSpace(kSRGBCanvasColorSpaceName);
color_settings->setStorageFormat(kUint8ClampedArrayStorageFormatName); image_data_settings->setStorageFormat(kUint8ClampedArrayStorageFormatName);
} }
const ImageDataStorageFormat storage_format = const ImageDataStorageFormat storage_format =
ImageData::GetImageDataStorageFormat(color_settings->storageFormat()); ImageData::GetImageDataStorageFormat(
image_data_settings->storageFormat());
if (!CanCreateCanvas2dResourceProvider() || isContextLost()) { if (!CanCreateCanvas2dResourceProvider() || isContextLost()) {
ImageData* result = ImageData* result =
ImageData::Create(image_data_rect.Size(), color_settings); ImageData::Create(image_data_rect.Size(), image_data_settings);
if (!result) if (!result)
exception_state.ThrowRangeError("Out of memory at ImageData creation"); exception_state.ThrowRangeError("Out of memory at ImageData creation");
return result; return result;
...@@ -1733,7 +1735,7 @@ ImageData* BaseRenderingContext2D::getImageDataInternal( ...@@ -1733,7 +1735,7 @@ ImageData* BaseRenderingContext2D::getImageDataInternal(
NOTREACHED(); NOTREACHED();
} }
sk_sp<SkColorSpace> color_space = CanvasColorSpaceToSkColorSpace( sk_sp<SkColorSpace> color_space = CanvasColorSpaceToSkColorSpace(
CanvasColorSpaceFromName(color_settings->colorSpace())); CanvasColorSpaceFromName(image_data_settings->colorSpace()));
image_info = SkImageInfo::Make(sw, sh, color_type, kUnpremul_SkAlphaType, image_info = SkImageInfo::Make(sw, sh, color_type, kUnpremul_SkAlphaType,
color_space); color_space);
} }
...@@ -1812,7 +1814,7 @@ ImageData* BaseRenderingContext2D::getImageDataInternal( ...@@ -1812,7 +1814,7 @@ ImageData* BaseRenderingContext2D::getImageDataInternal(
NOTREACHED(); NOTREACHED();
} }
ImageData* image_data = ImageData::Create( ImageData* image_data = ImageData::Create(
image_data_rect.Size(), std::move(data_array), color_settings); image_data_rect.Size(), std::move(data_array), image_data_settings);
if (!IsPaint2D()) { if (!IsPaint2D()) {
int scaled_time = getScaledElapsedTime( int scaled_time = getScaledElapsedTime(
......
...@@ -695,7 +695,7 @@ ImageData* CanvasRenderingContext2D::getImageDataInternal( ...@@ -695,7 +695,7 @@ ImageData* CanvasRenderingContext2D::getImageDataInternal(
int sy, int sy,
int sw, int sw,
int sh, int sh,
ImageDataSettings* color_settings, ImageDataSettings* image_data_settings,
ExceptionState& exception_state) { ExceptionState& exception_state) {
const IdentifiableSurface surface = IdentifiableSurface::FromTypeAndToken( const IdentifiableSurface surface = IdentifiableSurface::FromTypeAndToken(
IdentifiableSurface::Type::kCanvasReadback, GetContextType()); IdentifiableSurface::Type::kCanvasReadback, GetContextType());
...@@ -705,7 +705,7 @@ ImageData* CanvasRenderingContext2D::getImageDataInternal( ...@@ -705,7 +705,7 @@ ImageData* CanvasRenderingContext2D::getImageDataInternal(
.Record(ukm_recorder_); .Record(ukm_recorder_);
} }
return BaseRenderingContext2D::getImageDataInternal( return BaseRenderingContext2D::getImageDataInternal(
sx, sy, sw, sh, color_settings, exception_state); sx, sy, sw, sh, image_data_settings, exception_state);
} }
void CanvasRenderingContext2D::FinalizeFrame() { void CanvasRenderingContext2D::FinalizeFrame() {
......
...@@ -943,7 +943,7 @@ void TestPutImageDataOnCanvasWithColorSpaceSettings( ...@@ -943,7 +943,7 @@ void TestPutImageDataOnCanvasWithColorSpaceSettings(
EXPECT_EQ(data_length, data_f32->length()); EXPECT_EQ(data_length, data_f32->length());
ImageData* image_data = nullptr; ImageData* image_data = nullptr;
ImageDataSettings* color_settings = ImageDataSettings::Create(); ImageDataSettings* image_data_settings = ImageDataSettings::Create();
int num_pixels = data_length / 4; int num_pixels = data_length / 4;
// At most four bytes are needed for Float32 output per color component. // At most four bytes are needed for Float32 output per color component.
...@@ -953,7 +953,7 @@ void TestPutImageDataOnCanvasWithColorSpaceSettings( ...@@ -953,7 +953,7 @@ void TestPutImageDataOnCanvasWithColorSpaceSettings(
// Loop through different possible combinations of image data color space and // Loop through different possible combinations of image data color space and
// storage formats and create the respective test image data objects. // storage formats and create the respective test image data objects.
for (unsigned i = 0; i < num_image_data_color_spaces; i++) { for (unsigned i = 0; i < num_image_data_color_spaces; i++) {
color_settings->setColorSpace( image_data_settings->setColorSpace(
ImageData::CanvasColorSpaceName(image_data_color_spaces[i])); ImageData::CanvasColorSpaceName(image_data_color_spaces[i]));
for (unsigned j = 0; j < num_image_data_storage_formats; j++) { for (unsigned j = 0; j < num_image_data_storage_formats; j++) {
...@@ -961,22 +961,23 @@ void TestPutImageDataOnCanvasWithColorSpaceSettings( ...@@ -961,22 +961,23 @@ void TestPutImageDataOnCanvasWithColorSpaceSettings(
switch (image_data_storage_formats[j]) { switch (image_data_storage_formats[j]) {
case kUint8ClampedArrayStorageFormat: case kUint8ClampedArrayStorageFormat:
data_array = data_u8; data_array = data_u8;
color_settings->setStorageFormat(kUint8ClampedArrayStorageFormatName); image_data_settings->setStorageFormat(
kUint8ClampedArrayStorageFormatName);
break; break;
case kUint16ArrayStorageFormat: case kUint16ArrayStorageFormat:
data_array = data_u16; data_array = data_u16;
color_settings->setStorageFormat(kUint16ArrayStorageFormatName); image_data_settings->setStorageFormat(kUint16ArrayStorageFormatName);
break; break;
case kFloat32ArrayStorageFormat: case kFloat32ArrayStorageFormat:
data_array = data_f32; data_array = data_f32;
color_settings->setStorageFormat(kFloat32ArrayStorageFormatName); image_data_settings->setStorageFormat(kFloat32ArrayStorageFormatName);
break; break;
default: default:
NOTREACHED(); NOTREACHED();
} }
image_data = image_data = ImageData::CreateForTest(IntSize(2, 2), data_array,
ImageData::CreateForTest(IntSize(2, 2), data_array, color_settings); image_data_settings);
unsigned k = static_cast<unsigned>(canvas_colorspace_setting); unsigned k = static_cast<unsigned>(canvas_colorspace_setting);
ImageDataSettings* canvas_color_setting = ImageDataSettings::Create(); ImageDataSettings* canvas_color_setting = ImageDataSettings::Create();
canvas_color_setting->setColorSpace( canvas_color_setting->setColorSpace(
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment