DirectOutput
DirectOutput framework R3 for virtual pinball cabinets.
Loading...
Searching...
No Matches
DirectOutput.Cab.Cabinet Class Reference

The Cabinet object describes the parts of a pinball cabinet (toys, outputcontrollers, outputs and more). More...

Public Member Functions

void AutoConfig ()
 This method finds all classes implementing the IAutoConfigOutputController interface and uses the member of this interface to detect and configure IOutputController objects automatically.
string GetConfigXml ()
 Returns a serialized XML representation of the cabinet configuration.
void SaveConfigXmlFile (string FileName)
 Serializes the cabinet configuration to a XML file.
void Init (ICabinetOwner CabinetOwner)
 Initializes the cabinet.

Parameters
CabinetOwnerThe ICabinetOwner object for the cabinet instance.

void Update ()
 Calls the update method for toys and output controllers in the cabinet.
void Finish ()
 Finishes the cabinet.
 Cabinet ()
 Initializes a new instance of the Cabinet class.

Static Public Member Functions

static Cabinet GetCabinetFromConfigXmlFile (string FileName)
 Instanciates a Cabinet object from a cabinet configuration in a XML file.
static bool TestCabinetConfigXmlFile (string FileName)
 Tests a cabinet config in a XML file.
static Cabinet GetCabinetFromConfigXmlFile (FileInfo CabinetConfigFile)
 Instanciates a Cabinet object from a cabinet configuration in a XML file.
static Cabinet GetCabinetFromConfigXml (string ConfigXml)
 Instanciates a Cabinet object from a cabinet configuration in a XML string.

Properties

ICabinetOwner Owner [get, set]
 Gets or sets the owner or the cabinet.
AlarmHandler Alarms [get]
 Gets the AlarmHandler object for the cabinet object.
string Name [get, set]
 Name of the Cabinet.
string CabinetConfigurationFilename [get, set]
 Gets or sets the filename from which the cabiet configuration was loaded.
DirectOutput.Cab.Toys.ToyList Toys [get, set]
 List of IToy objects describing the toys in the cabinet.
ColorList Colors [get, set]
 List of Color objects used to set colors for toys.
CurveList Curves [get, set]
 List of named curve objects used to set Curves for toys.
bool AutoConfigEnabled [get, set]
 Gets or sets a value indicating whether auto config is enabled.
If auto config is enabled, the framework tries to detect and configure IOutputController objects and related IToy objects automatically.
CabinetOutputList Outputs [get]
 List of IOutput objects representing all outputs of all all output controllers in the cabinet.
Out.OutputControllerList OutputControllers [get, set]
 List of IOutputController objects representing the output controllers in the cabinet.
ScheduledSettings ScheduledSettings [get, set]
 List of scheduled settings. Outputs can be disabled using start-end clock regions. This getter/setter is only used for XML-parsing into ScheduledSettings class, and settings can be accessed using ScheduledSettings.Instance from that point on.
SequentialOutputSettings SequentialOutputSettings [get, set]
 List of sequencial output settings. Outputs can be forwarded to others during fast retriggers to compensate for latency. This getter/setter is only used for XML-parsing into SequentialOutputSettings class, and settings can be accessed using SequentialOutputSettings.Instance from that point on.
TableOverrideSettings TableOverrideSettings [get, set]
 List of table overrides. Outputs can be disabled using table filenames or rom names. This getter/setter is only used for XML-parsing into TableOverrideSettings class, and settings can be accessed using TableOverrideSettings.Instance from that point on.

Detailed Description

The Cabinet object describes the parts of a pinball cabinet (toys, outputcontrollers, outputs and more).

Constructor & Destructor Documentation

◆ Cabinet()

DirectOutput.Cab.Cabinet.Cabinet ( )

Initializes a new instance of the Cabinet class.

Member Function Documentation

◆ AutoConfig()

void DirectOutput.Cab.Cabinet.AutoConfig ( )

This method finds all classes implementing the IAutoConfigOutputController interface and uses the member of this interface to detect and configure IOutputController objects automatically.

◆ Finish()

void DirectOutput.Cab.Cabinet.Finish ( )

Finishes the cabinet.

◆ GetCabinetFromConfigXml()

Cabinet DirectOutput.Cab.Cabinet.GetCabinetFromConfigXml ( string ConfigXml)
static

Instanciates a Cabinet object from a cabinet configuration in a XML string.

Parameters
ConfigXmlXML string
Returns
Cabinet object

◆ GetCabinetFromConfigXmlFile() [1/2]

Cabinet DirectOutput.Cab.Cabinet.GetCabinetFromConfigXmlFile ( FileInfo CabinetConfigFile)
static

Instanciates a Cabinet object from a cabinet configuration in a XML file.

Parameters
CabinetConfigFileFileInfo object for the config file.
Returns
Cabinet object

◆ GetCabinetFromConfigXmlFile() [2/2]

Cabinet DirectOutput.Cab.Cabinet.GetCabinetFromConfigXmlFile ( string FileName)
static

Instanciates a Cabinet object from a cabinet configuration in a XML file.

Parameters
FileNameName of the XML file.
Returns
Cabinet object

◆ GetConfigXml()

string DirectOutput.Cab.Cabinet.GetConfigXml ( )

Returns a serialized XML representation of the cabinet configuration.

Returns
XMLString

◆ Init()

void DirectOutput.Cab.Cabinet.Init ( ICabinetOwner CabinetOwner)

Initializes the cabinet.

Parameters
CabinetOwnerThe ICabinetOwner object for the cabinet instance.

◆ SaveConfigXmlFile()

void DirectOutput.Cab.Cabinet.SaveConfigXmlFile ( string FileName)

Serializes the cabinet configuration to a XML file.

Parameters
FileNameName of the XML file.

◆ TestCabinetConfigXmlFile()

bool DirectOutput.Cab.Cabinet.TestCabinetConfigXmlFile ( string FileName)
static

Tests a cabinet config in a XML file.

Parameters
FileNameName of the file.
Returns
true is the file contains a valid config, otherwise false.

◆ Update()

void DirectOutput.Cab.Cabinet.Update ( )

Calls the update method for toys and output controllers in the cabinet.

Property Documentation

◆ Alarms

AlarmHandler DirectOutput.Cab.Cabinet.Alarms
get

Gets the AlarmHandler object for the cabinet object.

The AlarmHandler object for the cabinet object.

◆ AutoConfigEnabled

bool DirectOutput.Cab.Cabinet.AutoConfigEnabled
getset

Gets or sets a value indicating whether auto config is enabled.
If auto config is enabled, the framework tries to detect and configure IOutputController objects and related IToy objects automatically.

true enables auto config, false disables auto config.

◆ CabinetConfigurationFilename

string DirectOutput.Cab.Cabinet.CabinetConfigurationFilename
getset

Gets or sets the filename from which the cabiet configuration was loaded.

The filename of the cabinet configuration file.

◆ Colors

ColorList DirectOutput.Cab.Cabinet.Colors
getset

List of Color objects used to set colors for toys.

◆ Curves

CurveList DirectOutput.Cab.Cabinet.Curves
getset

List of named curve objects used to set Curves for toys.

◆ Name

string DirectOutput.Cab.Cabinet.Name
getset

Name of the Cabinet.

◆ OutputControllers

Out.OutputControllerList DirectOutput.Cab.Cabinet.OutputControllers
getset

List of IOutputController objects representing the output controllers in the cabinet.

◆ Outputs

CabinetOutputList DirectOutput.Cab.Cabinet.Outputs
get

List of IOutput objects representing all outputs of all all output controllers in the cabinet.

◆ Owner

ICabinetOwner DirectOutput.Cab.Cabinet.Owner
getset

Gets or sets the owner or the cabinet.

The owner of the cabinet.

◆ ScheduledSettings

ScheduledSettings DirectOutput.Cab.Cabinet.ScheduledSettings
getset

List of scheduled settings. Outputs can be disabled using start-end clock regions. This getter/setter is only used for XML-parsing into ScheduledSettings class, and settings can be accessed using ScheduledSettings.Instance from that point on.

◆ SequentialOutputSettings

SequentialOutputSettings DirectOutput.Cab.Cabinet.SequentialOutputSettings
getset

List of sequencial output settings. Outputs can be forwarded to others during fast retriggers to compensate for latency. This getter/setter is only used for XML-parsing into SequentialOutputSettings class, and settings can be accessed using SequentialOutputSettings.Instance from that point on.

◆ TableOverrideSettings

TableOverrideSettings DirectOutput.Cab.Cabinet.TableOverrideSettings
getset

List of table overrides. Outputs can be disabled using table filenames or rom names. This getter/setter is only used for XML-parsing into TableOverrideSettings class, and settings can be accessed using TableOverrideSettings.Instance from that point on.

◆ Toys

DirectOutput.Cab.Toys.ToyList DirectOutput.Cab.Cabinet.Toys
getset

List of IToy objects describing the toys in the cabinet.


The documentation for this class was generated from the following file:
  • D:/a/DirectOutput/DirectOutput/DirectOutput/Cab/Cabinet.cs