FastLED 3.10.8
Loading...
Searching...
No Matches
chasing_spirals.h
Go to the documentation of this file.
1#pragma once
2
3// Chasing_Spirals visualizer classes — three precision/performance tiers.
4// Included from animartrix_detail.h — do NOT include directly.
5
8#include "fl/stl/noexcept.h"
9
10namespace fl {
11
12// Original floating-point implementation (~210 µs/frame on 32×32).
13// No cached state — all computation is per-frame.
15public:
16 void draw(Context &ctx) FL_NO_EXCEPT override;
17};
18
19// Fixed-point Q31 scalar implementation (~78 µs/frame, 2.7× speedup).
20// Owns the SoA geometry cache; rebuilt only when grid dimensions change.
22public:
23 void draw(Context &ctx) FL_NO_EXCEPT override;
24private:
25 ChasingSpiralState mState;
26};
27
28// Fixed-point Q31 SIMD implementation (4-wide SSE2 vectorisation).
29// Owns the SoA geometry cache; rebuilt only when grid dimensions change.
31public:
32 void draw(Context &ctx) FL_NO_EXCEPT override;
33private:
34 ChasingSpiralState mState;
35};
36
37} // namespace fl
void draw(Context &ctx) FL_NO_EXCEPT override
void draw(Context &ctx) FL_NO_EXCEPT override
ChasingSpiralState mState
void draw(Context &ctx) FL_NO_EXCEPT override
u8 u8 fract8 blur_amount FL_NO_EXCEPT
Definition blur.h:186
Base definition for an LED controller.
Definition crgb.hpp:179