diff options
Diffstat (limited to 'boost/gil/extension/io/tiff/detail/log.hpp')
-rw-r--r-- | boost/gil/extension/io/tiff/detail/log.hpp | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/boost/gil/extension/io/tiff/detail/log.hpp b/boost/gil/extension/io/tiff/detail/log.hpp new file mode 100644 index 0000000000..965a576d28 --- /dev/null +++ b/boost/gil/extension/io/tiff/detail/log.hpp @@ -0,0 +1,77 @@ +/* + Copyright 2009 Christian Henning + Use, modification and distribution are subject to the Boost Software License, + Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at + http://www.boost.org/LICENSE_1_0.txt). +*/ + +/*************************************************************************************************/ + +#ifndef BOOST_GIL_EXTENSION_IO_TIFF_DETAIL_LOG_HPP +#define BOOST_GIL_EXTENSION_IO_TIFF_DETAIL_LOG_HPP + +//////////////////////////////////////////////////////////////////////////////////////// +/// \file +/// \brief +/// \author Christian Henning \n +/// +/// \date 2009 \n +/// +//////////////////////////////////////////////////////////////////////////////////////// + +extern "C" { +#include "tiffio.h" +} + +#include <iostream> + +namespace boost { namespace gil { + +class tiff_no_log +{ +public: + + tiff_no_log() + { + TIFFSetErrorHandler ( NULL ); + TIFFSetWarningHandler( NULL ); + } +}; + +class console_log +{ +public: + + console_log() + { + TIFFSetErrorHandler ( console_log::error ); + TIFFSetWarningHandler( console_log::warning ); + } + +private: + + static void error( const char* /* module */ + , const char* fmt + , va_list ap + ) + { + char buf[1000]; + sprintf(buf, fmt, ap); + std::cout << "error: " << buf << std::endl; + } + + static void warning( char const* /* module */ + , char const* fmt + , va_list ap + ) + { + char buf[1000]; + sprintf(buf, fmt, ap); + std::cout << "warning: " << fmt << std::endl; + } +}; + +} // namespace gil +} // namespace boost + +#endif |