From a49324d3ab4c9693f1271280b6e8f3170d96f492 Mon Sep 17 00:00:00 2001
From: Rico Bergmann <rico.bergmann1@tu-dresden.de>
Date: Thu, 20 Jun 2019 15:09:47 +0200
Subject: [PATCH] Switch between output for BDD and BDT if necessary

---
 solutions/RSync/src/main/scala/MainApp.scala              | 8 +++++++-
 .../RSync/src/main/scala/ttc2019/CompleteTTCProcess.scala | 3 ++-
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/solutions/RSync/src/main/scala/MainApp.scala b/solutions/RSync/src/main/scala/MainApp.scala
index d51f4f8..8628f49 100644
--- a/solutions/RSync/src/main/scala/MainApp.scala
+++ b/solutions/RSync/src/main/scala/MainApp.scala
@@ -15,6 +15,8 @@ object MainApp extends App {
   private val modelPath = sys.env.get("ModelPath")
   private val benchmarkInfo = fetchBenchmarkInfo()
 
+  println()
+
   if (modelPath.isEmpty) {
     sys.error("Expected model to convert in the ModelPath environment variable")
   }
@@ -44,7 +46,11 @@ object MainApp extends App {
     benchmarkingService.start()
     CompleteTTCProcess.run()
     benchmarkDuration = benchmarkingService.stop()
-    reportingService.report(benchmarkInfo, Run, benchmarkDuration, Some(MetricMeasurement.printMetricsBDT()))
+    if (CompleteTTCProcess.bdt) {
+      reportingService.report(benchmarkInfo, Run, benchmarkDuration, Some(MetricMeasurement.printMetricsBDT()))
+    } else {
+      reportingService.report(benchmarkInfo, Run, benchmarkDuration, Some(MetricMeasurement.printMetricsBDD()))
+    }
   })
 
   /** Retrieves information about the benchmark that should be executed.
diff --git a/solutions/RSync/src/main/scala/ttc2019/CompleteTTCProcess.scala b/solutions/RSync/src/main/scala/ttc2019/CompleteTTCProcess.scala
index 82dfc48..20cbcd2 100644
--- a/solutions/RSync/src/main/scala/ttc2019/CompleteTTCProcess.scala
+++ b/solutions/RSync/src/main/scala/ttc2019/CompleteTTCProcess.scala
@@ -24,6 +24,7 @@ object CompleteTTCProcess extends App {
   var validator: Launcher = _
   var saver: TruthTable = _
   var processConfig: TTCProcessConfiguration = _
+  var bdt: Boolean = _
 
   /**
    * Performs necessary setup instructions such as loading the ecore meta-model.
@@ -32,7 +33,7 @@ object CompleteTTCProcess extends App {
    */
   def initialize(processConfig: TTCProcessConfiguration): Unit = {
     val sync = true
-    val bdt = false
+    bdt = false
     loader = new TTCLoader
     validator = new Launcher
     if (sync) {
-- 
GitLab