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

Namespace for objects dealing with layers More...

Classes

class  AlphaMappingTable
 Static class containg a mapping table which is used for faster alpha mapping of toys supporting layers with alpha channels.
 
class  AnalogAlphaToy
 This toy handles analog values (0-255) in a layer structure including alpha value (0=completely transparent, 255=fully opaque) and outputs the belended result of the layers on a single output. More...
 
interface  ILayerToy< LayerElementType >
 
class  LayerDictionary< LayerElementType >
 Dictionary for RGBALayer objects. More...
 
class  MatrixDictionaryBase< MatrixElementType >
 Sorted dictionary of layers for the matrix toys. More...
 
class  RGBAToy
 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...
 

Enumerations

enum  RGBOrderEnum {
  RGB = 1, RBG = 2, GRB = 3, WS2812 = 3,
  GBR = 4, BRG = 5, BGR = 6
}
 Enum used to define the order of the colors of a multicolor element (e.g. RGB led). Depending on the connection of the multi color element, the order of the colors does maybe not match the default Red - Green - Blue order (e.g. addressable WS2812 led chips are using Green - Red - Blue). More...
 
enum  LedStripArrangementEnum {
  LeftRightTopDown, LeftRightBottomUp, RightLeftTopDown, RightLeftBottomUp,
  TopDownLeftRight, TopDownRightLeft, BottomUpLeftRight, BottomUpRightLeft,
  LeftRightAlternateTopDown, LeftRightAlternateBottomUp, RightLeftAlternateTopDown, RightLeftAlternateBottomUp,
  TopDownAlternateLeftRight, TopDownAlternateRightLeft, BottomUpAlternateLeftRight, BottomUpAlternateRightLeft
}
 Enum used to specify the arrangement of the ledstripe(s). More...
 

Detailed Description

Namespace for objects dealing with layers

Enumeration Type Documentation

Enum used to specify the arrangement of the ledstripe(s).

Enumerator
LeftRightTopDown 
LeftRightBottomUp 
RightLeftTopDown 
RightLeftBottomUp 
TopDownLeftRight 
TopDownRightLeft 
BottomUpLeftRight 
BottomUpRightLeft 
LeftRightAlternateTopDown 
LeftRightAlternateBottomUp 
RightLeftAlternateTopDown 
RightLeftAlternateBottomUp 
TopDownAlternateLeftRight 
TopDownAlternateRightLeft 
BottomUpAlternateLeftRight 
BottomUpAlternateRightLeft 

Enum used to define the order of the colors of a multicolor element (e.g. RGB led). Depending on the connection of the multi color element, the order of the colors does maybe not match the default Red - Green - Blue order (e.g. addressable WS2812 led chips are using Green - Red - Blue).

Enumerator
RGB 

Red-Green-Blue (usual color order)

RBG 

Red - Blue - Green

GRB 

Green - Red - Blue (WS2812 led chips are using the scheme)

WS2812 

WS2812 led chip (uses green - red - blue color order)

GBR 

Green - Blue - Red

BRG 

Green - Blue - Red

BGR 

Blue - Green - Red