[Bf-blender-cvs] SVN commit: /data/svn/repos/bf-blender [61542] trunk/lib/win64_vc12/ opensubdiv: MSVC2013 Win64: Update OpenSubdiv library

Sergey Sharybin sergey.vfx at gmail.com
Tue Aug 4 16:59:20 CEST 2015


Revision: 61542
          https://developer.blender.org/rBL61542
Author:   sergey
Date:     2015-08-04 14:59:17 +0000 (Tue, 04 Aug 2015)
Log Message:
-----------
MSVC2013 Win64: Update OpenSubdiv library

Update library to hash 5f393db from the official upstream repository.

Modified Paths:
--------------
    trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/error.h
    trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/patchParam.h
    trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/patchTable.h
    trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/primvarRefiner.h
    trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/stencilTable.h
    trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/topologyRefiner.h
    trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/topologyRefinerFactory.h
    trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/osd/mesh.h
    trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/osd/types.h
    trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/vtr/array.h
    trunk/lib/win64_vc12/opensubdiv/lib/osdCPU.lib
    trunk/lib/win64_vc12/opensubdiv/lib/osdCPU_d.lib
    trunk/lib/win64_vc12/opensubdiv/lib/osdGPU.lib
    trunk/lib/win64_vc12/opensubdiv/lib/osdGPU_d.lib
    trunk/lib/win64_vc12/opensubdiv/readme.txt

Modified: trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/error.h
===================================================================
--- trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/error.h	2015-08-01 07:20:09 UTC (rev 61541)
+++ trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/error.h	2015-08-04 14:59:17 UTC (rev 61542)
@@ -40,6 +40,8 @@
     FAR_RUNTIME_ERROR           ///< Issue a generic runtime error, but continue execution.
 } ErrorType;
 
+
+/// \brief The error callback function type (default is "printf")
 typedef void (*ErrorCallbackFunc)(ErrorType err, const char *message);
 
 /// \brief Sets the error callback function (default is "printf")
@@ -50,22 +52,8 @@
 ///
 void SetErrorCallback(ErrorCallbackFunc func);
 
-/// \brief Sends an OSD error
-///
-/// @param err the error type
-///
-void Error(ErrorType err);
 
-/// \brief Sends an OSD error with a message
-///
-/// @param err     the error type
-///
-/// @param format  the format of the message (followed by arguments)
-///
-void Error(ErrorType err, const char *format, ...);
-
-
-/// \brief Sets the warning callback function (default is "printf")
+/// \brief The warning callback function type (default is "printf")
 typedef void (*WarningCallbackFunc)(const char *message);
 
 /// \brief Sets the warning callback function (default is "printf")
@@ -76,10 +64,24 @@
 ///
 void SetWarningCallback(WarningCallbackFunc func);
 
-/// \brief Sends an OSD warning message
+
+//
+//  The following are intended for internal use only (and will eventually
+//  be moved within namespace internal)
+//
+
+/// \brief Sends an OSD error with a message (internal use only)
 ///
+/// @param err     the error type
+///
 /// @param format  the format of the message (followed by arguments)
 ///
+void Error(ErrorType err, const char *format, ...);
+
+/// \brief Sends an OSD warning message (internal use only)
+///
+/// @param format  the format of the message (followed by arguments)
+///
 void Warning(const char *format, ...);
 
 

Modified: trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/patchParam.h
===================================================================
--- trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/patchParam.h	2015-08-01 07:20:09 UTC (rev 61541)
+++ trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/patchParam.h	2015-08-04 14:59:17 UTC (rev 61542)
@@ -53,7 +53,7 @@
 ///  -----------|:----:|------------------------------------------------------
 ///  level      | 4    | the subdivision level of the patch
 ///  nonquad    | 1    | whether the patch is the child of a non-quad face
-///  unused     | 3    | transition edge mask encoding
+///  unused     | 3    | unused
 ///  boundary   | 4    | boundary edge mask encoding
 ///  v          | 10   | log2 value of u parameter at first patch corner
 ///  u          | 10   | log2 value of v parameter at first patch corner

Modified: trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/patchTable.h
===================================================================
--- trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/patchTable.h	2015-08-01 07:20:09 UTC (rev 61541)
+++ trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/patchTable.h	2015-08-04 14:59:17 UTC (rev 61542)
@@ -416,7 +416,7 @@
     if (_localPointStencils) {
         _localPointStencils->UpdateValues(src, dst);
     }
-};
+}
 
 
 } // end namespace Far

Modified: trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/primvarRefiner.h
===================================================================
--- trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/primvarRefiner.h	2015-08-01 07:20:09 UTC (rev 61541)
+++ trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/primvarRefiner.h	2015-08-04 14:59:17 UTC (rev 61542)
@@ -317,7 +317,8 @@
 
     if (_refiner.getLevel(_refiner.GetMaxLevel()).getNumVertexEdgesTotal() == 0) {
         Error(FAR_RUNTIME_ERROR,
-            "Cannot compute limit points -- last level of refinement does not include full topology.");
+            "Failure in PrimvarRefiner::Limit() -- "
+            "last level of refinement does not include full topology.");
         return;
     }
 
@@ -340,7 +341,8 @@
 
     if (_refiner.getLevel(_refiner.GetMaxLevel()).getNumVertexEdgesTotal() == 0) {
         Error(FAR_RUNTIME_ERROR,
-            "Cannot compute limit points -- last level of refinement does not include full topology.");
+            "Failure in PrimvarRefiner::Limit() -- "
+            "last level of refinement does not include full topology.");
         return;
     }
 
@@ -363,7 +365,8 @@
 
     if (_refiner.getLevel(_refiner.GetMaxLevel()).getNumVertexEdgesTotal() == 0) {
         Error(FAR_RUNTIME_ERROR,
-            "Cannot compute limit points -- last level of refinement does not include full topology.");
+            "Failure in PrimvarRefiner::LimitFaceVarying() -- "
+            "last level of refinement does not include full topology.");
         return;
     }
 

Modified: trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/stencilTable.h
===================================================================
--- trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/stencilTable.h	2015-08-01 07:20:09 UTC (rev 61541)
+++ trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/stencilTable.h	2015-08-04 14:59:17 UTC (rev 61542)
@@ -133,6 +133,8 @@
 
 public:
 
+    virtual ~StencilTable() {};
+    
     /// \brief Returns the number of stencils in the table
     int GetNumStencils() const {
         return (int)_sizes.size();

Modified: trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/topologyRefiner.h
===================================================================
--- trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/topologyRefiner.h	2015-08-01 07:20:09 UTC (rev 61541)
+++ trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/topologyRefiner.h	2015-08-04 14:59:17 UTC (rev 61542)
@@ -232,7 +232,7 @@
     std::vector<Vtr::internal::Level *>      _levels;
     std::vector<Vtr::internal::Refinement *> _refinements;
 
-    std::vector<TopologyLevel> _farLevels;;
+    std::vector<TopologyLevel> _farLevels;
 };
 
 

Modified: trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/topologyRefinerFactory.h
===================================================================
--- trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/topologyRefinerFactory.h	2015-08-01 07:20:09 UTC (rev 61541)
+++ trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/far/topologyRefinerFactory.h	2015-08-04 14:59:17 UTC (rev 61542)
@@ -543,7 +543,8 @@
 bool
 TopologyRefinerFactory<MESH>::resizeComponentTopology(TopologyRefiner& /* refiner */, MESH const& /* mesh */) {
 
-    Error(FAR_RUNTIME_ERROR, "Missing specialization for TopologyRefinerFactory<MESH>::resizeComponentTopology()");
+    Error(FAR_RUNTIME_ERROR,
+        "Failure in TopologyRefinerFactory<>::resizeComponentTopology() -- no specialization provided.");
 
     //
     //  Sizing the topology tables:
@@ -583,7 +584,8 @@
 bool
 TopologyRefinerFactory<MESH>::assignComponentTopology(TopologyRefiner& /* refiner */, MESH const& /* mesh */) {
 
-    Error(FAR_RUNTIME_ERROR, "Missing specialization for TopologyRefinerFactory<MESH>::assignComponentTopology()");
+    Error(FAR_RUNTIME_ERROR,
+        "Failure in TopologyRefinerFactory<>::assignComponentTopology() -- no specialization provided.");
 
     //
     //  Assigning the topology tables:

Modified: trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/osd/mesh.h
===================================================================
--- trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/osd/mesh.h	2015-08-01 07:20:09 UTC (rev 61541)
+++ trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/osd/mesh.h	2015-08-04 14:59:17 UTC (rev 61542)
@@ -173,12 +173,12 @@
 
     // XXX: FIXME, linear search
     struct Entry {
-        Entry(BufferDescriptor const &srcDesc,
-              BufferDescriptor const &dstDesc,
-              BufferDescriptor const &duDesc,
-              BufferDescriptor const &dvDesc,
-              EVALUATOR *e) : srcDesc(srcDesc), dstDesc(dstDesc),
-                              duDesc(duDesc), dvDesc(dvDesc), evaluator(e) {}
+        Entry(BufferDescriptor const &srcDescArg,
+              BufferDescriptor const &dstDescArg,
+              BufferDescriptor const &duDescArg,
+              BufferDescriptor const &dvDescArg,
+              EVALUATOR *evalArg) : srcDesc(srcDescArg), dstDesc(dstDescArg),
+                              duDesc(duDescArg), dvDesc(dvDescArg), evaluator(evalArg) {}
         BufferDescriptor srcDesc, dstDesc, duDesc, dvDesc;
         EVALUATOR *evaluator;
     };
@@ -420,24 +420,24 @@
                                 instance, _deviceContext);
 
         if (_varyingDesc.length > 0) {
-            BufferDescriptor srcDesc = _varyingDesc;
-            BufferDescriptor dstDesc(srcDesc);
-            dstDesc.offset += numControlVertices * dstDesc.stride;
+            BufferDescriptor vSrcDesc = _varyingDesc;
+            BufferDescriptor vDstDesc(vSrcDesc);
+            vDstDesc.offset += numControlVertices * vDstDesc.stride;
 
             instance = GetEvaluator<Evaluator>(
-                _evaluatorCache, srcDesc, dstDesc,
+                _evaluatorCache, vSrcDesc, vDstDesc,
                 _deviceContext);
 
             if (_varyingBuffer) {
                 // non-interleaved
-                Evaluator::EvalStencils(_varyingBuffer, srcDesc,
-                                        _varyingBuffer, dstDesc,
+                Evaluator::EvalStencils(_varyingBuffer, vSrcDesc,
+                                        _varyingBuffer, vDstDesc,
                                         _varyingStencilTable,
                                         instance, _deviceContext);
             } else {
                 // interleaved
-                Evaluator::EvalStencils(_vertexBuffer, srcDesc,
-                                        _vertexBuffer, dstDesc,
+                Evaluator::EvalStencils(_vertexBuffer, vSrcDesc,
+                                        _vertexBuffer, vDstDesc,
                                         _varyingStencilTable,
                                         instance, _deviceContext);
             }

Modified: trunk/lib/win64_vc12/opensubdiv/include/opensubdiv/osd/types.h
===================================================================

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list