The Edit LogixNG table contains a list of the defined ConditionalNGs.
The LogixNG Editor table lists all of the currently defined ConditionalNGs.
LogixNG runs the ConditionalNGs in the LogixNG Java thread. This reduces conflicts with other parts of JMRI.
The thread for a ConditionalNG can be changed to use a different thread. This makes it possible to isolate long running or complex ConditionalNGs. Another use is to use the Debug thread when using the Debug option. The Debug option stops the thread for each step. By using the Debug thread, the other LogixNG ConditionalNGs are not affected.
When the Edit threads button is selected, the Thread editor opens.
The default LogixNG and Debug threads are displayed. The Add thread button can be used to create new threads. The threads in the dialog can be used by any ConditionalNG. Unused threads can be deleted using the delete button.
The Select thread button is used to assign a different thread to the current ConditionalNG. This is NOT a real time change. The thread is assigned during the layout data file load process. This means that after a different thread is selected, the layout data has to be stored, PanelPro is stopped and restarted and the layout data file is loaded.
To create a new ConditionalNG, click on the Add... button. The Add ConditionalNG window will be displayed.
The system name is required. The system name for a ConditionalNG always begins with the letters IQC. If the entered name does not start with IQC, it will be automatically added. The typical suffix is a number. If Automatically generate System Name is checked, the system name format will be IQC:AUTO:nnnn. Any other format requires adding a $ (dollar) character between IQC and the suffix.
The ConditionalNG system name is not derived from the the parent LogixNG system name. This is different than the Logix procedure.
The user name is optional but recommended. A user name may be any useful text, provided the new user name was not previously assigned to another ConditionalNG in this LogixNG. The user name can be the same as another ConditionalNG that is in a different LogixNG.
Once a ConditionalNG is created, its system name cannot be changed. Its user name may be changed in the Edit LogixNG window. The user name is usually used to provide a more descriptive name, for example, "Signal 5 Control".
After clicking Create, the ConditionalNG will be created and the Edit ConditionalNG window will appear.
During initial startup of a LogixNG, the ConditionalNGs will be executed in sequence. The sequence for subsequent executions is dependent on JMRI change events.
When the Reorder button is pressed, the Edit labels for each row will change to First. After the first ConditionalNG is selected, the label will change to 1 and the remaining labels will change to Next. As each Next is selected, the label will change to the new row number. When all of the Next labels have been selected, the labels will change back to Edit.
When the Execute button is pressed, the ConditionalNG Expressions will be evaluated using the current JMRI states and the appropriate Actions will be performed.
When the Close button is pressed, the Edit LogixNG window will close.
When the Delete button is pressed, the LogixNG, its ConditionalNGs and related content will be deleted. The LogixNG delete confirmation dialog will be displayed.