src/internal.h
1#ifndef INTERNAL_H
2#define INTERNAL_H
3
4#include "alba.h"
5
6#include "hashmap.h"
7
8typedef struct
9{
10 struct hashmap* glyphs;
11 int dirty;
12 DynArray glyph_sizes; // in w, h order
13 uint32_t width;
14 uint32_t height;
15 uint8_t* image;
16} Atlas;
17
18Atlas atlas_new(uint32_t capacity);
19void atlas_reserve(Atlas* atlas, uint32_t capacity);
20void atlas_append(Atlas* atlas, FT_Face face, uint32_t character);
21void atlas_generate_image(Atlas* atlas);
22void atlas_release(const Atlas* atlas);
23
24#endif // INTERNAL_H