mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2026-05-12 19:58:36 -07:00
66 lines
1.2 KiB
C
66 lines
1.2 KiB
C
#pragma once
|
|
|
|
#include <stdint.h>
|
|
|
|
struct FontCharInfo_s {
|
|
/**
|
|
* @brief Width of the character
|
|
*/
|
|
uint8_t width;
|
|
|
|
/**
|
|
* @brief Offset of the character's bitmap, in bytes, into the the data array
|
|
*/
|
|
uint16_t offset;
|
|
} __attribute__((packed));
|
|
|
|
typedef struct FontCharInfo_s FontCharInfo;
|
|
|
|
typedef struct {
|
|
/**
|
|
* @brief Font name
|
|
*/
|
|
char* name;
|
|
|
|
/**
|
|
* @brief Font characters height
|
|
*/
|
|
uint8_t height;
|
|
|
|
/**
|
|
* @brief The first character available in the font
|
|
*/
|
|
uint8_t start_char;
|
|
|
|
/**
|
|
* @brief The last character available in the font
|
|
*/
|
|
uint8_t end_char;
|
|
|
|
/**
|
|
* @brief Space character width
|
|
*/
|
|
uint8_t space_width;
|
|
|
|
/**
|
|
* @brief Pointer to array of char information
|
|
*/
|
|
FontCharInfo* char_info;
|
|
|
|
/**
|
|
* @brief Pointer to generated array of character visual representation
|
|
*/
|
|
uint8_t* data;
|
|
} FontInfo;
|
|
|
|
/**
|
|
* @brief Allocates a new instance of \c FontInfo
|
|
* @return pointer to allocated instance
|
|
*/
|
|
FontInfo* totp_font_info_alloc();
|
|
|
|
/**
|
|
* @brief Disposes all the resources allocated by the given \c FontInfo instance
|
|
* @param font_info instance to dispose
|
|
*/
|
|
void totp_font_info_free(FontInfo* font_info); |