opensubdiv_topology_refiner_internal.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. // Copyright 2016 Blender Foundation. All rights reserved.
  2. //
  3. // This program is free software; you can redistribute it and/or
  4. // modify it under the terms of the GNU General Public License
  5. // as published by the Free Software Foundation; either version 2
  6. // of the License, or (at your option) any later version.
  7. //
  8. // This program is distributed in the hope that it will be useful,
  9. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. // GNU General Public License for more details.
  12. //
  13. // You should have received a copy of the GNU General Public License
  14. // along with this program; if not, write to the Free Software Foundation,
  15. // Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  16. //
  17. // Author: Sergey Sharybin
  18. #ifndef OPENSUBDIV_TOPOLOGY_REFINER_INTERNAL_H_
  19. #define OPENSUBDIV_TOPOLOGY_REFINER_INTERNAL_H_
  20. #ifdef _MSC_VER
  21. # include <iso646.h>
  22. #endif
  23. #include <opensubdiv/far/topologyRefiner.h>
  24. #include "opensubdiv_topology_refiner_capi.h"
  25. struct OpenSubdiv_TopologyRefinerInternal {
  26. public:
  27. OpenSubdiv_TopologyRefinerInternal();
  28. ~OpenSubdiv_TopologyRefinerInternal();
  29. OpenSubdiv::Far::TopologyRefiner *osd_topology_refiner;
  30. // Subdivision settingsa this refiner is created for.
  31. //
  32. // We store it here since OpenSubdiv's refiner will only know about level and
  33. // "adaptivity" after performing actual "refine" step.
  34. //
  35. // Ideally, we would also support refining topology without re-importing it
  36. // from external world, but that is for later.
  37. OpenSubdiv_TopologyRefinerSettings settings;
  38. };
  39. #endif // OPENSUBDIV_TOPOLOGY_REFINER_H_