Skip to content

SingleColumnLayout

Source: SingleColumnLayout.h

SingleColumnLayout

class SingleColumnLayout
src/light/layouts/SingleColumnLayout.h:17

Inherits: LayoutBase

Layout of one vertical LED column (1D).

Author: MoonLight, https://github.com/ewowi/MoonLight/blob/main/src/MoonLight/Nodes/Layouts/L_MoonLight.h

Public Attributes

uint8_t start_y = 0 : Geometry controls mirror MoonLight's defaults and ranges 1:1.

uint16_t height = 30 : How many lights the column holds.

uint16_t xposition = 0 : Which column it occupies.

bool reversed_order = false : Whether index 0 is the top.

Public Methods

virtual inline const char * tags() const override : The catalog tags this layout carries.

virtual inline Dim dimensions() const override : How many axes this layout places lights on.

virtual inline void defineControls() override : The controls a user sets on the card.

virtual inline nrOfLightsType lightCount() const override : How many lights the current settings place.

virtual inline void placeLights(const CoordSink & sink) const override : Emit every light's coordinate, in wiring order.

More info

A vertical line of lights at a fixed x, running along y. The geometry is reproduced exactly: the source emits one light per y across the height, forward or reversed.

MoonLight's pin and wiring controls are dropped, since a MoonLight layout emits coordinates only and the driver owns pins.