diff options
Diffstat (limited to 'src/gdisp/gdisp_image.h')
-rw-r--r-- | src/gdisp/gdisp_image.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/gdisp/gdisp_image.h b/src/gdisp/gdisp_image.h index 2b6fdf19..76773887 100644 --- a/src/gdisp/gdisp_image.h +++ b/src/gdisp/gdisp_image.h @@ -247,6 +247,42 @@ extern "C" { * frame/page. */ delaytime_t gdispImageNext(gdispImage *img); + + /** + * @brief Get the number of entries in the color palette. + * @return The number of entries in the color palette or 0 if the image doesn't use a color palette. + * + * @param[in] img The image structure + * + * @pre gdispImageOpen() must have returned successfully. + */ + uint16_t gdispImageGetPaletteSize(gdispImage *img); + + /** + * @brief Get an entry in the color palette. + * @return The color value at a given position in the color palette. + * + * @param[in] img The image structure + * @param[in] index The index of the color palette entry + * + * @pre gdispImageOpen() must have returned successfully. + * + * @note This function will return 0 if the index is out of bounds or if the image doesn't use a color palette. + */ + color_t gdispImageGetPalette(gdispImage *img, uint16_t index); + + /** + * @brief Modify an entry in the color palette. + * @return @p TRUE on success, @p FALSE otherwise. + * + * @param[in] img The image structure + * @param[in] index The index of the color palette entry + * @param[in] newColor The new color value of the specified entry + * + * @pre gdispImageOpen() must have returned successfully. + * @note This function will return @p FALSE if the index is out of bounds or if the image doesn't use a color palette. + */ + bool_t gdispImageAdjustPalette(gdispImage *img, uint16_t index, color_t newColor); #ifdef __cplusplus } |