e3c7201a20
* Furi: rename and move core * Furi: drop CMSIS_OS header and unused api, partially refactor and cleanup the rest * Furi: CMSIS_OS drop and refactoring. * Furi: refactoring, remove cmsis legacy * Furi: fix incorrect assert on queue deallocation, cleanup timer * Furi: improve delay api, get rid of floats * hal: dropped furi_hal_crc * Furi: move DWT based delay to cortex HAL * Furi: update core documentation Co-authored-by: hedger <hedger@nanode.su>
40 lines
805 B
C
40 lines
805 B
C
/**
|
|
* @file icon_animation_i.h
|
|
* GUI: internal IconAnimation API
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include "icon_animation.h"
|
|
|
|
#include <furi.h>
|
|
|
|
struct IconAnimation {
|
|
const Icon* icon;
|
|
uint8_t frame;
|
|
bool animating;
|
|
FuriTimer* timer;
|
|
IconAnimationCallback callback;
|
|
void* callback_context;
|
|
};
|
|
|
|
/** Get pointer to current frame data
|
|
*
|
|
* @param instance IconAnimation instance
|
|
*
|
|
* @return pointer to current frame XBM bitmap data
|
|
*/
|
|
const uint8_t* icon_animation_get_data(IconAnimation* instance);
|
|
|
|
/** Advance to next frame
|
|
*
|
|
* @param instance IconAnimation instance
|
|
*/
|
|
void icon_animation_next_frame(IconAnimation* instance);
|
|
|
|
/** IconAnimation timer callback
|
|
*
|
|
* @param context pointer to IconAnimation
|
|
*/
|
|
void icon_animation_timer_callback(void* context);
|