63 const
std::
string& family_override =
"");
67 const
std::
string& family_override =
"");
88 std::atomic<
std::uint64_t> generation_{0};
89 std::atomic<std::size_t> memory_budget_{0};
92 std::unique_ptr<Impl> impl_;
Definition font_scope.hpp:40
void prune_to_budget()
Explicit prune-to-budget trigger.
void set_memory_budget(std::size_t bytes)
Memory budget (in bytes) for caches associated with this scope: FontResolver typeface entries,...
FontScope(FontScopeId id)
FontScopeId id() const noexcept
Definition font_scope.hpp:48
void bump_generation()
Forces a generation bump without a registration.
std::uint64_t generation() const noexcept
Monotonic counter; incremented by every successful registration in this scope.
bool register_font_file(const std::string &path, const std::string &family_override="")
File variant.
bool register_font(const std::uint8_t *data, std::size_t size, const std::string &family_override="")
Register a font from raw TTF/OTF bytes into THIS scope.
FontScope & operator=(const FontScope &)=delete
std::size_t memory_budget() const noexcept
bool is_registered(const std::string &family) const
Family-name lookup limited to this scope.
FontScope(const FontScope &)=delete
Definition affine_transform.hpp:24
std::uint64_t merged_generation_for(FontScopeId requesting_scope)
Returns a generation value that is the combined monotonic counter of every scope a resolver looking u...
void release_view_scope(std::uint64_t view_id)
Tear down a view scope.
FontScope & view_scope(std::uint64_t view_id)
Look up (or lazily create) the view scope for view_id.
@ path
Definition scene_node.hpp:93
FontScope & plugin_scope(std::uint64_t plugin_id)
Look up (or lazily create) the plugin scope for plugin_id.
FontScope & global_scope()
Process-wide global scope.
Opaque identifier for a FontScope (defined in font_scope.hpp).
Definition font_options.hpp:168