 e3c7201a20
			
		
	
	
		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);
 |