|
override int | GetNumberOfConfiguredOutputs () |
override bool | VerifySettings () |
override void | UpdateOutputs (byte[] OutputValues) |
override void | ConnectToController () |
override void | DisconnectFromController () |
void | SetupOutputs () |
| Manages to output object of the output controller. Use the GetNumberOfConfiguredOutputs() method to determine the number of outputs to be setup.
|
override void | AfterNameChange (string OldName, string NewName) |
int | GetNumberOfConfiguredOutputs () |
| This method must return the number of configured outputs. The method is used internally 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.
|
bool | VerifySettings () |
| Verifies the settings of the output controller.
|
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.
|
void | ConnectToController () |
| This method is called when DOF wants to connect to the controller. Implement your own logic to connect to the controller here.
|
void | DisconnectFromController () |
| This method is called when DOF wants to disconnect from the controller. Implement your own logic to disconnect from the controller here.
|
virtual void | BeforeNameChange (string OldName, string NewName) |
virtual void | OnPropertyChanged (string propertyName) |
virtual void | OnPropertyChanging (string propertyName) |
|
short | Universe [get, set] |
| Gets or sets the number of the Dmx universe for the ArtNet node.
|
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.
|
OutputList | Outputs [get, set] |
| Contains the OutputList object for the outputs of the output controller.
|
bool | UpdaterThreadIsActive [get] |
| Indicates whether the UpdaterThread is active or not.
|
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.
|
new string | Name [get, set] |
| Name of the IOutputController. This property is fully implemented in the abstract OutputControllerBase class.
|
|
void | SetValues (int FirstOutput, byte[] Values) |
| Sets the values for one or several outputs of the controller.
|
virtual void | Init (Cabinet Cabinet) |
| Initializes the output controller and starts the updater thread.
|
virtual void | Finish () |
| Finishes the output controller and stop the updater thread.
|
void | Update () |
| Triggers the update of the physical outputs.
|
enum | InUseStates { Startup
, ValueChanged
, Running
} |
| Output controller in-use state. This tells us if we've ever received a value update from the client, and if we've sent any commands yet to the connected device. Initially, this is set to Startup. On a value change event, if this is still startup, we set it to ValueChanged. The updater thread can use this to determine if it needs to send initialization commands and/or value updates to the device. The updater thread can simply take no action when the value is Startup, as this means that the unit hasn't yet been addressed by the client and thus might not be in use at all during this session. When the state is ValueChanged, the updater thread should send any necessary initialization commands to the device and change the state to Running. When the state is Running, the thread can simply send value updates as normal. More...
|
InUseStates | InUseState = InUseStates.Startup |
| Current in-use state for this controller.
|
EventHandler< NameChangeEventArgs > | AfterNameChanged |
| Event is fired after the value of the property Name has changed.
|
EventHandler< NameChangeEventArgs > | BeforeNameChanged |
| Event is fired before the value of the property Name is changed.
|
PropertyChangedEventHandler | PropertyChanged |
PropertyChangingEventHandler | PropertyChanging |
EventHandler< NameChangeEventArgs > | BeforeNameChanged |
| Occurs before the name of the item changes.
|
EventHandler< NameChangeEventArgs > | AfterNameChanged |
| Occurs when after the name of the item has changed.
|
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