[Bf-blender-cvs] SVN commit: /data/svn/repos/bf-blender [61597] trunk/lib/win64_vc12/ OpenImageIO: MSVC 2013 windows x64 OpenImageIO 1.6.9

Martijn Berger martijn.berger at gmail.com
Sun Jan 17 13:04:25 CET 2016


Revision: 61597
          https://developer.blender.org/rBL61597
Author:   juicyfruit
Date:     2016-01-17 12:04:11 +0000 (Sun, 17 Jan 2016)
Log Message:
-----------
MSVC 2013 windows x64 OpenImageIO 1.6.9

Modified Paths:
--------------
    trunk/lib/win64_vc12/OpenImageIO/build.bat
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/SHA1.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/argparse.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/array_view.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/color.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/dassert.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/errorhandler.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/filesystem.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/filter.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/fmath.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/hash.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/image_view.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/imagebuf.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/imagebufalgo.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/imagebufalgo_util.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/imagecache.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/imageio.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/oiioversion.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/optparser.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/osdep.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/paramlist.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/plugin.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/pugixml.cpp
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/pugixml.hpp
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/refcnt.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/strided_ptr.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/string_view.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/strutil.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/sysutil.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/texture.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/thread.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/timer.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/typedesc.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/unordered_map_concurrent.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/ustring.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/varyingref.h
    trunk/lib/win64_vc12/OpenImageIO/lib/OpenImageIO.lib
    trunk/lib/win64_vc12/OpenImageIO/lib/OpenImageIO_Util.lib
    trunk/lib/win64_vc12/OpenImageIO/lib/OpenImageIO_Util_d.lib
    trunk/lib/win64_vc12/OpenImageIO/lib/OpenImageIO_d.lib

Added Paths:
-----------
    trunk/lib/win64_vc12/OpenImageIO/OpenImageIO_GDI.patch
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/coordinate.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/missing_math.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/platform.h
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/simd.h

Removed Paths:
-------------
    trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/platform.h

Added: trunk/lib/win64_vc12/OpenImageIO/OpenImageIO_GDI.patch
===================================================================
--- trunk/lib/win64_vc12/OpenImageIO/OpenImageIO_GDI.patch	                        (rev 0)
+++ trunk/lib/win64_vc12/OpenImageIO/OpenImageIO_GDI.patch	2016-01-17 12:04:11 UTC (rev 61597)
@@ -0,0 +1,26 @@
+Index: OpenImageIO/osdep.h
+===================================================================
+--- OpenImageIO/osdep.h	(revision 61595)
++++ OpenImageIO/osdep.h	(working copy)
+@@ -34,6 +34,7 @@
+ # define WIN32_LEAN_AND_MEAN
+ # define VC_EXTRALEAN
+ # define NOMINMAX
++# define NOGDI
+ # include <windows.h>
+ #endif
+ 
+Index: OpenImageIO/platform.h
+===================================================================
+--- OpenImageIO/platform.h	(revision 61595)
++++ OpenImageIO/platform.h	(working copy)
+@@ -77,6 +77,9 @@
+ # ifndef NOMINMAX
+ #   define NOMINMAX
+ # endif
++# ifndef NOGDI
++#   define NOGDI
++# endif
+ # include <windows.h>
+ #endif
+ 

Modified: trunk/lib/win64_vc12/OpenImageIO/build.bat
===================================================================
--- trunk/lib/win64_vc12/OpenImageIO/build.bat	2016-01-17 11:57:02 UTC (rev 61596)
+++ trunk/lib/win64_vc12/OpenImageIO/build.bat	2016-01-17 12:04:11 UTC (rev 61597)
@@ -3,7 +3,7 @@
 
 set LIBDIR=%CD%\..
 set LIBNAME=OpenImageIO
-set OIIO_VERSION=1.4.16
+set OIIO_VERSION=1.6.9
 set "OIIO_SOURCE=https://github.com/OpenImageIO/oiio/archive/Release-%OIIO_VERSION%.zip"
 
 :: create build directory
@@ -46,6 +46,7 @@
  -DCMAKE_CXX_STANDARD_LIBRARIES:STRING="kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib psapi.lib" ^
  -DBUILDSTATIC=ON ^
  -DLINKSTATIC=ON ^
+ -OIIO_BUILD_CPP11=ON ^
  -DBoost_COMPILER:STRING="-vc120" ^
  -DBoost_USE_MULTITHREADED=ON ^
  -DBoost_USE_STATIC_LIBS=ON ^
@@ -105,6 +106,7 @@
  -DCMAKE_CXX_STANDARD_LIBRARIES:STRING="kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib psapi.lib" ^
  -DBUILDSTATIC=ON ^
  -DLINKSTATIC=ON ^
+ -OIIO_BUILD_CPP11=ON ^ 
  -DBoost_COMPILER:STRING="-vc120" ^
  -DBoost_USE_MULTITHREADED=ON ^
  -DBoost_USE_STATIC_LIBS=ON ^

Modified: trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/SHA1.h
===================================================================
--- trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/SHA1.h	2016-01-17 11:57:02 UTC (rev 61596)
+++ trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/SHA1.h	2016-01-17 12:04:11 UTC (rev 61597)
@@ -191,8 +191,7 @@
 ///////////////////////////////////////////////////////////////////////////
 // Declare SHA-1 workspace
 
-OIIO_NAMESPACE_ENTER
-{
+OIIO_NAMESPACE_BEGIN
 
 typedef union
 {
@@ -257,7 +256,6 @@
 	SHA1_WORKSPACE_BLOCK* m_block; // SHA1 pointer to the byte array above
 };
 
-}
-OIIO_NAMESPACE_EXIT
+OIIO_NAMESPACE_END
 
 #endif // ___SHA1_HDR___

Modified: trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/argparse.h
===================================================================
--- trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/argparse.h	2016-01-17 11:57:02 UTC (rev 61596)
+++ trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/argparse.h	2016-01-17 12:04:11 UTC (rev 61597)
@@ -50,8 +50,7 @@
 #include "tinyformat.h"
 
 
-OIIO_NAMESPACE_ENTER
-{
+OIIO_NAMESPACE_BEGIN
 
 
 class ArgOption;   // Forward declaration
@@ -171,6 +170,11 @@
     /// description arguments passed to parse().
     void usage () const;
 
+    /// Print a brief usage message to stdout.  The usage message is
+    /// generated and formatted automatically based on the command and
+    /// description arguments passed to parse().
+    void briefusage () const;
+
     /// Return the entire command-line as one string.
     ///
     std::string command_line () const;
@@ -192,8 +196,13 @@
 };
 
 
-}
-OIIO_NAMESPACE_EXIT
 
+// Define symbols that let client applications determine if newly added
+// features are supported.
+#define OIIO_ARGPARSE_SUPPORTS_BRIEFUSAGE 1
 
+
+OIIO_NAMESPACE_END
+
+
 #endif // OPENIMAGEIO_ARGPARSE_H

Modified: trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/array_view.h
===================================================================
--- trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/array_view.h	2016-01-17 11:57:02 UTC (rev 61596)
+++ trunk/lib/win64_vc12/OpenImageIO/include/OpenImageIO/array_view.h	2016-01-17 12:04:11 UTC (rev 61597)
@@ -1,7 +1,6 @@
 /*
-  Copyright 2014 Larry Gritz and the other authors and contributors.
+  Copyright 2015 Larry Gritz and the other authors and contributors.
   All Rights Reserved.
-  Based on BSD-licensed software Copyright 2004 NVIDIA Corp.
 
   Redistribution and use in source and binary forms, with or without
   modification, are permitted provided that the following conditions are
@@ -34,17 +33,41 @@
 
 #include <vector>
 #include <stdexcept>
+#include <iostream>
 
+#if OIIO_CPLUSPLUS_VERSION >= 11
+# include <initializer_list>
+# include <type_traits>
+#else /* FIXME(C++11): this case can go away when C++11 is our minimum */
+# include <boost/type_traits.hpp>
+#endif
+
 #include "oiioversion.h"
-#include "strided_ptr.h"
+#include "platform.h"
+#include "dassert.h"
+#include "coordinate.h"
 
+OIIO_NAMESPACE_BEGIN
 
-OIIO_NAMESPACE_ENTER {
+#if OIIO_CPLUSPLUS_VERSION >= 11
+using std::remove_const;
+using std::is_array;
+#else /* FIXME(C++11): this case can go away when C++11 is our minimum */
+using boost::remove_const;
+using boost::is_array;
+#endif
 
 
-/// array_view : a non-owning reference to a contiguous array with known
-/// length.  An array_view<T> is mutable (the values in the array may be
-/// modified), whereas an array_view<const T> is not mutable.
+template <typename T, size_t Rank> class array_view;
+template <typename T, size_t Rank> class array_view_strided;
+
+
+
+
+/// array_view<T,Rank> : a non-owning reference to a contiguous array with
+/// known length. If Rank > 1, it's multi-dimensional. An array_view<T> is
+/// mutable (the values in the array may be modified), whereas an
+/// array_view<const T> is not mutable.
 ///
 /// Background: Functions whose input requires a set of contiguous values
 /// (an array) are faced with a dilemma. If the caller passes just a
@@ -60,130 +83,119 @@
 /// is transparently and automatically computed without additional user
 /// code).
 
-template <typename T>
+template <typename T, size_t Rank=1>
 class array_view {
+    OIIO_STATIC_ASSERT (Rank >= 1);
+    OIIO_STATIC_ASSERT (is_array<T>::value == false);
 public:
+#if OIIO_CPLUSPLUS_VERSION >= 11
+    // using iterator        = bounds_iterator<Rank>;
+    // using const_iterator  = bounds_iterator<Rank>;
+    static OIIO_CONSTEXPR_OR_CONST size_t rank = Rank;
+    using offset_type     = offset<Rank>;
+    using bounds_type     = OIIO::bounds<Rank>;
+    using stride_type     = offset<Rank>;
+    using size_type       = size_t;
+    using value_type      = T;
+    using pointer         = T*;
+    using const_pointer   = const T*;
+    using reference       = T&;
+#else
+    static const size_t rank = Rank;
+    typedef offset<Rank> offset_type;
+    typedef OIIO::bounds<Rank> bounds_type;
+    typedef offset<Rank> stride_type;
+    typedef size_t size_type;
     typedef T value_type;
     typedef T* pointer;
     typedef const T* const_pointer;
     typedef T& reference;
-    typedef const T& const_reference;
-    typedef const_pointer const_iterator;
-    typedef const_iterator iterator;
-    typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
-    typedef const_reverse_iterator reverse_iterator;
-    typedef size_t size_type;
-    typedef ptrdiff_t difference_type;
-    static const size_type npos = ~size_type(0);
+#endif
 
     /// Default ctr -- points to nothing
-    array_view () : m_data(NULL), m_len(0) {}
+    array_view () : m_data(NULL) { }
 
     /// Copy constructor
     array_view (const array_view &copy)
-        : m_data(copy.data()), m_len(copy.size()) {}
+        : m_data(copy.data()), m_bounds(copy.bounds()) {}
 
     /// Construct from T* and length.
-    array_view (T *data, size_t len) : m_data(data), m_len(len) {}
+    array_view (pointer data, bounds_type bounds)
+        : m_data(data), m_bounds(bounds) { }
 
     /// Construct from a single T&.
-    array_view (T &data) : m_data(&data), m_len(1) {}
+    array_view (T &data) : m_data(&data), m_bounds(1) { }
 
-    /// Construct from a range (begin and end pointers).
-    array_view (T *begin, T *end)
-        : m_data(begin), m_len(end-begin) {}
-
     /// Construct from a fixed-length C array.  Template magic automatically
     /// finds the length from the declared type of the array.
     template<size_t N>
-    array_view (T (&data)[N]) : m_data(data), m_len(N) {}
+    array_view (T (&data)[N]) : m_data(data), m_bounds(N) {
+        DASSERT (Rank == 1);
+    }
 
     /// Construct from std::vector<T>.
     array_view (std::vector<T> &v)
-        : m_data(v.size() ? &v[0] : NULL), m_len(v.size()) {}
+        : m_data(v.size() ? &v[0] : NULL), m_bounds(v.size()) {
+        DASSERT (Rank == 1);
+    }
 
+    /// Construct from const std::vector<T>.
+    /// This turns const std::vector<T> into an array_view<const T> (the
+    /// array_view isn't const, but the data it points to will be).
+    array_view (const std::vector<typename remove_const<T>::type> &v)
+        : m_data(v.size() ? &v[0] : NULL), m_bounds(v.size()) {
+        DASSERT (Rank == 1);
+    }
+
     // assignments
     array_view& operator= (const array_view &copy) {
         m_data = copy.data();
-        m_len = copy.size();
+        m_bounds = copy.bounds();
         return *this;
     }
 
-    // iterators
-    iterator begin() const { return m_data; }
-    iterator end() const { return m_data + m_len; }
-    const_iterator cbegin() const { return m_data; }
-    const_iterator cend() const { return m_data + m_len; }
-    reverse_iterator rbegin() const { return const_reverse_iterator (end()); }
-    reverse_iterator rend() const { return const_reverse_iterator (begin()); }
-    const_reverse_iterator crbegin() const { return const_reverse_iterator (end()); }
-    const_reverse_iterator crend() const { return const_reverse_iterator (begin()); }
-
-    size_type size() const { return m_len; }
-    size_type max_size() const { return m_len; }
-    bool empty() const { return m_len == 0; }
-
-    T& operator[] (size_type pos) const { return m_data[pos]; }

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list