WIP
DirectOutput framework for virtual pinball cabinets WIP
Go to:
Overview 
DirectOutput.FX.TimmedFX.MinDurationEffect Class Reference

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.
More...

Inheritance diagram for DirectOutput.FX.TimmedFX.MinDurationEffect:
DirectOutput.FX.EffectEffectBase DirectOutput.FX.EffectBase DirectOutput.General.Generic.NamedItemBase DirectOutput.FX.IEffect DirectOutput.General.Generic.INamedItem DirectOutput.General.Generic.INamedItem

Public Member Functions

override void Trigger (TableElementData TableElementData)
 Triggers the MinDurationEffect with the given TableElementData.
The minimal duration is started, if the value portion of the TableElementData parameter is !=0. More...
 
override void Finish ()
 Finishes the DurationEffect. More...
 
- Public Member Functions inherited from DirectOutput.FX.EffectEffectBase
override void Init (Table.Table Table)
 Initializes the EffectEffect.
Resolves the name of the TargetEffect. More...
 

Properties

RetriggerBehaviourEnum RetriggerBehaviour [get, set]
 Gets or sets the retrigger behaviour.
The setting defines the behaviour of the effect if it is retriggered while it is still active.
This settings is only relevant, if the effect can be called from more than one table element. More...
 
int MinDurationMs [get, set]
 Gets or sets the minimal duration for the effect in milliseconds. More...
 
bool Active [get]
 Gets a value indicating whether this MinDurationEffect is currently holding back trigger calls on the TargetEffect having a value of 0. More...
 
- Properties inherited from DirectOutput.FX.EffectEffectBase
string TargetEffectName [get, set]
 Name of the target effect.
Triggers EffectNameChanged if value is changed. More...
 
IEffect TargetEffect [get]
 TargetEffect for the effect (ReadOnly).
The property is resolved from the TargetEffectName. If TargetEffectName is empty or unknown this property will return null. More...
 
Table.Table Table [get]
 Gets the table object which is hosting the effect. More...
 
- Properties inherited from DirectOutput.General.Generic.NamedItemBase
string Name [get, set]
 Name of the named item.
Triggers BeforeNameChange before a new Name is set.
Triggers AfterNameChanged after a new name has been set. 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...
 
- Properties inherited from DirectOutput.FX.IEffect
new string Name [get, set]
 Name of the effect.
More...
 

Additional Inherited Members

- Protected Member Functions inherited from DirectOutput.FX.EffectEffectBase
void TriggerTargetEffect (TableElementData TriggerData)
 Triggers the target effect.
The method will deactivate the target effect if it throws a exception. More...
 
- Protected Member Functions inherited from DirectOutput.General.Generic.NamedItemBase
virtual void AfterNameChange (string OldName, string NewName)
 
virtual void BeforeNameChange (string OldName, string NewName)
 
virtual void OnPropertyChanged (string propertyName)
 
virtual void OnPropertyChanging (string propertyName)
 
- Events inherited from DirectOutput.General.Generic.NamedItemBase
EventHandler< NameChangeEventArgsAfterNameChanged
 Event is fired after the value of the property Name has changed. More...
 
EventHandler< NameChangeEventArgsBeforeNameChanged
 Event is fired before the value of the property Name is changed. More...
 
PropertyChangedEventHandler PropertyChanged
 
PropertyChangingEventHandler PropertyChanging
 
- Events inherited from DirectOutput.General.Generic.INamedItem
EventHandler< NameChangeEventArgsBeforeNameChanged
 Occurs before the name of the item changes. More...
 
EventHandler< NameChangeEventArgsAfterNameChanged
 Occurs when after the name of the item has changed. More...
 
- Events inherited from DirectOutput.FX.IEffect
new EventHandler< NameChangeEventArgsAfterNameChanged
 This event must be fired after the Name property of a IEffect object has changed. More...
 
new EventHandler< NameChangeEventArgsBeforeNameChanged
 This event must be fired before the Name property of a IEffect object is changed. More...
 

Detailed Description

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

Definition at line 16 of file MinDurationEffect.cs.

Member Function Documentation

override void DirectOutput.FX.TimmedFX.MinDurationEffect.Finish ( )
virtual

Finishes the DurationEffect.

Reimplemented from DirectOutput.FX.EffectEffectBase.

Definition at line 118 of file MinDurationEffect.cs.

override void DirectOutput.FX.TimmedFX.MinDurationEffect.Trigger ( TableElementData  TableElementData)
virtual

Triggers the MinDurationEffect with the given TableElementData.
The minimal duration is started, if the value portion of the TableElementData parameter is !=0.

Parameters
TableElementDataTableElementData for the TableElement which has triggered the effect.

Implements DirectOutput.FX.EffectBase.

Definition at line 67 of file MinDurationEffect.cs.

Property Documentation

bool DirectOutput.FX.TimmedFX.MinDurationEffect.Active
get

Gets a value indicating whether this MinDurationEffect is currently holding back trigger calls on the TargetEffect having a value of 0.

true if active; otherwise false.

Definition at line 57 of file MinDurationEffect.cs.

int DirectOutput.FX.TimmedFX.MinDurationEffect.MinDurationMs
getset

Gets or sets the minimal duration for the effect in milliseconds.

The minimal effect duration in milliseconds.

Definition at line 43 of file MinDurationEffect.cs.

RetriggerBehaviourEnum DirectOutput.FX.TimmedFX.MinDurationEffect.RetriggerBehaviour
getset

Gets or sets the retrigger behaviour.
The setting defines the behaviour of the effect if it is retriggered while it is still active.
This settings is only relevant, if the effect can be called from more than one table element.

Valid values are Restart (restarts the minimal duration) or Ignore (keeps the org duration).

Definition at line 29 of file MinDurationEffect.cs.


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