From 417c94a28fde8824e0de3ead918b55781293e6b8 Mon Sep 17 00:00:00 2001
From: ralfulrich <ralf.ulrich@kit.edu>
Date: Thu, 16 Jul 2020 11:02:55 +0200
Subject: [PATCH] replace function by subroutine

---
 readLib/corsika_data/Interface.h  | 12 ++++++------
 readLib/source/Interface.boost.cc | 22 +++++++++++-----------
 readLib/source/Interface.dummy.cc | 20 ++++++++++----------
 readLib/source/testData.cc        |  9 ++++++---
 4 files changed, 33 insertions(+), 30 deletions(-)

diff --git a/readLib/corsika_data/Interface.h b/readLib/corsika_data/Interface.h
index 717e923..0e902fd 100644
--- a/readLib/corsika_data/Interface.h
+++ b/readLib/corsika_data/Interface.h
@@ -26,11 +26,11 @@ namespace corsika_data {
 
   // the fortran interface functions
   extern "C" {
-  void cordataopenfile_(const char* name);
-  void cordatafillarray_(double* data, const int& length);
-  void cordataclosefile_();
-  double cordatanextnumber_();
-  void cordatanexttext_(char* data, int maxlength);
-  int cordatacandecompress_();
+    void cordataopenfile_(const char*);
+    void cordatafillarray_(double*, const int&);
+    void cordataclosefile_();
+    double cordatanextnumber_();
+    void cordatanexttext_(char*, int);
+    void cordatacandecompress_(int&);
   }
 } // namespace corsika_data
diff --git a/readLib/source/Interface.boost.cc b/readLib/source/Interface.boost.cc
index acf3442..f1195ff 100644
--- a/readLib/source/Interface.boost.cc
+++ b/readLib/source/Interface.boost.cc
@@ -72,17 +72,17 @@ namespace corsika_data {
     for (int i = 0; i < maxlength && i < (int)STR.size(); ++i) data[i] = STR[i];
   }
   bool CorDataCanDeCompress() { return true; }
-
+  
   extern "C" {
-  void cordataopenfile_(const char* name) { CorDataOpenFile(name); }
-  void cordatafillarray_(double* data, const int& length) {
-    global_DataFile.FillArray(data, length);
-  }
-  double cordatanextnumber_() { return global_DataFile.ReadNextNumber(); }
-  void cordatanexttext_(char* data, const int maxlength) {
-    return CorDataNextText(data, maxlength);
-  }
-  void cordataclosefile_() { global_DataFile.Close(); }
-  int cordatacandecompress_() { return 1; }
+    void cordataopenfile_(const char* name) { CorDataOpenFile(name); }
+    void cordatafillarray_(double* data, const int& length) {
+      global_DataFile.FillArray(data, length);
+    }
+    double cordatanextnumber_() { return global_DataFile.ReadNextNumber(); }
+    void cordatanexttext_(char* data, const int maxlength) {
+      return CorDataNextText(data, maxlength);
+    }
+    void cordataclosefile_() { global_DataFile.Close(); }
+    void cordatacandecompress_(int& v) { v=1; }
   }
 } // namespace corsika_data
diff --git a/readLib/source/Interface.dummy.cc b/readLib/source/Interface.dummy.cc
index 5696237..527a0e1 100644
--- a/readLib/source/Interface.dummy.cc
+++ b/readLib/source/Interface.dummy.cc
@@ -36,15 +36,15 @@ namespace corsika_data {
 
   // the fortran interface functions
   extern "C" {
-  void cordataopenfile_(const char* name) { CorDataOpenFile(name); }
-  void cordatafillarray_(double* data, const int& length) {
-    CorDataFillArray(data, length);
-  }
-  void cordataclosefile_() { CorDataCloseFile(); }
-  double cordatanextnumber_() { return CorDataNextNumber(); }
-  void cordatanexttext_(char*, int) {
-    throw std::runtime_error("cordatanexttext_: Cannot read compressed data files with dummy library.");
-  }
-  int cordatacandecompress_() { return 0; }
+    void cordataopenfile_(const char* name) { CorDataOpenFile(name); }
+    void cordatafillarray_(double* data, const int& length) {
+      CorDataFillArray(data, length);
+    }
+    void cordataclosefile_() { CorDataCloseFile(); }
+    double cordatanextnumber_() { return CorDataNextNumber(); }
+    void cordatanexttext_(char*, int) {
+      throw std::runtime_error("cordatanexttext_: Cannot read compressed data files with dummy library.");
+    }
+    void cordatacandecompress_(int& v) { v=0; }
   }
 } // namespace corsika_data
diff --git a/readLib/source/testData.cc b/readLib/source/testData.cc
index bab6a16..95af686 100644
--- a/readLib/source/testData.cc
+++ b/readLib/source/testData.cc
@@ -60,8 +60,9 @@ TEST_CASE("Data", "[data]") {
   }
 
   SECTION(std::string("fortran, ") + file) {
-    bool b = cordatacandecompress_();
-    CHECK(b == true);
+    int i=0;
+    cordatacandecompress_(i);
+    CHECK(i == 1);
     cout << "Reading: " << file << endl;
     cordataopenfile_(file.c_str());
     char str[10];
@@ -107,7 +108,9 @@ TEST_CASE("Data", "[data]") {
     CHECK_THROWS(d = cordatanextnumber_());
     char* buf = 0;
     CHECK_THROWS(cordatanexttext_(buf, 0));
-    CHECK(cordatacandecompress_() == 0);
+    int i= 0;
+    cordatacandecompress_(i);
+    CHECK( i == 0);
   }
 
 #endif
-- 
GitLab