OpenSubdiv/opensubdiv/far
George ElKoura 420473b45b Experiment separating out Ptex from TopologyRefiner.
Remove the ptex-specific code from the Far::TopologyRefiner and instead provide it in a separate class Far::PtexIndices.  Clients who need to use the Ptex API need to first build a Far::PtexIndices object by providing it with a refiner.

This has the advantage of keeping the API on the TopologyRefiner a little cleaner.  The ptex methods were const but were mutating state with const_casts.  The new mechanism still achieves the same lazy initialization behavior by forcing clients to instantiate them exactly when needed.

A disadvantage of this approach is that the PatchTablesFactory creates its own PtexIndices and throws it out after the patch tables are created.  This is great if you're never going to need the ptex indices again, but not so great if you will need them again.
2015-04-21 17:34:02 -07:00
..
CMakeLists.txt Experiment separating out Ptex from TopologyRefiner. 2015-04-21 17:34:02 -07:00
endCapGregoryBasisPatchFactory.cpp Refactor far factories. 2015-04-20 18:59:07 -07:00
endCapGregoryBasisPatchFactory.h Refactor far factories. 2015-04-20 18:59:07 -07:00
endCapLegacyGregoryPatchFactory.cpp Refactor far factories. 2015-04-20 18:59:07 -07:00
endCapLegacyGregoryPatchFactory.h Refactor far factories. 2015-04-20 18:59:07 -07:00
endCapRegularPatchFactory.cpp Refactor far factories. 2015-04-20 18:59:07 -07:00
endCapRegularPatchFactory.h Refactor far factories. 2015-04-20 18:59:07 -07:00
error.cpp Fix build warnings (icc -w3) 2015-01-06 10:56:29 -08:00
error.h Fix build warnings (icc -w3) 2015-01-06 10:56:29 -08:00
gregoryBasis.cpp Refactor far factories. 2015-04-20 18:59:07 -07:00
gregoryBasis.h Refactor far factories. 2015-04-20 18:59:07 -07:00
interpolate.cpp Refactor & cleanup patch interpolation 2015-01-27 15:38:30 -08:00
interpolate.h Fixes limit stencil evaluation on gregory basis patch. 2015-04-10 17:45:00 -07:00
patchDescriptor.cpp Refactor single crease patch to be in unfined shader. 2015-04-17 16:26:57 -07:00
patchDescriptor.h Refactor far factories. 2015-04-20 18:59:07 -07:00
patchMap.cpp Refactor Vtr::Array for better "const" safety 2014-12-15 10:23:13 -08:00
patchMap.h Far::PatchTables re-factor & clean-up 2014-10-09 14:48:50 -07:00
patchParam.h Checkpoint changes to unify adaptive patch drawing. 2015-04-17 07:42:53 -07:00
patchTables.cpp Refactor far factories. 2015-04-20 18:59:07 -07:00
patchTables.h Refactor far factories. 2015-04-20 18:59:07 -07:00
patchTablesFactory.cpp Experiment separating out Ptex from TopologyRefiner. 2015-04-21 17:34:02 -07:00
patchTablesFactory.h Experiment separating out Ptex from TopologyRefiner. 2015-04-21 17:34:02 -07:00
protoStencil.h fixed code style of stencil leak fix 2014-12-10 20:09:18 +01:00
ptexIndices.cpp Experiment separating out Ptex from TopologyRefiner. 2015-04-21 17:34:02 -07:00
ptexIndices.h Experiment separating out Ptex from TopologyRefiner. 2015-04-21 17:34:02 -07:00
stencilTables.h Refactor far factories. 2015-04-20 18:59:07 -07:00
stencilTablesFactory.cpp Refactor far factories. 2015-04-20 18:59:07 -07:00
stencilTablesFactory.h Removes FarKernelBatch. 2015-04-10 11:08:24 -07:00
topologyRefiner.cpp Experiment separating out Ptex from TopologyRefiner. 2015-04-21 17:34:02 -07:00
topologyRefiner.h Experiment separating out Ptex from TopologyRefiner. 2015-04-21 17:34:02 -07:00
topologyRefinerFactory.cpp Fixed off-by-1 error for lefthanded meshes in facevarying channels. 2015-04-17 18:14:59 -07:00
topologyRefinerFactory.h Changed lefthanded flag to isLeftHanded. 2015-04-15 16:15:19 -07:00
types.h Refactor Vtr::Array for better "const" safety 2014-12-15 10:23:13 -08:00