// // Copyright 2009 Christian Henning // // Distributed under 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 #include extern "C" { #include "tiffio.h" } namespace boost { namespace gil { class tiff_no_log { public: tiff_no_log() { TIFFSetErrorHandler ( nullptr ); TIFFSetWarningHandler( nullptr ); } }; 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