Blinking the lights

The LightBlinkL() method call makes the specified target light to blink. Multiple light targets can be specified by using bitwise-or.

The following code snippet demonstrates how to make lights blink for infinite duration, with default intensity for multiple targets.

iLight->LightBlinkL( CHWRMExtendedLight::EPrimaryDisplay | CHWRMExtendedLight::EPrimaryKeyboard );

The following code snippet demonstrates how to make lights blink for the specified duration, with default intensity for one target.

// aDuration = 5000 milliseconds
light->LightOnL( CHWRMExtendedLight::ESecondaryDisplay, 5000 );

After the duration expires, if there are no previous infinite time duration call in this session, the light state for target is changed to whatever state was caused by the last infinite time duration call, or default state determined by inactivity timer.

The following code snippet demonstrates how to switch ON lights for the specified duration, with specified intensity for one target. (On-cycle and off-cycle times of the blinking can also be controlled):

// aDuration = 5000 milliseconds
// aOnDuration = 500 milliseconds
// aOffDuration = 500 milliseconds
// aIntensity = 30, intensity can be between KHWRMLightMinIntensity and KHWRMLightMaxIntensity, inclusive.
light->LightOnL( CHWRMExtendedLight::ESecondaryDisplay, 5000, 500, 500, 30 );

For device default cycle duration, use the value KHWRMDefaultCycleTime. If either aOnDuration or aOffDuration is KHWRMDefaultCycleTime, both must be KHWRMDefaultCycleTime.

Note: Some devices may not support variable blink cycle times, in which case default value is substituted. All devices may not support user-defined intensity, in which case the device behaves in its default state.