2024-10-14 12:14:01 +03:00
|
|
|
|
package _VisualDVM.Passes.All;
|
2024-10-11 00:00:30 +03:00
|
|
|
|
import Common.Visual.UI_;
|
2024-10-12 00:17:51 +03:00
|
|
|
|
import _VisualDVM.Global;
|
2024-10-09 22:21:57 +03:00
|
|
|
|
import _VisualDVM.GlobalData.Settings.SettingName;
|
2024-10-14 12:14:01 +03:00
|
|
|
|
import _VisualDVM.Passes.PassCode;
|
|
|
|
|
|
import _VisualDVM.Passes.Sapfor.SapforAnalysis;
|
2024-10-14 15:19:13 +03:00
|
|
|
|
import _VisualDVM.Visual.UI;
|
2023-09-17 22:13:42 +03:00
|
|
|
|
public class SPF_GetArrayDistribution extends SPF_GetArrayDistributionOnlyAnalysis {
|
|
|
|
|
|
@Override
|
|
|
|
|
|
protected void performDone() throws Exception {
|
|
|
|
|
|
super.performDone();
|
2024-10-14 15:19:13 +03:00
|
|
|
|
SapforAnalysis code_analysis = (SapforAnalysis) Global.mainModule.getPass(PassCode.SPF_GetArrayDistributionOnlyAnalysis);
|
2023-09-17 22:13:42 +03:00
|
|
|
|
if (!code_analysis.isDone()) {
|
|
|
|
|
|
code_analysis.setDone();
|
|
|
|
|
|
code_analysis.MarkAsDone();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
|
|
|
protected void showDone() throws Exception {
|
|
|
|
|
|
super.showDone();
|
|
|
|
|
|
UI.getVersionsWindow().UnblockVariants();
|
|
|
|
|
|
UI.getVersionsWindow().getVariantsWindow().ShowVariants();
|
|
|
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
|
|
|
protected void FocusResult() {
|
|
|
|
|
|
super.FocusResult();
|
|
|
|
|
|
UI.getMainWindow().getProjectWindow().FocusVersions();
|
|
|
|
|
|
UI.getVersionsWindow().FocusDistribution();
|
|
|
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
|
|
|
protected boolean canStart(Object... args) throws Exception {
|
2024-10-12 00:17:51 +03:00
|
|
|
|
if (Global.mainModule.getDb().settings.get(SettingName.MPI_PROGRAM).toBoolean()) {
|
2024-10-11 00:00:30 +03:00
|
|
|
|
UI_.Info("Включена настройка SAPFOR 'MPI программа'." +
|
2023-09-17 22:13:42 +03:00
|
|
|
|
"\nПостроение распределения данных невозможно.");
|
2024-10-13 23:55:03 +03:00
|
|
|
|
Global.mainModule.getPass(PassCode.SPF_SharedMemoryParallelization).Do();
|
2023-09-17 22:13:42 +03:00
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
return super.canStart(args);
|
|
|
|
|
|
}
|
2024-04-02 23:35:54 +03:00
|
|
|
|
@Override
|
|
|
|
|
|
public String getDescription() {
|
2024-10-14 15:19:13 +03:00
|
|
|
|
return Global.mainModule.getPassDescription(getName());
|
2024-04-02 23:35:54 +03:00
|
|
|
|
}
|
2023-09-17 22:13:42 +03:00
|
|
|
|
}
|