qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

solid_reactive_anim.h (739B)


      1 #ifdef RGB_MATRIX_KEYREACTIVE_ENABLED
      2 #    ifdef ENABLE_RGB_MATRIX_SOLID_REACTIVE
      3 RGB_MATRIX_EFFECT(SOLID_REACTIVE)
      4 #        ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS
      5 
      6 static hsv_t SOLID_REACTIVE_math(hsv_t hsv, uint16_t offset) {
      7     if (offset > 255) offset = 255;
      8 #            ifdef RGB_MATRIX_SOLID_REACTIVE_GRADIENT_MODE
      9     hsv.h = scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed, 8) >> 4);
     10 #            endif
     11     hsv.h += scale8(255 - offset, 64);
     12     return hsv;
     13 }
     14 
     15 bool SOLID_REACTIVE(effect_params_t* params) {
     16     return effect_runner_reactive(params, &SOLID_REACTIVE_math);
     17 }
     18 
     19 #        endif // RGB_MATRIX_CUSTOM_EFFECT_IMPLS
     20 #    endif     // ENABLE_RGB_MATRIX_SOLID_REACTIVE
     21 #endif         // RGB_MATRIX_KEYREACTIVE_ENABLED