Remove SkYUVASizeInfo, make SkYUVAIndex a private part of SkYUVAInfo
Bug: skia:10632
Change-Id: If4dd7779b0856f6d0b441381bf7f2f51527cdb9d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/352497
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
diff --git a/tools/gpu/YUVUtils.cpp b/tools/gpu/YUVUtils.cpp
index 9a9ff57..dbbbd2b 100644
--- a/tools/gpu/YUVUtils.cpp
+++ b/tools/gpu/YUVUtils.cpp
@@ -12,6 +12,7 @@
#include "include/gpu/GrRecordingContext.h"
#include "include/gpu/GrYUVABackendTextures.h"
#include "src/codec/SkCodecImageGenerator.h"
+#include "src/core/SkYUVAInfoLocation.h"
#include "src/core/SkYUVMath.h"
#include "src/gpu/GrDirectContextPriv.h"
#include "src/gpu/GrRecordingContextPriv.h"
@@ -65,8 +66,8 @@
float mtx[20];
SkColorMatrix_YUV2RGB(fPixmaps.yuvaInfo().yuvColorSpace(), mtx);
- SkYUVAIndex yuvaIndices[SkYUVAIndex::kIndexCount];
- SkAssertResult(fPixmaps.toYUVAIndices(yuvaIndices));
+ SkYUVAInfo::YUVALocations yuvaLocations = fPixmaps.toYUVALocations();
+ SkASSERT(SkYUVAInfo::YUVALocation::AreValidLocations(yuvaLocations));
for (int y = 0; y < info.height(); ++y) {
for (int x = 0; x < info.width(); ++x) {
@@ -75,17 +76,17 @@
uint8_t yuva[4] = {0, 0, 0, 255};
- for (auto c : {SkYUVAIndex::kY_Index,
- SkYUVAIndex::kU_Index,
- SkYUVAIndex::kV_Index}) {
- const auto& pmap = fPixmaps.plane(yuvaIndices[c].fIndex);
- yuva[c] = look_up(x1, y1, pmap, yuvaIndices[c].fChannel);
+ for (auto c : {SkYUVAInfo::YUVAChannels::kY,
+ SkYUVAInfo::YUVAChannels::kU,
+ SkYUVAInfo::YUVAChannels::kV}) {
+ const auto& pmap = fPixmaps.plane(yuvaLocations[c].fPlane);
+ yuva[c] = look_up(x1, y1, pmap, yuvaLocations[c].fChannel);
}
- if (yuvaIndices[SkYUVAIndex::kA_Index].fIndex >= 0) {
+ if (yuvaLocations[SkYUVAInfo::YUVAChannels::kA].fPlane >= 0) {
const auto& pmap =
- fPixmaps.plane(yuvaIndices[SkYUVAIndex::kA_Index].fIndex);
- yuva[3] =
- look_up(x1, y1, pmap, yuvaIndices[SkYUVAIndex::kA_Index].fChannel);
+ fPixmaps.plane(yuvaLocations[SkYUVAInfo::YUVAChannels::kA].fPlane);
+ yuva[3] = look_up(
+ x1, y1, pmap, yuvaLocations[SkYUVAInfo::YUVAChannels::kA].fChannel);
}
// Making premul here.