DirectOutputR1
DirectOutput framework R1 for virtual pinball cabinets.
Go to:
Overview 
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties Events Macros Pages
Built in Effects

AnalogToyFadeOnOffEffect

Summary

A effect fading the output value of a AnalogToy object to a active or inactive value. The fading is controlled by the value property (0, not 0) of the TableElementData parameter of the Trigger method.

FX_FadeOnOff.png
FadeOnOff effect

Sample XML

A configuration section for AnalogToyFadeOnOffEffect might resemble the following structure:

<AnalogToyFadeOnOffEffect>
<Name>Name of AnalogToyFadeOnOffEffect</Name>
<ToyName>Name of Toy</ToyName>
<Layer>0</Layer>
<RetriggerBehaviour>RestartEffect</RetriggerBehaviour>
<FadeMode>DefinedToDefined</FadeMode>
<FadeInactiveDurationMs>500</FadeInactiveDurationMs>
<FadeActiveDurationMs>500</FadeActiveDurationMs>
<ActiveValue>
<Value>0</Value>
<Alpha>0</Alpha>
</ActiveValue>
<InactiveValue>
<Value>0</Value>
<Alpha>0</Alpha>
</InactiveValue>
</AnalogToyFadeOnOffEffect>

Properties

AnalogToyFadeOnOffEffect has the following 9 configurable properties:

ActiveValue

The active value between 0 and 255.

FadeActiveDurationMs

The fading duration in milliseconds.

FadeInactiveDurationMs

The fading duration in milliseconds.

FadeMode

CurrentToDefinedColor or DefinedColor

The property FadeMode accepts the following values:

CurrentToDefined

  • DefinedToDefined

Valid values

The property FadeMode accepts the following values:

CurrentToDefined

  • DefinedToDefined

InactiveValue

The inactive value between 0 and 255.

Layer

The layer number.

Name

The name of the item.

RetriggerBehaviour

Valid values are RestartEffect or IgnoreRetrigger.

The property RetriggerBehaviour accepts the following values:

RestartEffect

  • IgnoreRetrigger

Valid values

The property RetriggerBehaviour accepts the following values:

RestartEffect

  • IgnoreRetrigger

ToyName

The name of the AnalogToy.

AnalogToyOnOffEffect

Summary

A basic effect setting the output of a AnalogToy object to a active or inactive value, based on value property (0, not 0) of the TableElementData parameter of the Trigger method.

Sample XML

A configuration section for AnalogToyOnOffEffect might resemble the following structure:

<AnalogToyOnOffEffect>
<Name>Name of AnalogToyOnOffEffect</Name>
<ToyName>Name of Toy</ToyName>
<Layer>0</Layer>
<ActiveValue>
<Value>0</Value>
<Alpha>0</Alpha>
</ActiveValue>
<InactiveValue>
<Value>0</Value>
<Alpha>0</Alpha>
</InactiveValue>
</AnalogToyOnOffEffect>

Properties

AnalogToyOnOffEffect has the following 5 configurable properties:

ActiveValue

The active value between 0 and 255.

InactiveValue

The inactive value between 0 and 255.

Layer

The layer number.

Name

The name of the item.

ToyName

The name of the AnalogToy.

ListEffect

Summary

This effect triggers a list of other effect when it is triggered.

Warning
Be careful not to add ListEffect objects which finnaly contain a reference to the instance you're working with. This will create a recursive loop which never exit!.

Sample XML

A configuration section for ListEffect might resemble the following structure:

<ListEffect>
<Name>Name of ListEffect</Name>
<AssignedEffects>
<AssignedEffect>
<EffectName>Name of Effect</EffectName>
</AssignedEffect>
<AssignedEffect>
<EffectName>Name of Effect</EffectName>
</AssignedEffect>
<AssignedEffect>
<EffectName>Name of Effect</EffectName>
</AssignedEffect>
</AssignedEffects>
</ListEffect>

Properties

ListEffect has the following 2 configurable properties:

AssignedEffects

The list of effects assigned to the ListEffect.

Nested Properties

The following nested propteries exist for AssignedEffects:

  • EffectName
    The name of the assigned effect.

Name

The name of the item.

NullEffect

Summary

The NullEffect is a empty effect no doing anything.

Sample XML

A configuration section for NullEffect might resemble the following structure:

<NullEffect>
<Name>Name of NullEffect</Name>
</NullEffect>

Properties

NullEffect has the following 1 configurable properties:

Name

The name of the item.

RGBAFadeOnOffEffect

Summary

This RGBA effect fades the color of a RGBA toys towards a defined target color based on the state (not 0, 0) of the triggering table element.

FX_FadeOnOff.png
FadeOnOff effect

Sample XML

A configuration section for RGBAFadeOnOffEffect might resemble the following structure:

<RGBAFadeOnOffEffect>
<Name>Name of RGBAFadeOnOffEffect</Name>
<ToyName>Name of Toy</ToyName>
<Layer>0</Layer>
<RetriggerBehaviour>RestartEffect</RetriggerBehaviour>
<FadeMode>DefinedToDefined</FadeMode>
<FadeInactiveDurationMs>500</FadeInactiveDurationMs>
<FadeActiveDurationMs>500</FadeActiveDurationMs>
<ActiveColor>
<HexColor>#00000000</HexColor>
</ActiveColor>
<InactiveColor>
<HexColor>#00000000</HexColor>
</InactiveColor>
</RGBAFadeOnOffEffect>

Properties

RGBAFadeOnOffEffect has the following 9 configurable properties:

ActiveColor

The RGBA color to be used when the effect is active.

Nested Properties

The following nested propteries exist for ActiveColor:

  • HexColor
    6 digit hexadecimal color code with leading #(e.g. #ff0000 for red).

FadeActiveDurationMs

The fading duration in milliseconds.

FadeInactiveDurationMs

The fading duration in milliseconds.

FadeMode

CurrentToDefinedColor or DefinedColor

The property FadeMode accepts the following values:

CurrentToDefined

  • DefinedToDefined

Valid values

The property FadeMode accepts the following values:

CurrentToDefined

  • DefinedToDefined

InactiveColor

The RGBA color to be used when the effect is inactive.

Nested Properties

The following nested propteries exist for InactiveColor:

  • HexColor
    6 digit hexadecimal color code with leading #(e.g. #ff0000 for red).

Layer

The layer number.

Name

The name of the item.

RetriggerBehaviour

Valid values are RestartEffect or IgnoreRetrigger.

The property RetriggerBehaviour accepts the following values:

RestartEffect

  • IgnoreRetrigger

Valid values

The property RetriggerBehaviour accepts the following values:

RestartEffect

  • IgnoreRetrigger

ToyName

The name of the RGBAToy.

RGBAOnOffEffect

Summary

A basic RBA effect which sets the color of a layer of a RGBA toy to a specified color based on the state (not 0, 0) of the triggering table element.

FX_OnOff.png
OnOff effect

Sample XML

A configuration section for RGBAOnOffEffect might resemble the following structure:

<RGBAOnOffEffect>
<Name>Name of RGBAOnOffEffect</Name>
<ToyName>Name of Toy</ToyName>
<Layer>0</Layer>
<ActiveColor>
<HexColor>#00000000</HexColor>
</ActiveColor>
<InactiveColor>
<HexColor>#00000000</HexColor>
</InactiveColor>
</RGBAOnOffEffect>

Properties

RGBAOnOffEffect has the following 5 configurable properties:

ActiveColor

The RGBA color to be used when the effect is active.

Nested Properties

The following nested propteries exist for ActiveColor:

  • HexColor
    6 digit hexadecimal color code with leading #(e.g. #ff0000 for red).

InactiveColor

The RGBA color to be used when the effect is inactive.

Nested Properties

The following nested propteries exist for InactiveColor:

  • HexColor
    6 digit hexadecimal color code with leading #(e.g. #ff0000 for red).

Layer

The layer number.

Name

The name of the item.

ToyName

The name of the RGBAToy.

BlinkEffect

Summary

Blink effect which triggers a TargetEffect at specified intervalls with active (org value of TableElementData used in Trigger method is used to trigger the TargetEffect) and inactive (uses 0 as the Value of the TableElementData to trigger the TargetEffect) values.

FX_Blink.png
Blink effect

Sample XML

A configuration section for BlinkEffect might resemble the following structure:

<BlinkEffect>
<Name>Name of BlinkEffect</Name>
<TargetEffectName>Name of TargetEffect</TargetEffectName>
<DurationActiveMs>500</DurationActiveMs>
<DurationInactiveMs>500</DurationInactiveMs>
</BlinkEffect>

Properties

BlinkEffect has the following 4 configurable properties:

DurationActiveMs

The active duration of the blinking in milliseconds.

DurationInactiveMs

The inactive duration of the blinking in milliseconds.

Name

The name of the item.

TargetEffectName

Name of the target effect.
Triggers EffectNameChanged if value is changed.

DelayEffect

Summary

The effect fires a assigned target effect after a specified delay.
The original values supplied when the effect is triggered are forwarded to the target effect.

FX_Delay.png
Delay effect

Sample XML

A configuration section for DelayEffect might resemble the following structure:

<DelayEffect>
<Name>Name of DelayEffect</Name>
<TargetEffectName>Name of TargetEffect</TargetEffectName>
<DelayMs>0</DelayMs>
</DelayEffect>

Properties

DelayEffect has the following 3 configurable properties:

DelayMs

The delay in milliseconds.

Name

The name of the item.

TargetEffectName

Name of the target effect.
Triggers EffectNameChanged if value is changed.

DurationEffect

Summary

Duration effect which triggers a specified target effect for a specified duration.
When this effect is triggered it triggers the target effect immediately with the same data it has received. After the specified duration it calls trigger on the target effect again with data for the same table elmenet, but with the value changed to 0.

FX_Duration.png
Duration effect

Sample XML

A configuration section for DurationEffect might resemble the following structure:

<DurationEffect>
<Name>Name of DurationEffect</Name>
<TargetEffectName>Name of TargetEffect</TargetEffectName>
<RetriggerBehaviour>RestartEffect</RetriggerBehaviour>
<DurationMs>500</DurationMs>
</DurationEffect>

Properties

DurationEffect has the following 4 configurable properties:

DurationMs

The effect duration in milliseconds.

Name

The name of the item.

RetriggerBehaviour

Valid values are RestartEffect (Restarts the duration) or IgnoreRetrigger (keeps the org duration).

The property RetriggerBehaviour accepts the following values:

RestartEffect

  • IgnoreRetrigger

Valid values

The property RetriggerBehaviour accepts the following values:

RestartEffect

  • IgnoreRetrigger

TargetEffectName

Name of the target effect.
Triggers EffectNameChanged if value is changed.

ExtendDurationEffect

Summary

The extend duration effect triggers another effect for a duration which is extebnded by the number of milliseconds specified in DurationMs.
This is done by forwarding triggers calls which are seting the effect to active directly to the target effect and delaying the forwarding of calls which set the effect to inactive by the number of milliseconds specified in DurationMs.

FX_ExtendDuration.png
ExtendDuration effect

Sample XML

A configuration section for ExtendDurationEffect might resemble the following structure:

<ExtendDurationEffect>
<Name>Name of ExtendDurationEffect</Name>
<TargetEffectName>Name of TargetEffect</TargetEffectName>
<DurationMs>500</DurationMs>
</ExtendDurationEffect>

Properties

ExtendDurationEffect has the following 3 configurable properties:

DurationMs

The extended duration in milliseconds.

Name

The name of the item.

TargetEffectName

Name of the target effect.
Triggers EffectNameChanged if value is changed.

MinDurationEffect

Summary

This effect enforces a minimum duration on the effect calls.
Calls which are setting a effect to active (having a trigger value which is not equal 0 or null) are forwarded directly to the TargetEffect.
Calls setting the effect to inactive (having a trigger value of 0) are only forwarded to the TargetEffect after the specified minimum duration has expired.

FX_MinDuration.png
MinDuration effect

Sample XML

A configuration section for MinDurationEffect might resemble the following structure:

<MinDurationEffect>
<Name>Name of MinDurationEffect</Name>
<TargetEffectName>Name of TargetEffect</TargetEffectName>
<RetriggerBehaviour>RestartEffect</RetriggerBehaviour>
<MinDurationMs>500</MinDurationMs>
</MinDurationEffect>

Properties

MinDurationEffect has the following 4 configurable properties:

MinDurationMs

The minimal effect duration in milliseconds.

Name

The name of the item.

RetriggerBehaviour

Valid values are RestartEffect (Restarts the minimal duration) or IgnoreRetrigger (keeps the org duration).

The property RetriggerBehaviour accepts the following values:

RestartEffect

  • IgnoreRetrigger

Valid values

The property RetriggerBehaviour accepts the following values:

RestartEffect

  • IgnoreRetrigger

TargetEffectName

Name of the target effect.
Triggers EffectNameChanged if value is changed.