aboutsummaryrefslogtreecommitdiff
path: root/tests/SerialProcsTest.cpp
diff options
context:
space:
mode:
authorKevin Lubick <kjlubick@google.com>2023-03-20 10:50:43 +0000
committerKevin Lubick <kjlubick@google.com>2023-03-20 10:51:08 +0000
commit5b2cbd717b555792602461e9d6f47b663dfd18c5 (patch)
tree82e9cb6eec9b8ee19aa4f92b16eec974144c78a7 /tests/SerialProcsTest.cpp
parentf7e520c53ab022d81f91aae5a641bcb600c77167 (diff)
downloadskia-5b2cbd717b555792602461e9d6f47b663dfd18c5.tar.gz
Revert "Introduce SkImages namespace; remove Ganesh GPU code from SkImage_Raster"
This reverts commit d21c3f85a2425d7d31ae1a258b920fccd53aed1c. Reason for revert: Broke Chromium, Android, and G3 Original change's description: > Introduce SkImages namespace; remove Ganesh GPU code from SkImage_Raster > > This is the first of many CLs that aims to split the GPU and CPU > coupling to SkImage. > > Step 1 was to move all SkImage::Make static functions (factories) > to their own namespace (SkImages), which allows us to define these > in different header files, which can be optionally exposed via the public API. > > * SkImage::MakeBackendTextureFromSkImage -> SkImages::GetBackendTextureFromImage > * SkImage::MakeCrossContextFromPixmap -> SkImages::CrossContextTextureFromPixmap > * SkImage::MakeFromAdoptedTexture -> SkImages::AdoptTextureFrom > * SkImage::MakeFromBitmap -> SkImages::RasterFromBitmap > * SkImage::MakeFromCompressedTexture -> SkImages::TextureFromCompressedTexture > * SkImage::MakeFromEncoded -> SkImages::DeferredFromEncodedData > * SkImage::MakeFromGenerator -> SkImages::DeferredFromGenerator > * SkImage::MakeFromPicture -> SkImages::DeferredFromPicture > * SkImage::MakeFromRaster -> SkImages::RasterFromPixmap > * SkImage::MakeFromTexture -> SkImages::BorrowTextureFrom > * SkImage::MakeFromYUVAPixmaps -> SkImages::TextureFromYUVAPixmaps > * SkImage::MakeFromYUVATextures -> SkImages::TextureFromYUVATextures > * SkImage::MakePromiseTexture -> SkImages::PromiseTextureFrom > * SkImage::MakePromiseYUVATexture -> SkImages::PromiseTextureFromYUVA > * SkImage::MakeRasterCopy -> SkImages::RasterFromPixmapCopy > * SkImage::MakeRasterData -> SkImages::RasterFromData > * SkImage::MakeRasterFromCompressed -> SkImages::RasterFromCompressedTextureData > * SkImage::MakeTextureFromCompressed -> SkImages::TextureFromCompressedTextureData > > We chose SkImages as the name because it aligns with existing > "effective namespaces" like `SkShaders` and `SkColorFilters`. > > Step 2 was to move the logic requiring the Ganesh GPU backend out of > SkImage classes (starting with SkImage_Raster as an easy starting point) > and into files that live under src/gpu/ganesh. The graphite code > will come later. This involved making SkImage_Raster.h so ganesh > can see that subclass and exposing a few fields via getters/setters. > > I don't think these steps can be easily split into two CLs (sorry). > I've left backwards compatible code so we can fix up clients > incrementally (and lock it in via the > SK_DISABLE_LEGACY_IMAGE_FACTORIES define). > > I ran `git clang-format origin/main` after the renaming, and spot > checked the formatting; seemed fine to me. > > Suggested review order: > - SkImage.h, SkImageGanesh.h, SkImageAndroid.h. Note that SkImage.h > has all the legacy factories guarded by an #ifdef at the bottom > for easier deletion in the future. > - src/image/SkImage_*Factories.cpp to see where the implementation > of these factories have been moved. We want them in separate files > to make the modular builds easier in the future. > - SkImage_Base.cpp, SkImage_Raster.h where things were moved out > of SkImage.cpp and SkImage_Raster.cpp for better organization. > - GrImageUtils.cpp/.h to see where the other methods of SkRaster > that used the GPU code were moved. I hope to follow suit with > other Images but for now just keep their onAsView etc methods > in place. > - Many other changes were mechanical to use the new namespace > and methods. > > Change-Id: Ia345c2f0f1b1a2f65178a857bdd0d6118fee7e58 > Bug: skia:13983 > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/648297 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Kevin Lubick <kjlubick@google.com> Bug: skia:13983 Change-Id: If4d0d5d6286d45e85c4ef2144b3b8d5312889a29 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/c/skia/+/658556 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Owners-Override: Kevin Lubick <kjlubick@google.com>
Diffstat (limited to 'tests/SerialProcsTest.cpp')
-rw-r--r--tests/SerialProcsTest.cpp24
1 files changed, 13 insertions, 11 deletions
diff --git a/tests/SerialProcsTest.cpp b/tests/SerialProcsTest.cpp
index 68364164e7..c2edef2b9e 100644
--- a/tests/SerialProcsTest.cpp
+++ b/tests/SerialProcsTest.cpp
@@ -53,17 +53,19 @@ DEF_TEST(serial_procs_image, reporter) {
[](SkImage* img, void* ctx) { return SkData::MakeWithCString(((State*)ctx)->fStr); },
};
const SkDeserialImageProc dprocs[] = {
- [](const void* data, size_t length, void*) -> sk_sp<SkImage> { return nullptr; },
- [](const void* data, size_t length, void*) {
- return SkImages::DeferredFromEncodedData(SkData::MakeWithCopy(data, length));
- },
- [](const void* data, size_t length, void* ctx) -> sk_sp<SkImage> {
- State* state = (State*)ctx;
- if (length != strlen(state->fStr) + 1 || 0 != memcmp(data, state->fStr, length)) {
- return nullptr;
- }
- return sk_ref_sp(state->fImg);
- },
+ [](const void* data, size_t length, void*) -> sk_sp<SkImage> {
+ return nullptr;
+ },
+ [](const void* data, size_t length, void*) {
+ return SkImage::MakeFromEncoded(SkData::MakeWithCopy(data, length));
+ },
+ [](const void* data, size_t length, void* ctx) -> sk_sp<SkImage> {
+ State* state = (State*)ctx;
+ if (length != strlen(state->fStr)+1 || 0 != memcmp(data, state->fStr, length)) {
+ return nullptr;
+ }
+ return sk_ref_sp(state->fImg);
+ },
};
sk_sp<SkPicture> pic;