/* * 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 sktext_gpu_StrikeCache_DEFINED #define sktext_gpu_StrikeCache_DEFINED #include "include/core/SkRefCnt.h" #include "src/base/SkArenaAlloc.h" #include "src/core/SkDescriptor.h" #include "src/core/SkStrikeSpec.h" #include "src/core/SkTHash.h" #include <cstdint> struct SkPackedGlyphID; namespace sktext::gpu { class Glyph; // The TextStrike manages an SkArenaAlloc for Glyphs. The SkStrike is what actually creates // the mask. The TextStrike may outlive the generating SkStrike. However, it retains a copy // of it's SkDescriptor as a key to access (or regenerate) the SkStrike. TextStrikes are // created by and owned by a StrikeCache. class TextStrike : public SkNVRefCnt<TextStrike> { … }; // StrikeCache manages strikes which are indexed by a SkStrike. These strikes can then be // used to generate individual Glyph Masks. class StrikeCache { … }; } // namespace sktext::gpu #endif // sktext_gpu_StrikeCache_DEFINED