MoonLiveEffect
Source:
MoonLiveEffect.h
MoonLiveEffect¶
src/light/moonlive/MoonLiveEffect.h:24Inherits:
EffectBase
Effect whose render is a live-authored MoonLive script.
Public Methods¶
virtual inline const char * tags() const override
: Both answered by the SCRIPT when it says, and by the binding when it stays silent.
virtual inline Dim dimensions() const override
: The layer EXTRUDES on this (Layer::tick), so a script declaring 1 paints one column and the framework fills the rest, exactly as a compiled D1 effect does.
virtual inline void defineControls() override
: defineControls MUST be idempotent and pure: only controls_.clear() + controls_.addX().
virtual inline bool affectsPrepare(const char *) const override
: Whether a value change to one of this module's controls triggers the pipeline-wide [prepare()] sweep.
virtual inline void prepare() override
: Tier-3 of the control-change split (see onControlChanged above): the module (re)allocates / recomputes whatever derived state it owns — an effect's heap, a Layer's mapping LUT, the Drivers output buffer.
virtual inline void tick() override
virtual inline void release() override
inline void setScript(const char * name)
: Replace the script.