From b430bf0c5ec35c2f98b65093e8b52a61dce15a14 Mon Sep 17 00:00:00 2001
From: apvrille <ludovic.apvrille@eurecom.fr>
Date: Tue, 5 Mar 2019 15:23:25 +0100
Subject: [PATCH] Update on MEC operation in TMLArtifact

---
 src/main/java/tmltranslator/HwExecutionNode.java     |  1 -
 .../modelcompiler/TMLModelCompiler.java              |  2 ++
 src/main/java/ui/tmldd/TMLArchiArtifact.java         | 12 ++++++------
 src/main/java/ui/window/JDialogCCodeGeneration.java  | 12 ++++++++++--
 4 files changed, 18 insertions(+), 9 deletions(-)

diff --git a/src/main/java/tmltranslator/HwExecutionNode.java b/src/main/java/tmltranslator/HwExecutionNode.java
index 16098af880..2b354583e1 100755
--- a/src/main/java/tmltranslator/HwExecutionNode.java
+++ b/src/main/java/tmltranslator/HwExecutionNode.java
@@ -61,7 +61,6 @@ public abstract class HwExecutionNode extends HwNode  {
 
     public HwExecutionNode(String _name) {
         super(_name);
-
     }
 
     public abstract String getType();
diff --git a/src/main/java/tmltranslator/modelcompiler/TMLModelCompiler.java b/src/main/java/tmltranslator/modelcompiler/TMLModelCompiler.java
index 33ca9a9c99..cf2c3c6cca 100644
--- a/src/main/java/tmltranslator/modelcompiler/TMLModelCompiler.java
+++ b/src/main/java/tmltranslator/modelcompiler/TMLModelCompiler.java
@@ -710,6 +710,7 @@ public class TMLModelCompiler implements CCodeGenConstants {
                 outBuff = op.getOutBuffer();
                 ctxName = op.getContextName();
                 int xTaskOperationType = xTask.getOperationType();
+                TraceManager.addDev("TaskType for  task " + xTask.getTaskName() + " op: " + xTaskOperationType);
                 if (declaration) {
                     if (inBuff == null) {       //for source operation
                         buffersString.append("extern" + SP + outBuff.getType() + SP + outBuff.getName() + SC + CR);
@@ -943,6 +944,7 @@ public class TMLModelCompiler implements CCodeGenConstants {
         //TMLTask fTask =       op.getSDRTasks().get( Operation.F_TASK );
 
         int xTaskOperationType = xTask.getOperationType();
+        TraceManager.addDev("OperationType of " + xTask.getTaskName() + " = " + xTaskOperationType);
 
         if (op.getOutSignal() != null) {
             signalOutName = op.getOutSignal().getName();
diff --git a/src/main/java/ui/tmldd/TMLArchiArtifact.java b/src/main/java/ui/tmldd/TMLArchiArtifact.java
index 6ae484e6fa..59be329293 100755
--- a/src/main/java/ui/tmldd/TMLArchiArtifact.java
+++ b/src/main/java/ui/tmldd/TMLArchiArtifact.java
@@ -356,26 +356,26 @@ public class TMLArchiArtifact extends TGCWithoutInternalComponent implements Swa
     public int getOperationType()       {
 
         if( fatherArchUnitMECType instanceof FepMEC )   {
-            if( operation.equals( "CWM" ) )     {
+            if( operationMEC.equals( "CWM" ) )     {
                 return FepOperationMEC.CWM_MEC;
             }
-            else if( operation.equals( "CWL" ) )        {
+            else if( operationMEC.equals( "CWL" ) )        {
                 //TraceManager.addDev( "Operation: " + operation + " returns " + FepOperationMEC.CwlMEC );
                 return FepOperationMEC.CWL_MEC;
             }
-            else if( operation.equals( "CWA" ) )        {
+            else if( operationMEC.equals( "CWA" ) )        {
                 //TraceManager.addDev( "Operation: " + operation + " returns " + FepOperationMEC.CwaMEC );
                 return FepOperationMEC.CWA_MEC;
             }
-            else if( operation.equals( "CWP" ) )        {
+            else if( operationMEC.equals( "CWP" ) )        {
                 //TraceManager.addDev( "Operation: " + operation + " returns " + FepOperationMEC.CwpMEC );
                 return FepOperationMEC.CWP_MEC;
             }
-            else if( operation.equals( "FFT" ) )        {
+            else if( operationMEC.equals( "FFT" ) )        {
                 //TraceManager.addDev( "Operation: " + operation + " returns " + FepOperationMEC.FftMEC );
                 return FepOperationMEC.FFT_MEC;
             }
-            else if( operation.equals( "SUM" ) )        {
+            else if( operationMEC.equals( "SUM" ) )        {
                 //TraceManager.addDev( "Operation: " + operation + " returns " + FepOperationMEC.SumMEC );
                 return FepOperationMEC.SUM_MEC;
             }
diff --git a/src/main/java/ui/window/JDialogCCodeGeneration.java b/src/main/java/ui/window/JDialogCCodeGeneration.java
index 6aacd52243..e2a4a2f93e 100644
--- a/src/main/java/ui/window/JDialogCCodeGeneration.java
+++ b/src/main/java/ui/window/JDialogCCodeGeneration.java
@@ -124,6 +124,8 @@ public class JDialogCCodeGeneration extends JDialog implements ActionListener, R
     private boolean hasError = false;
     protected boolean startProcess = false;
 
+    protected static int selectedcodeGenerator = -1;
+
     private String hostSystemC;
 
     protected RshClient rshc;
@@ -228,10 +230,15 @@ public class JDialogCCodeGeneration extends JDialog implements ActionListener, R
         fillGeneratorsWithPlugins(generators);
 
         generatorsBox = new JComboBox<>(generators);
-        if (generators.size() > 1) {
-            generatorsBox.setSelectedIndex(1);
+        if (selectedcodeGenerator == -1) {
+            if (generators.size() > 1) {
+                generatorsBox.setSelectedIndex(1);
+            }
+        } else {
+            generatorsBox.setSelectedIndex(selectedcodeGenerator);
         }
 
+
         // Drawing image
         picLabel = new JLabel();
         picLabel.setHorizontalAlignment(SwingConstants.CENTER);
@@ -375,6 +382,7 @@ public class JDialogCCodeGeneration extends JDialog implements ActionListener, R
         }
         //optimizeModeSelected = optimizemode.isSelected();
         //wasClosed = true;
+        selectedcodeGenerator = generatorsBox.getSelectedIndex();
         dispose();
     }
     //
-- 
GitLab