void OnModelBayesianNetworkReplaced(IWorkbench workbench)
{
// Update graph inspector.
xGraphInspector.SetGraph(workbench.BayesianNetwork, workbench.BayesianNetworkVariableAbbreviations);
xGraphInspector.SetInterestVariables(null);
// Setup evidence slots for two scenarios, and trigger inference for
// empty evidence set.
Model.Scenarios.Clear();
// Reset inference.
xGraphInspector.SetInferenceResults(null, 1, null);
xGraphInspector.SetInferenceResults(null, 2, null);
if (workbench.BayesianNetwork.VariablesOrdered.All(rv => rv.Distributions.EnumerateDistributions().Any()))
{
Scenario scenario = new Scenario("1", new FObservation(), workbench.BayesianNetwork);
scenario.InferenceUpdated += OnScenarioInferenceUpdated;
scenario.InferenceFinished += OnScenarioInferenceFinished;
Model.Scenarios.Add(scenario);
}
WriteMessage("network loaded");
}