/* * Copyright 2015 Google Inc. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file.
*/ #ifndef SkMaskSwizzler_DEFINED #define SkMaskSwizzler_DEFINED
/* * * Used to swizzle images whose pixel components are extracted by bit masks * Currently only used by bmp *
*/ class SkMaskSwizzler : public SkSampler { public:
int fillWidth() const override { return fDstWidth;
}
/** * Returns the byte offset at which we write to destination memory, taking * scaling, subsetting, and partial frames into account. * A similar function exists on SkSwizzler.
*/ int swizzleWidth() const { return fDstWidth; }
private:
/* * Row procedure used for swizzle
*/ typedefvoid (*RowProc)(void* dstRow, const uint8_t* srcRow, int width,
SkMasks* masks, uint32_t startX, uint32_t sampleX);
SkMaskSwizzler(SkMasks* masks, RowProc proc, int subsetWidth, int srcOffset);
// FIXME: Can this class share more with SkSwizzler? These variables are all the same. constint fSubsetWidth; // Width of the subset of source before any sampling. int fDstWidth; // Width of dst, which may differ with sampling. int fSampleX; int fSrcOffset; int fX0;
};
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.