Skip to main content

Module fixture

Module fixture 

Source
Expand description

§Fixture Management Module

This module provides the core structures and logic for managing lighting fixtures, their DMX-Channels, colors, properties, and global registries.

§Key Components

  • Fixture: Represents an active lighting fixture instance assigned to a universe.
  • FixtureType: Template defining the channel layout and properties of a fixture type.
  • calculate_dmx_values: Generates the final DMX-Channel buffer across all universes.

Structs§

ChannelParameter
Represents a DMX-Channel parameter, managing the base channel and its fine-degree channels. It uses an ArrayVec to store the coarse channel alongside optional fine channels up to MAX_FINE_DEGREES.
Fixture
A single fixture instance with its current property values and DMX-Channels.
FixtureType
A template defining the DMX-Channel layout for a type of lighting fixture.

Enums§

ChannelError
Errors that can occur when reserving or accessing DMX-Channels.
ColorPropertyType
Identifies a specific channel or property of a [Color].
FixtureError
Errors that can occur when managing fixtures and fixture types.
PropertyType
A fixture property, either a simple single-channel attribute or a color.

Constants§

MAX_CHANNEL
The maximum number of DMX-Channels per universe (DMX512 standard).
MAX_FINE_DEGREES
The maximum number of fine-tuning degrees (resolution layers) supported per channel.

Functions§

calculate_dmx_values
Collects values from all registered fixtures via their channel and color properties.

Type Aliases§

ChannelInUniverse
A composite identifier representing a specific channel within a designated universe.
ChannelIndex
The index type used to address individual DMX-Channels within a universe.
ChannelValue
The fundamental numeric data type used to represent raw DMX-Channel values internally.
FloatChannelValue
A floating-point type matching the scale of ChannelValue, used for mathematical and color transformations.
UniverseIndex
The index type used to uniquely identify and address distinct DMX universes.