Skip to content

MoonLiveEffect

Source: MoonLiveEffect.h

MoonLiveEffect

class MoonLiveEffect
src/light/moonlive/MoonLiveEffect.h:24

Inherits: 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.