8#ifndef SkPixelRef_DEFINED
9#define SkPixelRef_DEFINED
34 int width()
const {
return fWidth; }
35 int height()
const {
return fHeight; }
36 void*
pixels()
const {
return fPixels; }
43 uint32_t getGenerationID()
const;
50 void notifyPixelsChanged();
77 fAddedToCache.store(
true);
83 void android_only_reset(
int width,
int height,
size_t rowBytes);
92 bool genIDIsUnique()
const {
return SkToBool(fTaggedGenID.load() & 1); }
93 mutable std::atomic<uint32_t> fTaggedGenID;
98 std::atomic<bool> fAddedToCache;
102 kTemporarilyImmutable,
106 void needsNewGenID();
107 void callGenIDChangeListeners();
109 void setTemporarilyImmutable();
110 void restoreMutability();
113 void setImmutableWithID(uint32_t genID);
void SkBitmapCache_setImmutableWithID(SkPixelRef *pr, uint32_t id)
static constexpr bool SkToBool(const T &x)
void notifyAddedToCache()
SkISize dimensions() const
virtual SkDiscardableMemory * diagnostic_only_getDiscardable() const