clj-artnet.impl.shell.effects

Translates pure Art-Net protocol effects into actionable IO descriptors.

Decouples the logic-layer protocol machine from the shell-layer IO system via open multimethod dispatch.

translate-effect

multimethod

Translates a single protocol effect map to an IO-layer action map.

Dispatch key: (:effect effect) Default: returns nil (no action)

translate-effects

(translate-effects callbacks node effects)

Converts a sequence of effects to IO-layer actions.

  • Invokes :programming, :ipprog, :address callbacks inline
  • Returns other callbacks and IO actions as a vector