WIP
DirectOutput framework for virtual pinball cabinets WIP
Go to:
Overview 
DirectOutput.Cab.Out.DMX.ArtNet Class Reference

Artnet is a industry standard protocol used to control DMX lighting effects over ethernet. Using Art-Net it is possible to connect a very wide range of lighting effects like strobes or dimmer packs. There are tons of DMX controlled effects available on the market (from very cheap and small to very expensive and big). It might sounds a bit crazy, but with Art-net and DMX you could at least in theory control a whole stage lighting system (this would likely make you feel like Tommy in the movie). More...

Inheritance diagram for DirectOutput.Cab.Out.DMX.ArtNet:
DirectOutput.Cab.Out.OutputControllerCompleteBase DirectOutput.General.Generic.NamedItemBase DirectOutput.Cab.Out.IOutputController DirectOutput.Cab.Out.ISupportsSetValues DirectOutput.General.Generic.INamedItem DirectOutput.General.Generic.INamedItem DirectOutput.Cab.Out.IOutputController DirectOutput.General.Generic.INamedItem

Protected Member Functions

override int GetNumberOfConfiguredOutputs ()
 This method must return the number of configured outputs. The method is used internaly to determine the number of output objects which have to be setup. Return a fixed value for output controllers which have a fixed number of outputs. Return the value of a configurable property for controllers with a defineable number of outputs. More...
 
override bool VerifySettings ()
 Verifies the settings of the output controller. More...
 
override void UpdateOutputs (byte[] OutputValues)
 This method is called whenever new data has to be sent to the output controller. Implement the communication with your hereware in this method. More...
 
override void ConnectToController ()
 This method is called when DOF wants to connect to the controller. Implement your own logic to connect to the controller here. More...
 
override void DisconnectFromController ()
 This method is called when DOF wants to disconnect from the controller. Implement your own logic to disconnect from the controller here. More...
 
- Protected Member Functions inherited from DirectOutput.Cab.Out.OutputControllerCompleteBase
void SetupOutputs ()
 Manages to output object of the output controller. Use the GetNumberOfConfiguredOutputs() method to determine the number of outputs to be setup. More...
 
override void AfterNameChange (string OldName, string NewName)
 
- Protected Member Functions inherited from DirectOutput.General.Generic.NamedItemBase
virtual void BeforeNameChange (string OldName, string NewName)
 
virtual void OnPropertyChanged (string propertyName)
 
virtual void OnPropertyChanging (string propertyName)
 

Properties

short Universe [get, set]
 Gets or sets the number of the Dmx universe for the ArtNet node. More...
 
string BroadcastAddress [get, set]
 Gets or sets the broadcast address for the ArtNet object.
If no BroadcastAddress is set, the default address (255.255.255.255) will be used. More...
 
- Properties inherited from DirectOutput.Cab.Out.OutputControllerCompleteBase
OutputList Outputs [get, set]
 Contains the OutputList object for the outputs of the output controller.
More...
 
bool UpdaterThreadIsActive [get]
 Indicates whether the UpdaterThread is active or not. 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.Cab.Out.IOutputController
new string Name [get, set]
 Name of the IOutputController. This property is fully implemented in the abstract OutputControllerBase class. More...
 
OutputList Outputs [get, set]
 OutputList containing the IOutput objects for a IOutputController. More...
 

Additional Inherited Members

- Public Member Functions inherited from DirectOutput.Cab.Out.OutputControllerCompleteBase
void SetValues (int FirstOutput, byte[] Values)
 Sets the values for one or several outputs of the controller. More...
 
virtual void Init (Cabinet Cabinet)
 Initializes the output controller and starts the updater thread. More...
 
virtual void Finish ()
 Finishes the output controller and stop the updater thread. More...
 
void Update ()
 Triggers the update of the physical outputs More...
 
- 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...
 

Detailed Description

Artnet is a industry standard protocol used to control DMX lighting effects over ethernet. Using Art-Net it is possible to connect a very wide range of lighting effects like strobes or dimmer packs. There are tons of DMX controlled effects available on the market (from very cheap and small to very expensive and big). It might sounds a bit crazy, but with Art-net and DMX you could at least in theory control a whole stage lighting system (this would likely make you feel like Tommy in the movie).

To use Art-Net you will need a Art-Net node (unit that converts from ethernet to DMX protocol) and also some DMX controlled lighting effect. There are quite a few different Art-Net nodes available on the market and most of them should be compatible with the DirectOutput framework. For testing the Art-Net node sold by Ulrich Radig as a DIY kit was used.

Each Art-Net node/DMX universe supports 512 DMX channels and several Art-Net nodes controlling different DMX universes can be used in parallel.

If you want to read more about Art-net, visit the website of Artistic License. The specs for Art-net can be found in the Resources - User Guides + Datasheets section of the site.

DMX.png
DMX

Definition at line 21 of file ArtNet.cs.

Member Function Documentation

override void DirectOutput.Cab.Out.DMX.ArtNet.ConnectToController ( )
protectedvirtual

This method is called when DOF wants to connect to the controller. Implement your own logic to connect to the controller here.

Implements DirectOutput.Cab.Out.OutputControllerCompleteBase.

Definition at line 100 of file ArtNet.cs.

override void DirectOutput.Cab.Out.DMX.ArtNet.DisconnectFromController ( )
protectedvirtual

This method is called when DOF wants to disconnect from the controller. Implement your own logic to disconnect from the controller here.

Implements DirectOutput.Cab.Out.OutputControllerCompleteBase.

Definition at line 120 of file ArtNet.cs.

override int DirectOutput.Cab.Out.DMX.ArtNet.GetNumberOfConfiguredOutputs ( )
protectedvirtual

This method must return the number of configured outputs. The method is used internaly to determine the number of output objects which have to be setup. Return a fixed value for output controllers which have a fixed number of outputs. Return the value of a configurable property for controllers with a defineable number of outputs.

Returns
The number of outputs to be configured.

Implements DirectOutput.Cab.Out.OutputControllerCompleteBase.

Definition at line 58 of file ArtNet.cs.

override void DirectOutput.Cab.Out.DMX.ArtNet.UpdateOutputs ( byte[]  OutputValues)
protectedvirtual

This method is called whenever new data has to be sent to the output controller. Implement the communication with your hereware in this method.

Parameters
OutputValuesArray of output values for each numbered output.

Implements DirectOutput.Cab.Out.OutputControllerCompleteBase.

Definition at line 68 of file ArtNet.cs.

override bool DirectOutput.Cab.Out.DMX.ArtNet.VerifySettings ( )
protectedvirtual

Verifies the settings of the output controller.

Returns
true if the verification is OK, otherwise false

Implements DirectOutput.Cab.Out.OutputControllerCompleteBase.

Definition at line 63 of file ArtNet.cs.

Property Documentation

string DirectOutput.Cab.Out.DMX.ArtNet.BroadcastAddress
getset

Gets or sets the broadcast address for the ArtNet object.
If no BroadcastAddress is set, the default address (255.255.255.255) will be used.

String containing broadcast address. If this parameter is not set the default broadcast address (255.255.255.255) will be used. Valid values are any IP adresses (e.g. 192.168.1.53).

Definition at line 52 of file ArtNet.cs.

short DirectOutput.Cab.Out.DMX.ArtNet.Universe
getset

Gets or sets the number of the Dmx universe for the ArtNet node.

The number of the Dmx universe.

Definition at line 36 of file ArtNet.cs.


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