diff --git a/library/PolyVoxCore/CMakeLists.txt b/library/PolyVoxCore/CMakeLists.txt index 76df58b2..e024eb4f 100644 --- a/library/PolyVoxCore/CMakeLists.txt +++ b/library/PolyVoxCore/CMakeLists.txt @@ -83,7 +83,7 @@ SET(CORE_INC_FILES SET(IMPL_SRC_FILES #source/Impl/ErrorHandling.cpp - source/Impl/Logging.cpp + #source/Impl/Logging.cpp #source/Impl/MarchingCubesTables.cpp #source/Impl/RandomUnitVectors.cpp #source/Impl/RandomVectors.cpp diff --git a/library/PolyVoxCore/include/PolyVoxCore/Impl/Logging.h b/library/PolyVoxCore/include/PolyVoxCore/Impl/Logging.h index e86537c6..a9a3b2b5 100644 --- a/library/PolyVoxCore/include/PolyVoxCore/Impl/Logging.h +++ b/library/PolyVoxCore/include/PolyVoxCore/Impl/Logging.h @@ -70,10 +70,17 @@ namespace PolyVox namespace Impl { - Logger*& getLoggerInstance(); + inline Logger*& getLoggerInstance() + { + static Logger* s_pLogger = new DefaultLogger; + return s_pLogger; + } } - void setLogger(Logger* pLogger); + inline void setLogger(Logger* pLogger) + { + Impl::getLoggerInstance() = pLogger; + } } #ifdef POLYVOX_LOG_TRACE_ENABLED diff --git a/library/PolyVoxCore/source/Impl/Logging.cpp b/library/PolyVoxCore/source/Impl/Logging.cpp deleted file mode 100644 index 74712bb8..00000000 --- a/library/PolyVoxCore/source/Impl/Logging.cpp +++ /dev/null @@ -1,43 +0,0 @@ -/******************************************************************************* -Copyright (c) 2005-2009 David Williams and Matthew Williams - -This software is provided 'as-is', without any express or implied -warranty. In no event will the authors be held liable for any damages -arising from the use of this software. - -Permission is granted to anyone to use this software for any purpose, -including commercial applications, and to alter it and redistribute it -freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you must not - claim that you wrote the original software. If you use this software - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original software. - - 3. This notice may not be removed or altered from any source - distribution. -*******************************************************************************/ - -#include "PolyVoxCore/Impl/Logging.h" - -namespace PolyVox -{ - namespace Impl - { - // Perhaps read this note when we want to move everything - // to the header file: http://stackoverflow.com/a/7834555 - Logger*& getLoggerInstance() - { - static Logger* s_pLogger = new DefaultLogger; - return s_pLogger; - } - } - - void setLogger(Logger* pLogger) - { - Impl::getLoggerInstance() = pLogger; - } -}