From d0010c4cb9a60b432e0dc540151626e456766d0f Mon Sep 17 00:00:00 2001
From: Geish Miladinovic <geish.miladinovic@ansto.gov.au>
Date: Fri, 14 Dec 2018 13:38:02 +1100
Subject: [PATCH] Emu Ansto workflow support part 2 (no ticket)

---
 .../DataHandling/inc/MantidDataHandling/LoadEMU.h     |  3 ++-
 Framework/DataHandling/src/LoadEMU.cpp                | 11 ++++++-----
 Framework/DataHandling/test/LoadEMUauTest.h           |  8 ++++++--
 3 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/Framework/DataHandling/inc/MantidDataHandling/LoadEMU.h b/Framework/DataHandling/inc/MantidDataHandling/LoadEMU.h
index 67e664d8d99..4a864622728 100644
--- a/Framework/DataHandling/inc/MantidDataHandling/LoadEMU.h
+++ b/Framework/DataHandling/inc/MantidDataHandling/LoadEMU.h
@@ -57,7 +57,7 @@ protected:
 private:
   using Base::exec;
   using Base::init;
-  // region of intreset
+  // region of intereset
   std::vector<bool> createRoiVector(const std::string &seltubes,
                                     const std::string &maskfile);
 
@@ -109,6 +109,7 @@ protected:
 
 // Implemented the two classes explicitly rather than through specialization as
 // the instantiation and linking did not behave consistently across platforms.
+
 extern template class LoadEMU<Kernel::FileDescriptor>;
 extern template class LoadEMU<Kernel::NexusDescriptor>;
 
diff --git a/Framework/DataHandling/src/LoadEMU.cpp b/Framework/DataHandling/src/LoadEMU.cpp
index e1c6998261c..554715ec446 100644
--- a/Framework/DataHandling/src/LoadEMU.cpp
+++ b/Framework/DataHandling/src/LoadEMU.cpp
@@ -35,9 +35,6 @@
 namespace Mantid {
 namespace DataHandling {
 
-// using LoadEMUHdf = LoadEMU<Kernel::NexusDescriptor>;
-// using LoadEMUTar = LoadEMU<Kernel::FileDescriptor>;
-
 namespace {
 
 // number of physical detectors
@@ -1176,12 +1173,14 @@ template <typename FD> void LoadEMU<FD>::loadInstrument() {
   loadInstrumentAlg->executeAsChildAlg();
 }
 
-//--- explicit instantiation and class specialization -------
+//--------- explicit template instantiation -----------
 
 // Instantiate base class for LoadEMU's
 template class LoadEMU<Kernel::FileDescriptor>;
 template class LoadEMU<Kernel::NexusDescriptor>;
 
+// -------- EMU Hdf loader -----------------------
+
 /// Algorithm's version for identification. @see Algorithm::version
 int LoadEMUHdf::version() const { return 1; }
 
@@ -1277,6 +1276,8 @@ void LoadEMUHdf::exec() {
   LoadEMU<Kernel::NexusDescriptor>::exec(hdfFile, evtPath);
 }
 
+// -------- EMU Tar loader -----------------------
+
 /// Algorithm's version for identification. @see Algorithm::version
 int LoadEMUTar::version() const { return 1; }
 
@@ -1292,7 +1293,7 @@ const std::string LoadEMUTar::name() const { return "LoadEMU"; }
 
 /// Algorithm's summary for use in the GUI and help. @see Algorithm::summary
 const std::string LoadEMUTar::summary() const {
-  return "Loads an EMU tar file, that contains the Hdf and event file, into a "
+  return "Loads an EMU tar file, containing the Hdf and event file, into a "
          "workspace.";
 }
 
diff --git a/Framework/DataHandling/test/LoadEMUauTest.h b/Framework/DataHandling/test/LoadEMUauTest.h
index 6f6009fb2e7..4d68a2e734d 100644
--- a/Framework/DataHandling/test/LoadEMUauTest.h
+++ b/Framework/DataHandling/test/LoadEMUauTest.h
@@ -15,13 +15,17 @@
 #include <Poco/Path.h>
 #include <Poco/TemporaryFile.h>
 
+#ifdef _MSC_VER
+// Disable warning on 'no suitable definition ..' as the extern 
+// does not clear the warning. No issue linking. 
+#pragma warning(disable : 4661)
+#endif
+
 using namespace Mantid::API;
 using namespace Mantid::Kernel;
 using namespace Mantid::DataHandling;
 using namespace Mantid::DataObjects;
 
-extern template class Mantid::DataHandling::LoadEMU<FileDescriptor>;
-
 class LoadEMUauTest : public CxxTest::TestSuite {
 public:
   void test_load_emu_algorithm_init() {
-- 
GitLab