~ruther/qmk_firmware

94519e387a85e3b4ab72bd7d837ff590cc690eb9 — Fred Sundvik 9 years ago fa8feb2
Add callback function for emulator drawing
2 files changed, 10 insertions(+), 1 deletions(-)

M visualizer.c
M visualizer.h
M visualizer.c => visualizer.c +4 -0
@@ 413,6 413,10 @@ static DECLARE_THREAD_FUNCTION(visualizerThread, arg) {
#ifdef LED_ENABLE
        gdispGFlush(LED_DISPLAY);
#endif

#if EMULATOR
        draw_emulator();
#endif
        // The animation can enable the visualizer
        // And we might need to update the state when that happens
        // so don't sleep

M visualizer.h => visualizer.h +6 -1
@@ 50,6 50,11 @@ void visualizer_resume(void);
GDisplay* get_lcd_display(void);
GDisplay* get_led_display(void);

// For emulator builds, this function need to be implemented
#if EMULATOR
void draw_emulator(void);
#endif

// If you need support for more than 16 keyframes per animation, you can change this
#define MAX_VISUALIZER_KEY_FRAMES 16



@@ 134,7 139,7 @@ bool keyframe_enable_lcd_and_backlight(keyframe_animation_t* animation, visualiz
// directly from the initalize_user_visualizer function (the animation can be null)
bool enable_visualization(keyframe_animation_t* animation, visualizer_state_t* state);

// These two functions have to be implemented by the user
// These functions have to be implemented by the user
void initialize_user_visualizer(visualizer_state_t* state);
void update_user_visualizer_state(visualizer_state_t* state);
void user_visualizer_suspend(visualizer_state_t* state);