From fe44d24c465f393d0cf5d86df2804693c537280d Mon Sep 17 00:00:00 2001
From: Martyn Gigg <martyn.gigg@stfc.ac.uk>
Date: Tue, 18 Mar 2014 08:58:16 +0000
Subject: [PATCH] DataObjects/test pass

Refs #9059
---
 .../MantidDataObjects/AbsManagedWorkspace2D.h |  3 ---
 .../MantidDataObjects/CompressedWorkspace2D.h |  3 ---
 .../inc/MantidDataObjects/EventWorkspace.h    |  8 -------
 .../MantidDataObjects/ManagedDataBlock2D.h    | 11 ----------
 .../MantidDataObjects/MementoTableWorkspace.h | 12 +----------
 .../inc/MantidDataObjects/PeakColumn.h        |  1 -
 .../inc/MantidDataObjects/RebinnedOutput.h    | 11 ----------
 .../MantidDataObjects/SpecialWorkspace2D.h    |  4 ++--
 .../MantidDataObjects/SplittersWorkspace.h    |  1 -
 .../inc/MantidDataObjects/TableColumn.h       |  4 ----
 .../inc/MantidDataObjects/TableWorkspace.h    | 21 ++++---------------
 .../inc/MantidDataObjects/VectorColumn.h      |  6 +-----
 .../inc/MantidDataObjects/Workspace2D.h       | 11 ----------
 .../MantidDataObjects/WorkspaceSingleValue.h  | 11 ----------
 .../DataObjects/src/AbsManagedWorkspace2D.cpp |  3 ---
 .../DataObjects/src/CompressedWorkspace2D.cpp | 10 +++------
 .../DataObjects/src/EventWorkspace.cpp        | 12 +++++------
 .../DataObjects/src/ManagedDataBlock2D.cpp    | 14 ++++++++-----
 .../DataObjects/src/ManagedWorkspace2D.cpp    |  6 ++++++
 .../DataObjects/src/MementoTableWorkspace.cpp |  3 ---
 .../Framework/DataObjects/src/PeakColumn.cpp  |  3 +++
 .../DataObjects/src/RebinnedOutput.cpp        | 18 ++++++----------
 .../DataObjects/src/SpecialWorkspace2D.cpp    | 14 +++++++------
 .../DataObjects/src/SplittersWorkspace.cpp    | 11 +++++-----
 .../DataObjects/src/TableWorkspace.cpp        |  7 +++++--
 .../Framework/DataObjects/src/Workspace2D.cpp |  3 ---
 .../DataObjects/src/WorkspaceSingleValue.cpp  |  3 ---
 .../DataObjects/test/TableWorkspaceTest.h     |  4 ++--
 .../src/WorkspaceCreationHelper.cpp           |  3 +--
 29 files changed, 63 insertions(+), 158 deletions(-)

diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/AbsManagedWorkspace2D.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/AbsManagedWorkspace2D.h
index bc41e094073..4452e2f2356 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/AbsManagedWorkspace2D.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/AbsManagedWorkspace2D.h
@@ -136,9 +136,6 @@ namespace DataObjects
     /// The size in bytes of one block
     std::size_t m_blockSize;
 
-    /// Static reference to the logger class
-    static Kernel::Logger &g_log;
-
     /// Markers used only to track which data blocks to release
     mutable mru_list m_bufferedMarkers;
 
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/CompressedWorkspace2D.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/CompressedWorkspace2D.h
index 7238f214158..43bcc190142 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/CompressedWorkspace2D.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/CompressedWorkspace2D.h
@@ -91,9 +91,6 @@ namespace DataObjects
 
     /// Keeps all compressed data
     mutable CompressedMap m_compressedData;
-
-    /// Static reference to the logger class
-    static Kernel::Logger &g_log;
   };
 
 
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/EventWorkspace.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/EventWorkspace.h
index 9e70badb3db..b53cda350c9 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/EventWorkspace.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/EventWorkspace.h
@@ -8,7 +8,6 @@
 #include "MantidAPI/IEventWorkspace.h"
 #include "MantidAPI/ISpectrum.h"
 #include "MantidDataObjects/EventList.h"
-#include "MantidKernel/Logger.h"
 #include "MantidKernel/System.h"
 #include <boost/date_time/posix_time/posix_time.hpp>
 #include <string>
@@ -18,10 +17,6 @@ namespace Mantid
 //----------------------------------------------------------------------
 // Forward declarations
 //----------------------------------------------------------------------
-namespace Kernel
-{
-  class Logger;
-}
 namespace API
 {
   class Progress;
@@ -194,9 +189,6 @@ private:
    */
   EventListVector data;
 
-  /// Static reference to the logger class
-  static Kernel::Logger & g_log;
-
   /// The number of vectors in the workspace
   std::size_t m_noVectors;
 
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/ManagedDataBlock2D.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/ManagedDataBlock2D.h
index 766d1c4df2e..b3339d32e59 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/ManagedDataBlock2D.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/ManagedDataBlock2D.h
@@ -15,14 +15,6 @@
 namespace Mantid
 {
 
-//----------------------------------------------------------------------
-// Forward declaration
-//----------------------------------------------------------------------
-namespace Kernel
-{
-  class Logger;
-}
-        
 namespace DataObjects
 {
 /** Stores a block of 2D data.
@@ -109,9 +101,6 @@ private:
   
   /// Is the data block initialized or loaded from disk?
   bool m_loaded;
-
-  /// Static reference to the logger class
-  static Kernel::Logger &g_log;
 };
 
 } // namespace DataObjects
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/MementoTableWorkspace.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/MementoTableWorkspace.h
index 9108b6cbd10..946709e720c 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/MementoTableWorkspace.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/MementoTableWorkspace.h
@@ -1,18 +1,9 @@
 #include "MantidDataObjects/TableWorkspace.h"
 #include "MantidAPI/Column.h"
-#include "MantidKernel/System.h"
 
 namespace Mantid
 {
 
-//----------------------------------------------------------------------
-// Forward declarations
-//----------------------------------------------------------------------
-namespace Kernel
-{
-  class Logger;
-}
-
 namespace DataObjects
 {
 
@@ -51,9 +42,8 @@ namespace DataObjects
       MementoTableWorkspace(int nRows=0);
       ~MementoTableWorkspace();
     private:
-      static Kernel::Logger& g_log;
       static bool expectedColumn(Mantid::API::Column_const_sptr expected, Mantid::API::Column_const_sptr candidate);
     };
 
   }
-}
\ No newline at end of file
+}
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/PeakColumn.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/PeakColumn.h
index 8a618c2863f..76ccc58c037 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/PeakColumn.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/PeakColumn.h
@@ -1,7 +1,6 @@
 #ifndef MANTID_DATAOBJECTS_PEAKCOLUMN_H_
 #define MANTID_DATAOBJECTS_PEAKCOLUMN_H_
     
-#include "MantidKernel/System.h"
 #include "MantidAPI/Column.h"
 #include "MantidDataObjects/Peak.h"
 
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/RebinnedOutput.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/RebinnedOutput.h
index f01e260e58c..04e1e2824d8 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/RebinnedOutput.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/RebinnedOutput.h
@@ -3,17 +3,9 @@
 
 #include "MantidAPI/ISpectrum.h"
 #include "MantidDataObjects/Workspace2D.h"
-#include "MantidKernel/System.h"
 
 namespace Mantid
 {
-//----------------------------------------------------------------------
-// Forward declarations
-//----------------------------------------------------------------------
-namespace Kernel
-{
-  class Logger;
-}
 namespace DataObjects
 {
 
@@ -81,9 +73,6 @@ namespace DataObjects
     /// A vector that holds the 1D vectors for the fractional area.
     std::vector<MantidVec> fracArea;
 
-    /// Static reference to the logger class
-    static Kernel::Logger &g_log;
-
   private:
     /// Private copy constructor. NO COPY ALLOWED
     RebinnedOutput(const RebinnedOutput&);
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/SpecialWorkspace2D.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/SpecialWorkspace2D.h
index 6082891e3ea..9942edabd8e 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/SpecialWorkspace2D.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/SpecialWorkspace2D.h
@@ -5,7 +5,6 @@
 #include "MantidAPI/MatrixWorkspace.h"
 #include "MantidDataObjects/Workspace2D.h"
 #include "MantidGeometry/Instrument.h"
-#include "MantidKernel/System.h"
 
 
 namespace Mantid
@@ -24,7 +23,8 @@ namespace DataObjects
    */
 
 
-  class BinaryOperator{
+  class BinaryOperator
+  {
   public:
     enum e {AND, OR, XOR, NOT};
   };
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/SplittersWorkspace.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/SplittersWorkspace.h
index c4cde8c274a..0676db754e7 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/SplittersWorkspace.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/SplittersWorkspace.h
@@ -1,7 +1,6 @@
 #ifndef MANTID_DATAOBJECTS_SPLITTERSWORKSPACE_H_
 #define MANTID_DATAOBJECTS_SPLITTERSWORKSPACE_H_
 
-#include "MantidKernel/System.h"
 #include "MantidAPI/ISplittersWorkspace.h"
 #include "MantidKernel/TimeSplitter.h"
 #include "MantidDataObjects/TableWorkspace.h"
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/TableColumn.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/TableColumn.h
index 3549e4cd394..6f5e3951d43 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/TableColumn.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/TableColumn.h
@@ -247,9 +247,7 @@ public:
     {
         if (this->get() == NULL)
         {
-            Kernel::Logger& log = Kernel::Logger::get("TableWorkspace");
             std::string str = "Data type of column "+c->name()+" does not match "+typeid(T).name();
-            log.error(str);
             throw std::runtime_error(str);
         }
     }
@@ -267,9 +265,7 @@ public:
     {
         if (this->get() == NULL)
         {
-            Kernel::Logger& log = Kernel::Logger::get("TableWorkspace");
             std::string str = "Data type of column "+c->name()+" does not match "+typeid(API::Boolean).name();
-            log.error(str);
             throw std::runtime_error(str);
         }
     }
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/TableWorkspace.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/TableWorkspace.h
index a6d28d805bd..5808c6f1c2f 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/TableWorkspace.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/TableWorkspace.h
@@ -15,14 +15,6 @@
 namespace Mantid
 {
 
-//----------------------------------------------------------------------
-// Forward declarations
-//----------------------------------------------------------------------
-namespace Kernel
-{
-  class Logger;
-}
-
 namespace DataObjects
 {
 /** \class TableWorkspace
@@ -123,8 +115,7 @@ namespace DataObjects
         return pTableCol->data();
       else
       {
-        g_log.error()<<"TableWorkspace::getColVector(): Can not cast to proper TableCol type\n";
-        throw(std::bad_cast());
+        throw std::runtime_error("TableWorkspace::getColVector(): Can not cast to proper TableCol type");
       }
     }
     /** get constant access to column vecotor for index i. */
@@ -136,8 +127,7 @@ namespace DataObjects
         return pTableCol->data();
       else
       {
-        g_log.error()<<"TableWorkspace::getColVector()const: Can not cast to proper TableCol type\n";
-        throw(std::bad_cast());
+        throw std::runtime_error("TableWorkspace::getColVector()const: Can not cast to proper TableCol type");
       }
     }
     /** get access to the column vecotor for column with given name . 
@@ -156,7 +146,7 @@ namespace DataObjects
         return pTableCol->data();
       else
       {
-        throw(std::bad_cast());
+        throw std::runtime_error("TableWorkspace::getColVector(): Can not cast to proper TableCol type");
       }
     }
     /** get access to column vecotor for column with given name  */
@@ -170,8 +160,7 @@ namespace DataObjects
         return pTableCol->data();
       else
       {
-        g_log.error()<<"TableWorkspace::getColVector()const: Can not cast to proper TableCol type\n";
-        throw(std::bad_cast());
+        throw std::runtime_error("TableWorkspace::getColVector()const: Can not cast to proper TableCol type");
       }
     }
     /**Non-throwing access to the pointer to the column data array for the column with given name. Returns null on error or if the coulmn has not been found
@@ -398,8 +387,6 @@ private:
     std::vector< boost::shared_ptr<API::Column> > m_columns;
     /// row count
     size_t m_rowCount;
-    /// Logger
-    static Kernel::Logger& g_log;
 
     /// shared pointer to the logManager, responsible for the workspace properties.   
     API::LogManager_sptr m_LogManager;
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/VectorColumn.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/VectorColumn.h
index 47f4de4b7c6..06ce50efbf9 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/VectorColumn.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/VectorColumn.h
@@ -2,7 +2,6 @@
 #define MANTID_DATAOBJECTS_VECTORCOLUMN_H_
 
 #include "MantidAPI/Column.h"
-#include "MantidKernel/System.h"
 
 #include <boost/algorithm/string/join.hpp>
 #include <boost/tokenizer.hpp>
@@ -14,9 +13,6 @@ namespace Mantid
 namespace DataObjects
 {
 
-  using namespace Kernel;
-  using namespace API;
-
   /** VectorColumn : table column type capable of storing vectors of primitive types.
    
     Plese add more specializations to VectorColumn.cpp as you need them. I don't guarantee
@@ -44,7 +40,7 @@ namespace DataObjects
   */
    
   template <class Type>
-  class DLLExport VectorColumn : public Column
+  class DLLExport VectorColumn : public API::Column
   {
   public:
     VectorColumn() 
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/Workspace2D.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/Workspace2D.h
index bd407b59a88..5966099cbc9 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/Workspace2D.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/Workspace2D.h
@@ -11,14 +11,6 @@
 namespace Mantid
 {
 
-//----------------------------------------------------------------------
-// Forward declarations
-//----------------------------------------------------------------------
-namespace Kernel
-{
-  class Logger;
-}
-
 namespace DataObjects
 {
 /** \class Workspace2D
@@ -97,9 +89,6 @@ protected:
   /// A vector that holds the 1D histograms
   std::vector<Mantid::API::ISpectrum *> data;
 
-  /// Static reference to the logger class
-  static Kernel::Logger &g_log;
-
 private:
   /// Private copy constructor. NO COPY ALLOWED
   Workspace2D(const Workspace2D&);
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/WorkspaceSingleValue.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/WorkspaceSingleValue.h
index a4fbda2bfcd..b32b79c4028 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/WorkspaceSingleValue.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/WorkspaceSingleValue.h
@@ -10,14 +10,6 @@
 namespace Mantid
 {
 
-//----------------------------------------------------------------------
-// Forward Declaration
-//----------------------------------------------------------------------
-namespace Kernel
-{
-  class Logger;
-}
-
 namespace DataObjects
 {
 /** Concrete workspace implementation. Data is a single double value
@@ -88,9 +80,6 @@ private:
 
   /// Instance of Histogram1D that holds the "spectrum" (AKA the single value);
   Histogram1D data;
-
-  /// Static reference to the logger class
-  static Kernel::Logger &g_log;
 };
 
   ///shared pointer to the WorkspaceSingleValue class
diff --git a/Code/Mantid/Framework/DataObjects/src/AbsManagedWorkspace2D.cpp b/Code/Mantid/Framework/DataObjects/src/AbsManagedWorkspace2D.cpp
index 03d2de5ae5c..eb3b62ba560 100644
--- a/Code/Mantid/Framework/DataObjects/src/AbsManagedWorkspace2D.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/AbsManagedWorkspace2D.cpp
@@ -26,9 +26,6 @@ namespace DataObjects
 
 using std::size_t;
 
-// Get a reference to the logger
-Kernel::Logger& AbsManagedWorkspace2D::g_log = Kernel::Logger::get("AbsManagedWorkspace2D");
-
 
 /// Constructor
 AbsManagedWorkspace2D::AbsManagedWorkspace2D() :
diff --git a/Code/Mantid/Framework/DataObjects/src/CompressedWorkspace2D.cpp b/Code/Mantid/Framework/DataObjects/src/CompressedWorkspace2D.cpp
index 4787ee7f41f..e36d865c559 100644
--- a/Code/Mantid/Framework/DataObjects/src/CompressedWorkspace2D.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/CompressedWorkspace2D.cpp
@@ -16,9 +16,6 @@ using std::size_t;
 
 DECLARE_WORKSPACE(CompressedWorkspace2D)
 
-// Get a reference to the logger
-Kernel::Logger& CompressedWorkspace2D::g_log = Kernel::Logger::get("CompressedWorkspace2D");
-
 /// Constructor
 CompressedWorkspace2D::CompressedWorkspace2D() :
 AbsManagedWorkspace2D()
@@ -33,8 +30,6 @@ AbsManagedWorkspace2D()
 */
 void CompressedWorkspace2D::init(const std::size_t &NVectors, const std::size_t &XLength, const std::size_t &YLength)
 {
-  g_log.information("Creating a CompressedWorkspace2D");
-
   AbsManagedWorkspace2D::init(NVectors,XLength,YLength);
   m_vectorSize = ( m_XLength + ( 2*m_YLength ) ) * sizeof(double);
 
@@ -175,8 +170,9 @@ void CompressedWorkspace2D::uncompressBlock(ManagedDataBlock2D* block,std::size_
 
   if (nBuff != m_vectorSize * m_vectorsPerBlock)
   {
-    g_log.error()<<"Unequal sizes: " <<nBuff<<" != "<<m_vectorSize * m_vectorsPerBlock<<'\n';
-    throw std::runtime_error("");
+    std::stringstream os;
+    os << "Unequal sizes: " << nBuff << " != " << m_vectorSize * m_vectorsPerBlock << '\n';
+    throw std::runtime_error(os.str());
   }
 
   double* out = reinterpret_cast<double*>(&m_outBuffer[0]);
diff --git a/Code/Mantid/Framework/DataObjects/src/EventWorkspace.cpp b/Code/Mantid/Framework/DataObjects/src/EventWorkspace.cpp
index 3723b5f602b..ecef3ebc006 100644
--- a/Code/Mantid/Framework/DataObjects/src/EventWorkspace.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/EventWorkspace.cpp
@@ -24,6 +24,11 @@ namespace Mantid
 {
 namespace DataObjects
 {
+  namespace
+  {
+    // static logger
+    Kernel::Logger g_log("EventWorkspace");
+  }
 
   DECLARE_WORKSPACE(EventWorkspace)
 
@@ -31,13 +36,9 @@ namespace DataObjects
   using std::size_t;
   using namespace Mantid::Kernel;
 
-  // get a reference to the logger
-  Kernel::Logger& EventWorkspace::g_log
-                 = Kernel::Logger::get("EventWorkspace");
 
   //---- Constructors -------------------------------------------------------------------
-  EventWorkspace::EventWorkspace() :
-      mru(new EventWorkspaceMRU)
+  EventWorkspace::EventWorkspace() : mru(new EventWorkspaceMRU)
   {
   }
 
@@ -74,7 +75,6 @@ namespace DataObjects
     // Check validity of arguments
     if (NVectors <= 0)
     {
-      g_log.error("Negative or 0 Number of Pixels specified to EventWorkspace::init");
       throw std::out_of_range("Negative or 0 Number of Pixels specified to EventWorkspace::init");
     }
     //Initialize the data
diff --git a/Code/Mantid/Framework/DataObjects/src/ManagedDataBlock2D.cpp b/Code/Mantid/Framework/DataObjects/src/ManagedDataBlock2D.cpp
index 13349f2f408..f5e56b78689 100644
--- a/Code/Mantid/Framework/DataObjects/src/ManagedDataBlock2D.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/ManagedDataBlock2D.cpp
@@ -14,11 +14,15 @@ namespace Mantid
 {
 namespace DataObjects
 {
+  namespace
+  {
+    /// static logger
+    Kernel::Logger g_log("ManagedDataBlock2D");
+  }
 
 using std::size_t;
 
-// Get a reference to the logger
-Kernel::Logger& ManagedDataBlock2D::g_log = Kernel::Logger::get("ManagedDataBlock2D");
+
 
 /** Constructor.
  *  @param minIndex :: The index of the workspace that this data block starts at
@@ -152,19 +156,19 @@ std::fstream& operator<<(std::fstream& fs, ManagedDataBlock2D& data)
     if (it->directDataX().size() != data.m_XLength)
     {
       it->directDataX().resize(data.m_XLength, 0.0);
-      ManagedDataBlock2D::g_log.warning() << "X vector resized to " << data.m_XLength << " elements.";
+      g_log.warning() << "X vector resized to " << data.m_XLength << " elements.";
     }
     fs.write(reinterpret_cast<char *>(&(it->directDataX().front())), data.m_XLength * sizeof(double));
     if (it->directDataY().size() != data.m_YLength)
     {
       it->directDataY().resize(data.m_YLength, 0.0);
-      ManagedDataBlock2D::g_log.warning() << "Y vector resized to " << data.m_YLength << " elements.";
+      g_log.warning() << "Y vector resized to " << data.m_YLength << " elements.";
     }
     fs.write(reinterpret_cast<char *>(&(it->directDataY().front())), data.m_YLength * sizeof(double));
     if (it->directDataE().size() != data.m_YLength)
     {
       it->directDataE().resize(data.m_YLength, 0.0);
-      ManagedDataBlock2D::g_log.warning() << "E vector resized to " << data.m_YLength << " elements.";
+      g_log.warning() << "E vector resized to " << data.m_YLength << " elements.";
     }
     fs.write(reinterpret_cast<char *>(&(it->directDataE().front())), data.m_YLength * sizeof(double));
     
diff --git a/Code/Mantid/Framework/DataObjects/src/ManagedWorkspace2D.cpp b/Code/Mantid/Framework/DataObjects/src/ManagedWorkspace2D.cpp
index b47d1f20049..07b69836b2e 100644
--- a/Code/Mantid/Framework/DataObjects/src/ManagedWorkspace2D.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/ManagedWorkspace2D.cpp
@@ -14,6 +14,12 @@ namespace Mantid
 namespace DataObjects
 {
 
+  namespace
+  {
+    /// static logger
+    Kernel::Logger g_log("ManagedWorkspace2D");
+  }
+
 using std::size_t;
 
 DECLARE_WORKSPACE(ManagedWorkspace2D)
diff --git a/Code/Mantid/Framework/DataObjects/src/MementoTableWorkspace.cpp b/Code/Mantid/Framework/DataObjects/src/MementoTableWorkspace.cpp
index cd9520485cb..bd3d3604522 100644
--- a/Code/Mantid/Framework/DataObjects/src/MementoTableWorkspace.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/MementoTableWorkspace.cpp
@@ -57,9 +57,6 @@ namespace Mantid
       return true;
     }
 
-    // Get a reference to the logger
-    Kernel::Logger& MementoTableWorkspace::g_log = Kernel::Logger::get("MementoTableWorkspace");
-
     /// Constructor
     MementoTableWorkspace::MementoTableWorkspace(int nRows) : TableWorkspace(nRows) 
     {
diff --git a/Code/Mantid/Framework/DataObjects/src/PeakColumn.cpp b/Code/Mantid/Framework/DataObjects/src/PeakColumn.cpp
index 5723830c76e..3af1ab4540e 100644
--- a/Code/Mantid/Framework/DataObjects/src/PeakColumn.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/PeakColumn.cpp
@@ -15,6 +15,9 @@ namespace DataObjects
 {
   namespace
   {
+    /// static logger
+    Kernel::Logger g_log("PeakColumn");
+
     /// Number of items to keep around in the cell cache (see void_pointer())
     size_t NCELL_ITEM_CACHED = 100;
     /// Type lookup: key=name,value=type. Moved here from static inside typeFromName
diff --git a/Code/Mantid/Framework/DataObjects/src/RebinnedOutput.cpp b/Code/Mantid/Framework/DataObjects/src/RebinnedOutput.cpp
index cb349682598..51eb38f12e8 100644
--- a/Code/Mantid/Framework/DataObjects/src/RebinnedOutput.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/RebinnedOutput.cpp
@@ -5,17 +5,18 @@
 #include <algorithm>
 #include <iostream>
 
-//using namespace Mantid::Kernel;
-//using namespace Mantid::API;
 
 namespace Mantid
 {
 namespace DataObjects
 {
-  DECLARE_WORKSPACE(RebinnedOutput)
+  namespace
+  {
+    /// static logger
+    Kernel::Logger g_log("RebinnedOutput");
+  }
 
-  // Get a reference to the logger
-  Kernel::Logger& RebinnedOutput::g_log = Kernel::Logger::get("RebinnedOutput");
+  DECLARE_WORKSPACE(RebinnedOutput)
 
   RebinnedOutput::RebinnedOutput() : Workspace2D()
   {
@@ -23,13 +24,6 @@ namespace DataObjects
     
   RebinnedOutput::~RebinnedOutput()
   {
-    /*
-    // Clear out the memory
-    for (std::size_t i = 0; i < this->fracArea.size(); i++)
-    {
-      delete this->fracArea[i];
-    }
-    */
   }
   
   /**
diff --git a/Code/Mantid/Framework/DataObjects/src/SpecialWorkspace2D.cpp b/Code/Mantid/Framework/DataObjects/src/SpecialWorkspace2D.cpp
index 0e1c1681db5..09d8aca8ad5 100644
--- a/Code/Mantid/Framework/DataObjects/src/SpecialWorkspace2D.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/SpecialWorkspace2D.cpp
@@ -1,5 +1,4 @@
 #include "MantidDataObjects/SpecialWorkspace2D.h"
-#include "MantidKernel/System.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidAPI/SpectraAxis.h"
 
@@ -15,6 +14,11 @@ namespace Mantid
 namespace DataObjects
 {
 
+  namespace
+  {
+    Kernel::Logger g_log("SpecialWorkspace2D");
+  }
+
   //Register the workspace
   DECLARE_WORKSPACE(SpecialWorkspace2D)
 
@@ -121,18 +125,16 @@ namespace DataObjects
    */
   double SpecialWorkspace2D::getValue(const detid_t detectorID) const
   {
-    // std::cout << "\ngetValue():  " << this->getNumberHistograms() << "  Map Size = " << this->detID_to_WI.size() << std::endl;
-
     std::map<detid_t,size_t>::const_iterator it = detID_to_WI.find(detectorID);
 
     if (it == detID_to_WI.end())
     {
-      g_log.error() << "Error!  SpecialWorkspace2D: " << this->getName() << "  Detector ID = " << detectorID << "  Size(Map) = " << this->detID_to_WI.size() << std::endl;
-      throw std::invalid_argument("SpecialWorkspace2D::getValue(): Invalid detectorID provided.");
+      std::ostringstream os;
+      os << "SpecialWorkspace2D: " << this->getName() << "  Detector ID = " << detectorID << "  Size(Map) = " << this->detID_to_WI.size() << std::endl;
+      throw std::invalid_argument(os.str());
     }
     else
     {
-      // std::cout << "Spectrum ID = " << it->second << "   Total Number (Histogram) = " << this->getNumberHistograms() << std::endl;
       return this->dataY(it->second)[0];
     }
   }
diff --git a/Code/Mantid/Framework/DataObjects/src/SplittersWorkspace.cpp b/Code/Mantid/Framework/DataObjects/src/SplittersWorkspace.cpp
index 7eea312d8ce..2fa088059d0 100644
--- a/Code/Mantid/Framework/DataObjects/src/SplittersWorkspace.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/SplittersWorkspace.cpp
@@ -1,5 +1,4 @@
 #include "MantidDataObjects/SplittersWorkspace.h"
-#include "MantidKernel/System.h"
 #include "MantidAPI/Column.h"
 #include "MantidAPI/TableRow.h"
 #include "MantidKernel/IPropertyManager.h"
@@ -11,9 +10,11 @@ namespace Mantid
 {
 namespace DataObjects
 {
-
-  Kernel::Logger& mg_log = Kernel::Logger::get("ITableWorkspace");
-
+  namespace
+  {
+    /// static logger
+    Kernel::Logger g_log("SplittersWorkspace");
+  }
   //----------------------------------------------------------------------------------------------
   /** Constructor
    */
@@ -70,7 +71,7 @@ namespace DataObjects
     bool removed;
     if (index >= this->rowCount())
     {
-      mg_log.error() << "Try to delete a non-existing splitter " << index << std::endl;
+      g_log.error() << "Try to delete a non-existing splitter " << index << std::endl;
       removed = false;
     }
     else
diff --git a/Code/Mantid/Framework/DataObjects/src/TableWorkspace.cpp b/Code/Mantid/Framework/DataObjects/src/TableWorkspace.cpp
index 1cbc0f6808c..d6b8c996b20 100644
--- a/Code/Mantid/Framework/DataObjects/src/TableWorkspace.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/TableWorkspace.cpp
@@ -10,11 +10,14 @@ namespace Mantid
 {
   namespace DataObjects
   {
+    namespace
+    {
+      /// static logger
+      Kernel::Logger g_log("TableWorkspace");
+    }
 
     DECLARE_WORKSPACE(TableWorkspace)
 
-    // Get a reference to the logger
-    Kernel::Logger& TableWorkspace::g_log = Kernel::Logger::get("TableWorkspace");
 
     /// Constructor
     TableWorkspace::TableWorkspace(size_t nrows) : ITableWorkspace(), m_rowCount(0),
diff --git a/Code/Mantid/Framework/DataObjects/src/Workspace2D.cpp b/Code/Mantid/Framework/DataObjects/src/Workspace2D.cpp
index 618090214a8..14c77c76d76 100644
--- a/Code/Mantid/Framework/DataObjects/src/Workspace2D.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/Workspace2D.cpp
@@ -17,9 +17,6 @@ namespace Mantid
 
     DECLARE_WORKSPACE(Workspace2D)
 
-    // Get a reference to the logger
-    Kernel::Logger& Workspace2D::g_log = Kernel::Logger::get("Workspace2D");
-
     /// Constructor
     Workspace2D::Workspace2D()
     {}
diff --git a/Code/Mantid/Framework/DataObjects/src/WorkspaceSingleValue.cpp b/Code/Mantid/Framework/DataObjects/src/WorkspaceSingleValue.cpp
index 022c07fbdd7..db3e4af7f48 100644
--- a/Code/Mantid/Framework/DataObjects/src/WorkspaceSingleValue.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/WorkspaceSingleValue.cpp
@@ -11,9 +11,6 @@ namespace Mantid
 
     DECLARE_WORKSPACE(WorkspaceSingleValue)
 
-    // Get a reference to the logger
-    Kernel::Logger& WorkspaceSingleValue::g_log = Kernel::Logger::get("WorkspaceSingleValue");
-
     /// Constructor
     WorkspaceSingleValue::WorkspaceSingleValue(double value,double error) :
         API::MatrixWorkspace()
diff --git a/Code/Mantid/Framework/DataObjects/test/TableWorkspaceTest.h b/Code/Mantid/Framework/DataObjects/test/TableWorkspaceTest.h
index 81637ea2262..04b77d62579 100644
--- a/Code/Mantid/Framework/DataObjects/test/TableWorkspaceTest.h
+++ b/Code/Mantid/Framework/DataObjects/test/TableWorkspaceTest.h
@@ -359,7 +359,7 @@ public:
 
 
     std::vector<size_t> &SizeTData = tw.getColVector<size_t>("SizeT");
-    TS_ASSERT_THROWS(tw.getColVector<int>("Double"),std::bad_cast);
+    TS_ASSERT_THROWS(tw.getColVector<int>("Double"),std::runtime_error);
     std::vector<double> &DoublData = tw.getColVector<double>("Double");
     std::vector<std::string> &StrData = tw.getColVector<std::string>("String");
 
@@ -375,7 +375,7 @@ public:
     StrData[2] = "3";
 
     auto SizeTDataI = tw.getColVector<size_t>(0);
-    TS_ASSERT_THROWS(tw.getColVector<int>(1),std::bad_cast);
+    TS_ASSERT_THROWS(tw.getColVector<int>(1),std::runtime_error);
     auto DoublDataI = tw.getColVector<double>(1);
     auto StrDataI = tw.getColVector<std::string>(2);
 
diff --git a/Code/Mantid/Framework/TestHelpers/src/WorkspaceCreationHelper.cpp b/Code/Mantid/Framework/TestHelpers/src/WorkspaceCreationHelper.cpp
index ea2ea839ecf..33b40c803c3 100644
--- a/Code/Mantid/Framework/TestHelpers/src/WorkspaceCreationHelper.cpp
+++ b/Code/Mantid/Framework/TestHelpers/src/WorkspaceCreationHelper.cpp
@@ -39,8 +39,7 @@ namespace WorkspaceCreationHelper
   using namespace Mantid::Geometry;
   using Mantid::MantidVec;
   using Mantid::MantidVecPtr;
-  // mock algorighm
-  Kernel::Logger& MockAlgorithm::g_log =Logger::get("test-Algorithms");
+
   MockAlgorithm::MockAlgorithm(size_t nSteps)
   {
       m_Progress = std::auto_ptr<API::Progress >(new API::Progress(this,0,1,nSteps));
-- 
GitLab