11 apamatrix.addLayer(&apaBackgroundLayer);
13 apamatrix.setRefreshRate(240);
25 rgb24 rgbColorL = rgb24((uint16_t)camSidePixelsL->
GetColor(x)->
R, (uint16_t)camSidePixelsL->
GetColor(x)->
G, (uint16_t)camSidePixelsL->
GetColor(x)->
B);
26 rgb24 rgbColorR = rgb24((uint16_t)camSidePixelsR->
GetColor(x)->
R, (uint16_t)camSidePixelsR->
GetColor(x)->
G, (uint16_t)camSidePixelsR->
GetColor(x)->
B);
28 apaBackgroundLayer.drawPixel(x, 0, rgbColorL);
29 apaBackgroundLayer.drawPixel(x + 88, 0, rgbColorR);
32 apaBackgroundLayer.swapBuffers(
false);
SMARTMATRIX_ALLOCATE_BACKGROUND_LAYER(apaBackgroundLayer, kApaMatrixWidth, kApaMatrixHeight, COLOR_DEPTH, kApaBackgroundLayerOptions)
SMARTMATRIX_APA_ALLOCATE_BUFFERS(apamatrix, kApaMatrixWidth, kApaMatrixHeight, kApaRefreshDepth, kApaDmaBufferRows, kApaPanelType, kApaMatrixOptions)
Declares the APA102Controller class for managing APA102 LED strips.
const uint8_t kApaBackgroundLayerOptions
Background layer options for APA matrices.
const uint16_t kApaMatrixWidth
Width of the APA matrix or strip.
#define COLOR_DEPTH
Specifies the color depth used for storing pixels in the layers.
const uint32_t kApaMatrixOptions
Options for APA matrices, including color order.
const uint8_t kApaDmaBufferRows
Not currently used for APA matrices.
const uint8_t kApaPanelType
Not currently used for APA matrices.
const uint16_t kApaMatrixHeight
Height of the APA matrix. Set to 1 for strips.
const uint8_t kApaRefreshDepth
Not currently used for APA matrices.
void Initialize() override
Initializes the APA102Controller and sets up the LED strip.
void Display() override
Updates and displays the content on the LED strip.
APA102Controller(CameraManager *cameras, uint8_t maxBrightness, uint8_t maxAccentBrightness)
Constructs an APA102Controller with specified parameters.
void SetAccentBrightness(uint8_t maxAccentBrightness) override
Sets the maximum accent brightness of the LED strip.
void SetBrightness(uint8_t maxBrightness) override
Sets the maximum brightness of the LED strip.
virtual IPixelGroup * GetPixelGroup()=0
Retrieves the associated pixel group.
Manages multiple CameraBase objects.
CameraBase ** GetCameras()
Retrieves the array of CameraBase objects.
Base class for managing brightness and display operations of lighting controllers.
uint8_t maxAccentBrightness
Maximum allowed accent brightness level.
uint8_t accentBrightness
Current accent brightness level.
uint8_t brightness
Current brightness level.
uint8_t maxBrightness
Maximum allowed brightness level.
CameraManager * cameras
Pointer to the CameraManager for managing camera data.
void UpdateBrightness()
Updates the brightness based on internal logic.
bool isOn
Indicates if the controller is active.
Interface for managing and interacting with a collection of pixels.
virtual RGBColor * GetColor(uint16_t count)=0
Retrieves the color of a specific pixel.
uint8_t B
Blue component of the color (0-255).
uint8_t G
Green component of the color (0-255).
uint8_t R
Red component of the color (0-255).