summaryrefslogtreecommitdiff
path: root/boost/gil/extension/io/tiff/detail/log.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/gil/extension/io/tiff/detail/log.hpp')
-rw-r--r--boost/gil/extension/io/tiff/detail/log.hpp77
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