[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 ©)
- : 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 ©) {
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