#include #include /** * @brief bitmap rich type * transparency is in the layout * @warning Monochrome only ! */ struct bitmap_rich { uint32_t size_px_x; uint32_t size_px_y; uint32_t size_o_y; uint32_t * color; uint32_t * layout; }; typedef struct bitmap_rich bitmap_rich; /** * @brief get the color of pixel from rich bitmap * * @param[in] bmp The bitmap * @param[in] x The bitmap x coordinate (in pixels) * @param[in] y The bitmap y coordinate (in pixels) * * @return the color coded in a unsigned char : * if (color >> 1) * switch (color%2) * { * case 0: * // WHITE * break; * case 1: * // BLACK * } * else */ inline uint8_t bitmap_get_pixel_r(const bitmap_rich * bmp, uint32_t x, uint32_t y); /** * @brief display a specific rich bitmap pixel on the screen * * @param[in] bmp The bitmap * @param[in] bmp_x The bitmap x coordinate (in pixels) * @param[in] bmp_y The bitmap y coordinate (in pixels) * @param[in] x screen : x coordinate * @param[in] y screen : y coordinate */ void bitmap_display_pixel_r(const bitmap_rich * bmp, uint32_t bmp_x, uint32_t bmp_y, uint32_t x, uint32_t y);