ILampArray

Represents an RGB lighting-enabled device. This object provides information about the device's physical properties, such as Lamp count, dimensions, manufacturer ID, and Lamp update interval (similar to the refresh rate of a display). ILampArray also exposes methods for changing Lamp color and brightness on the device.

Syntax

class ILampArray : public IUnknown  

Methods

Method Description
GetBoundingBox Returns the logical 3D bounding box encompassing the ILampArray.
GetBrightnessLevel Gets the overall brightness of the LampArray.
GetDeviceId Returns the system-generated ID for the ILampArray.
GetHardwareVersion Retrieves the hardware version number for an ILampArray.
GetIndicesCountForPurposes Returns the number of Lamp indices that support the given set of LampPurposes.
GetIndicesForPurposes Populates a buffer of Lamp indices that support a given set of LampPurposes.
GetIsEnabled Gets the enabled state of an ILampArray for the current process.
GetLampArrayKind Returns the type of physical device represented by the ILampArray.
GetLampCount Returns the number of Lamps that are part of this ILampArray.
GetLampInfo Returns an ILampInfo for the Lamp at the given index.
GetMinUpdateIntervalInMicroseconds Returns the minimal interval at which the device is capable of updating its Lamp state, as reported by the device.
GetProductId Retrieves the hardware product ID for an ILampArray.
GetVendorId Retrieves the hardware vendor ID number for an ILampArray.
SetBrightnessLevel Sets the overall brightness of the ILampArray.
SetColor Sets the color of every Lamp on the ILampArray.
SetColorsForIndices Sets the color for one or more Lamps.
SetColorsForScanCodes Sets the color of one or more Lamps, corresponding to keyboard scan codes.
SetIsEnabled Sets the enabled state of an ILampArray for the current process.
SupportsScanCodes Returns whether a LampArray supports targeting lamps using keyboard scan codes.

Remarks

Applications may continue to hold references to an ILampArray instance (intentionally or unintentionally) after the underlying device has been disconnected from the system. The ILampArray instance remains valid, since the application cannot be forced to release its reference to the interface, but the underlying object enters a zombie state.

When in a zombie state, any methods on the ILampArray interface that return static configuration information or device state information remain callable (in general, the Get* methods). However, any methods that would modify Lamp color or brightness on a connected device will be ignored. If the same physical LampArray is later reconnected to the system, the zombie device object is resurrected and all methods on the ILampArray instance become functional again.

Requirements

Header: LampArray.h

Supported platforms: Xbox One family consoles and Xbox Series consoles

See also

Lighting API Overview
Lighting Basics
LampArray