/// <summary> /// Execute when clock time out event is happened /// </summary> /// <param name="sender"> Object who created event </param> /// <param name="e"> Event information </param> protected abstract void LightChanged(object sender, LightArgs e);
/// <summary> /// Event handler of changing of light /// </summary> /// <param name="sender"> Object that initialized event </param> /// <param name="e"> Event arguments </param> protected override void LightChanged(object sender, LightArgs e) { this.Colour = e.Colour; }
/// <summary> /// Invoke listeners /// </summary> /// <param name="sender"> Initializer of event </param> /// <param name="eventArgs"> Event arguments </param> protected virtual void OnLightChange(object sender, LightArgs eventArgs) { LightChanged?.Invoke(sender, eventArgs); }