WIP
DirectOutput framework for virtual pinball cabinets WIP
|
Go to: Overview |
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...
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< NameChangeEventArgs > | AfterNameChanged |
Event is fired after the value of the property Name has changed. More... | |
EventHandler< NameChangeEventArgs > | BeforeNameChanged |
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< NameChangeEventArgs > | BeforeNameChanged |
Occurs before the name of the item changes. More... | |
EventHandler< NameChangeEventArgs > | AfterNameChanged |
Occurs when after the name of the item has changed. More... | |
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.
|
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.
|
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.
|
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.
Implements DirectOutput.Cab.Out.OutputControllerCompleteBase.
|
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.
OutputValues | Array of output values for each numbered output. |
Implements DirectOutput.Cab.Out.OutputControllerCompleteBase.
|
protectedvirtual |
Verifies the settings of the output controller.
true
if the verification is OK, otherwise false
Implements DirectOutput.Cab.Out.OutputControllerCompleteBase.
|
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).
|
getset |