[Bf-blender-cvs] [3dc5535b15c] opensubdiv_compare: OpenSubdiv: Refactor, move evaluator to own folder

Sergey Sharybin noreply at git.blender.org
Tue May 26 11:13:26 CEST 2020


Commit: 3dc5535b15cd9f1135c69e48604d1570f8ab32f7
Author: Sergey Sharybin
Date:   Tue May 19 10:46:42 2020 +0200
Branches: opensubdiv_compare
https://developer.blender.org/rB3dc5535b15cd9f1135c69e48604d1570f8ab32f7

OpenSubdiv: Refactor, move evaluator to own folder

===================================================================

M	intern/opensubdiv/CMakeLists.txt
R084	intern/opensubdiv/internal/opensubdiv_evaluator.cc	intern/opensubdiv/internal/evaluator/evaluator_capi.cc
R098	intern/opensubdiv/internal/opensubdiv_evaluator_internal.cc	intern/opensubdiv/internal/evaluator/evaluator_impl.cc
R093	intern/opensubdiv/internal/opensubdiv_evaluator_internal.h	intern/opensubdiv/internal/evaluator/evaluator_impl.h
M	intern/opensubdiv/opensubdiv_evaluator_capi.h

===================================================================

diff --git a/intern/opensubdiv/CMakeLists.txt b/intern/opensubdiv/CMakeLists.txt
index 5b5aebd88b8..90895cf6ed3 100644
--- a/intern/opensubdiv/CMakeLists.txt
+++ b/intern/opensubdiv/CMakeLists.txt
@@ -66,6 +66,11 @@ if(WITH_OPENSUBDIV)
     internal/device/device_context_openmp.cc
     internal/device/device_context_openmp.h
 
+    # Evaluator.
+    internal/evaluator/evaluator_capi.cc
+    internal/evaluator/evaluator_impl.cc
+    internal/evaluator/evaluator_impl.h
+
     # Topology.
     internal/topology/topology_refiner_capi.cc
     internal/topology/topology_refiner_factory.cc
@@ -74,12 +79,9 @@ if(WITH_OPENSUBDIV)
 
     internal/opensubdiv.cc
     internal/opensubdiv_converter_internal.cc
-    internal/opensubdiv_evaluator.cc
-    internal/opensubdiv_evaluator_internal.cc
     internal/opensubdiv_util.cc
 
     internal/opensubdiv_converter_internal.h
-    internal/opensubdiv_evaluator_internal.h
     internal/opensubdiv_util.h
   )
 
diff --git a/intern/opensubdiv/internal/opensubdiv_evaluator.cc b/intern/opensubdiv/internal/evaluator/evaluator_capi.cc
similarity index 84%
rename from intern/opensubdiv/internal/opensubdiv_evaluator.cc
rename to intern/opensubdiv/internal/evaluator/evaluator_capi.cc
index c599a3c9f68..4b12206e103 100644
--- a/intern/opensubdiv/internal/opensubdiv_evaluator.cc
+++ b/intern/opensubdiv/internal/evaluator/evaluator_capi.cc
@@ -21,7 +21,7 @@
 #include "MEM_guardedalloc.h"
 #include <new>
 
-#include "internal/opensubdiv_evaluator_internal.h"
+#include "internal/evaluator/evaluator_impl.h"
 
 namespace {
 
@@ -30,8 +30,7 @@ void setCoarsePositions(OpenSubdiv_Evaluator *evaluator,
                         const int start_vertex_index,
                         const int num_vertices)
 {
-  evaluator->internal->eval_output->setCoarsePositions(
-      positions, start_vertex_index, num_vertices);
+  evaluator->impl->eval_output->setCoarsePositions(positions, start_vertex_index, num_vertices);
 }
 
 void setVaryingData(OpenSubdiv_Evaluator *evaluator,
@@ -39,7 +38,7 @@ void setVaryingData(OpenSubdiv_Evaluator *evaluator,
                     const int start_vertex_index,
                     const int num_vertices)
 {
-  evaluator->internal->eval_output->setVaryingData(varying_data, start_vertex_index, num_vertices);
+  evaluator->impl->eval_output->setVaryingData(varying_data, start_vertex_index, num_vertices);
 }
 
 void setFaceVaryingData(OpenSubdiv_Evaluator *evaluator,
@@ -48,7 +47,7 @@ void setFaceVaryingData(OpenSubdiv_Evaluator *evaluator,
                         const int start_vertex_index,
                         const int num_vertices)
 {
-  evaluator->internal->eval_output->setFaceVaryingData(
+  evaluator->impl->eval_output->setFaceVaryingData(
       face_varying_channel, face_varying_data, start_vertex_index, num_vertices);
 }
 
@@ -59,7 +58,7 @@ void setCoarsePositionsFromBuffer(OpenSubdiv_Evaluator *evaluator,
                                   const int start_vertex_index,
                                   const int num_vertices)
 {
-  evaluator->internal->eval_output->setCoarsePositionsFromBuffer(
+  evaluator->impl->eval_output->setCoarsePositionsFromBuffer(
       buffer, start_offset, stride, start_vertex_index, num_vertices);
 }
 
@@ -70,7 +69,7 @@ void setVaryingDataFromBuffer(OpenSubdiv_Evaluator *evaluator,
                               const int start_vertex_index,
                               const int num_vertices)
 {
-  evaluator->internal->eval_output->setVaryingDataFromBuffer(
+  evaluator->impl->eval_output->setVaryingDataFromBuffer(
       buffer, start_offset, stride, start_vertex_index, num_vertices);
 }
 
@@ -82,13 +81,13 @@ void setFaceVaryingDataFromBuffer(OpenSubdiv_Evaluator *evaluator,
                                   const int start_vertex_index,
                                   const int num_vertices)
 {
-  evaluator->internal->eval_output->setFaceVaryingDataFromBuffer(
+  evaluator->impl->eval_output->setFaceVaryingDataFromBuffer(
       face_varying_channel, buffer, start_offset, stride, start_vertex_index, num_vertices);
 }
 
 void refine(OpenSubdiv_Evaluator *evaluator)
 {
-  evaluator->internal->eval_output->refine();
+  evaluator->impl->eval_output->refine();
 }
 
 void evaluateLimit(OpenSubdiv_Evaluator *evaluator,
@@ -99,7 +98,7 @@ void evaluateLimit(OpenSubdiv_Evaluator *evaluator,
                    float dPdu[3],
                    float dPdv[3])
 {
-  evaluator->internal->eval_output->evaluateLimit(ptex_face_index, face_u, face_v, P, dPdu, dPdv);
+  evaluator->impl->eval_output->evaluateLimit(ptex_face_index, face_u, face_v, P, dPdu, dPdv);
 }
 
 void evaluatePatchesLimit(OpenSubdiv_Evaluator *evaluator,
@@ -109,7 +108,7 @@ void evaluatePatchesLimit(OpenSubdiv_Evaluator *evaluator,
                           float *dPdu,
                           float *dPdv)
 {
-  evaluator->internal->eval_output->evaluatePatchesLimit(
+  evaluator->impl->eval_output->evaluatePatchesLimit(
       patch_coords, num_patch_coords, P, dPdu, dPdv);
 }
 
@@ -119,7 +118,7 @@ void evaluateVarying(OpenSubdiv_Evaluator *evaluator,
                      float face_v,
                      float varying[3])
 {
-  evaluator->internal->eval_output->evaluateVarying(ptex_face_index, face_u, face_v, varying);
+  evaluator->impl->eval_output->evaluateVarying(ptex_face_index, face_u, face_v, varying);
 }
 
 void evaluateFaceVarying(OpenSubdiv_Evaluator *evaluator,
@@ -129,7 +128,7 @@ void evaluateFaceVarying(OpenSubdiv_Evaluator *evaluator,
                          float face_v,
                          float face_varying[2])
 {
-  evaluator->internal->eval_output->evaluateFaceVarying(
+  evaluator->impl->eval_output->evaluateFaceVarying(
       face_varying_channel, ptex_face_index, face_u, face_v, face_varying);
 }
 
@@ -159,12 +158,12 @@ OpenSubdiv_Evaluator *openSubdiv_createEvaluatorFromTopologyRefiner(
 {
   OpenSubdiv_Evaluator *evaluator = OBJECT_GUARDED_NEW(OpenSubdiv_Evaluator);
   assignFunctionPointers(evaluator);
-  evaluator->internal = openSubdiv_createEvaluatorInternal(topology_refiner);
+  evaluator->impl = openSubdiv_createEvaluatorInternal(topology_refiner);
   return evaluator;
 }
 
 void openSubdiv_deleteEvaluator(OpenSubdiv_Evaluator *evaluator)
 {
-  openSubdiv_deleteEvaluatorInternal(evaluator->internal);
+  openSubdiv_deleteEvaluatorInternal(evaluator->impl);
   OBJECT_GUARDED_DELETE(evaluator, OpenSubdiv_Evaluator);
 }
diff --git a/intern/opensubdiv/internal/opensubdiv_evaluator_internal.cc b/intern/opensubdiv/internal/evaluator/evaluator_impl.cc
similarity index 98%
rename from intern/opensubdiv/internal/opensubdiv_evaluator_internal.cc
rename to intern/opensubdiv/internal/evaluator/evaluator_impl.cc
index a9960a9b027..7c80fceb51e 100644
--- a/intern/opensubdiv/internal/opensubdiv_evaluator_internal.cc
+++ b/intern/opensubdiv/internal/evaluator/evaluator_impl.cc
@@ -16,7 +16,7 @@
 //
 // Author: Sergey Sharybin
 
-#include "internal/opensubdiv_evaluator_internal.h"
+#include "internal/evaluator/evaluator_impl.h"
 
 #include <cassert>
 #include <cstdio>
@@ -735,19 +735,19 @@ void CpuEvalOutputAPI::evaluatePatchesLimit(const OpenSubdiv_PatchCoord *patch_c
 }  // namespace opensubdiv
 }  // namespace blender
 
-OpenSubdiv_EvaluatorInternal::OpenSubdiv_EvaluatorInternal()
+OpenSubdiv_EvaluatorImpl::OpenSubdiv_EvaluatorImpl()
     : eval_output(NULL), patch_map(NULL), patch_table(NULL)
 {
 }
 
-OpenSubdiv_EvaluatorInternal::~OpenSubdiv_EvaluatorInternal()
+OpenSubdiv_EvaluatorImpl::~OpenSubdiv_EvaluatorImpl()
 {
   delete eval_output;
   delete patch_map;
   delete patch_table;
 }
 
-OpenSubdiv_EvaluatorInternal *openSubdiv_createEvaluatorInternal(
+OpenSubdiv_EvaluatorImpl *openSubdiv_createEvaluatorInternal(
     OpenSubdiv_TopologyRefiner *topology_refiner)
 {
   using blender::opensubdiv::vector;
@@ -857,8 +857,8 @@ OpenSubdiv_EvaluatorInternal *openSubdiv_createEvaluatorInternal(
       vertex_stencils, varying_stencils, all_face_varying_stencils, 2, patch_table);
   OpenSubdiv::Far::PatchMap *patch_map = new PatchMap(*patch_table);
   // Wrap everything we need into an object which we control from our side.
-  OpenSubdiv_EvaluatorInternal *evaluator_descr;
-  evaluator_descr = new OpenSubdiv_EvaluatorInternal();
+  OpenSubdiv_EvaluatorImpl *evaluator_descr;
+  evaluator_descr = new OpenSubdiv_EvaluatorImpl();
   evaluator_descr->eval_output = new blender::opensubdiv::CpuEvalOutputAPI(eval_output, patch_map);
   evaluator_descr->patch_map = patch_map;
   evaluator_descr->patch_table = patch_table;
@@ -871,7 +871,7 @@ OpenSubdiv_EvaluatorInternal *openSubdiv_createEvaluatorInternal(
   return evaluator_descr;
 }
 
-void openSubdiv_deleteEvaluatorInternal(OpenSubdiv_EvaluatorInternal *evaluator)
+void openSubdiv_deleteEvaluatorInternal(OpenSubdiv_EvaluatorImpl *evaluator)
 {
   delete evaluator;
 }
diff --git a/intern/opensubdiv/internal/opensubdiv_evaluator_internal.h b/intern/opensubdiv/internal/evaluator/evaluator_impl.h
similarity index 93%
rename from intern/opensubdiv/internal/opensubdiv_evaluator_internal.h
rename to intern/opensubdiv/internal/evaluator/evaluator_impl.h
index a60b82b02fe..6a3682efa62 100644
--- a/intern/opensubdiv/internal/opensubdiv_evaluator_internal.h
+++ b/intern/opensubdiv/internal/evaluator/evaluator_impl.h
@@ -16,8 +16,8 @@
 //
 // Author: Sergey Sharybin
 
-#ifndef OPENSUBDIV_EVALUATOR_INTERNAL_H_
-#define OPENSUBDIV_EVALUATOR_INTERNAL_H_
+#ifndef OPENSUBDIV_EVALUATOR_IMPL_H_
+#define OPENSUBDIV_EVALUATOR_IMPL_H_
 
 #ifdef _MSC_VER
 #  include <iso646.h>
@@ -138,21 +138,21 @@ class CpuEvalOutputAPI {
 }  // namespace opensubdiv
 }  // namespace blender
 
-struct OpenSubdiv_EvaluatorInternal {
+struct OpenSubdiv_EvaluatorImpl {
  public:
-  OpenSubdiv_EvaluatorInternal();
-  ~OpenSubdiv_EvaluatorInternal();
+  OpenSubdiv_EvaluatorImpl();
+  ~OpenSubdiv_EvaluatorImpl();
 
   blender::opensubdiv::CpuEvalOutputAPI *eval_output;
   const OpenSubdiv::Far::PatchMap *patch_map;
   const OpenSubdiv::Far::PatchTable *patch_table;
 
-  MEM_CXX_CLASS_ALLOC_FUNCS("OpenSubdiv_EvaluatorInternal");
+  MEM_CXX_CLASS_ALLOC_FUNCS("OpenSubdiv_EvaluatorImpl");
 };
 
-OpenSubdiv_EvaluatorInternal *openSubdiv_createEvaluatorInternal(
+OpenSubdi

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list