DirectOutput
DirectOutput framework R2 for virtual pinball cabinets.
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties Events Macros Pages
DirectOutput.Cab.Toys.Layer.RGBAToy Class Reference

Thie RGBAToy controls RGB leds and other gadgets displaying RGB colors.

The RGBAToy has multilayer support with alpha channels. This allows the effects targeting RGBAToys to send their data to different layers. Values in a layer do also have a alpha/transparency channel which will allow us to blend the colors/values in the various layers (e.g. if a bottom layer is blue and top is a semi transparent red, you will get some mix of both or if one of the two blinks you get changing colors).
The following picture might give you a clearer idea how the layers with their alpha channels work: More...

Inheritance diagram for DirectOutput.Cab.Toys.Layer.RGBAToy:
Collaboration diagram for DirectOutput.Cab.Toys.Layer.RGBAToy:

Public Member Functions

RGBColor GetResultingData ()
 Get the RGBColor resulting from the colors and alpha values in the layers. More...
 
override void Init (Cabinet Cabinet)
 Initializes the RGBALed toy. More...
 
override void Finish ()
 Finishes the RGBALed toy.
Resets the the toy and releases all references. More...
 
override void UpdateOutputs ()
 Updates the outputs of the RGBAToy. More...
 
override void Reset ()
 Clears all layers and sets all outputs to 0 (off). More...
 
 RGBAToy ()
 Initializes a new instance of the RGBAToy class. More...
 

Properties

LayerDictionary< RGBAColorLayers [get, set]
 Gets the dictionary of RGBALayers. More...
 
string OutputNameRed [get, set]
 Name of the IOutput for red. More...
 
string OutputNameGreen [get, set]
 Name of the IOutput for green. More...
 
string OutputNameBlue [get, set]
 Name of the IOutput for blue. More...
 
string FadingCurveName [get, set]
 Gets or sets the name of the fading curve as defined in the Curves list of the cabinet object. This curve can be used to adjust the brightness values for the led to the brightness perception of the human eye. More...
 
- Properties inherited from DirectOutput.Cab.Toys.IRGBOutputToy
string OutputNameBlue [get, set]
 Gets or sets the output name for blue. More...
 
string OutputNameGreen [get, set]
 Gets or sets the output name for green. More...
 
string OutputNameRed [get, set]
 Gets or sets the output name for red. More...
 
- Properties inherited from DirectOutput.Cab.Toys.IToy
new string Name [get, set]
 Gets or sets the Name of the IToy. More...
 
- Properties inherited from DirectOutput.General.Generic.INamedItem
string Name [get, set]
 Gets or sets the name of the item.
Must fire the BeforeNameChange and AfterNameChange events when the value of the property is changed. More...
 

Additional Inherited Members

- Events inherited from DirectOutput.General.Generic.NamedItemBase
EventHandler< NameChangeEventArgsAfterNameChanged
 Event is fired after the value of the property Name has changed. More...
 
EventHandler< NameChangeEventArgsBeforeNameChange
 Event is fired before the value of the property Name is changed. More...
 
- Events inherited from DirectOutput.General.Generic.INamedItem
EventHandler< NameChangeEventArgsBeforeNameChange
 Occurs before the name of the item changes. More...
 
EventHandler< NameChangeEventArgsAfterNameChanged
 Occurs when after the name of the item has changed. More...
 

Detailed Description

Thie RGBAToy controls RGB leds and other gadgets displaying RGB colors.

The RGBAToy has multilayer support with alpha channels. This allows the effects targeting RGBAToys to send their data to different layers. Values in a layer do also have a alpha/transparency channel which will allow us to blend the colors/values in the various layers (e.g. if a bottom layer is blue and top is a semi transparent red, you will get some mix of both or if one of the two blinks you get changing colors).
The following picture might give you a clearer idea how the layers with their alpha channels work:

LayersRGBA.png
RGBA Layers

Constructor & Destructor Documentation

DirectOutput.Cab.Toys.Layer.RGBAToy.RGBAToy ( )

Initializes a new instance of the RGBAToy class.

Member Function Documentation

override void DirectOutput.Cab.Toys.Layer.RGBAToy.Finish ( )

Finishes the RGBALed toy.
Resets the the toy and releases all references.

Implements DirectOutput.Cab.Toys.IToy.

RGBColor DirectOutput.Cab.Toys.Layer.RGBAToy.GetResultingData ( )

Get the RGBColor resulting from the colors and alpha values in the layers.

Returns
override void DirectOutput.Cab.Toys.Layer.RGBAToy.Init ( Cabinet  Cabinet)

Initializes the RGBALed toy.

Parameters
CabinetCabinet object to which the RGBAToy belongs.

Implements DirectOutput.Cab.Toys.IToy.

override void DirectOutput.Cab.Toys.Layer.RGBAToy.Reset ( )

Clears all layers and sets all outputs to 0 (off).

Implements DirectOutput.Cab.Toys.IToy.

override void DirectOutput.Cab.Toys.Layer.RGBAToy.UpdateOutputs ( )
virtual

Updates the outputs of the RGBAToy.

Implements DirectOutput.Cab.Toys.ToyBaseUpdatable.

Property Documentation

string DirectOutput.Cab.Toys.Layer.RGBAToy.FadingCurveName
getset

Gets or sets the name of the fading curve as defined in the Curves list of the cabinet object. This curve can be used to adjust the brightness values for the led to the brightness perception of the human eye.

The name of the fading curve.

LayerDictionary<RGBAColor> DirectOutput.Cab.Toys.Layer.RGBAToy.Layers
getset

Gets the dictionary of RGBALayers.

The layers dictionary.

string DirectOutput.Cab.Toys.Layer.RGBAToy.OutputNameBlue
getset

Name of the IOutput for blue.

string DirectOutput.Cab.Toys.Layer.RGBAToy.OutputNameGreen
getset

Name of the IOutput for green.

string DirectOutput.Cab.Toys.Layer.RGBAToy.OutputNameRed
getset

Name of the IOutput for red.


The documentation for this class was generated from the following file: