Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Goudey <h.goudey@me.com>2021-05-11 03:17:15 +0300
committerHans Goudey <h.goudey@me.com>2021-05-11 03:17:15 +0300
commit6b1034d5203e1040bc9211cb765fa1cc3c05b7e2 (patch)
tree9125e1540ca6d82c03fefbb1ad0f5d813ae4be7b /source/blender/blenkernel/intern
parent5613c61275fe67b4d6113f79512bd129d372509c (diff)
Cleanup: Use a helper function for repetitive code
Retrieving data from the component can be done in a separate function to save some repetition.
Diffstat (limited to 'source/blender/blenkernel/intern')
-rw-r--r--source/blender/blenkernel/intern/geometry_component_curve.cc20
1 files changed, 16 insertions, 4 deletions
diff --git a/source/blender/blenkernel/intern/geometry_component_curve.cc b/source/blender/blenkernel/intern/geometry_component_curve.cc
index 0490d577b88..503670861a5 100644
--- a/source/blender/blenkernel/intern/geometry_component_curve.cc
+++ b/source/blender/blenkernel/intern/geometry_component_curve.cc
@@ -136,6 +136,20 @@ int CurveComponent::attribute_domain_size(const AttributeDomain domain) const
return 0;
}
+static CurveEval *get_curve_from_component_for_write(GeometryComponent &component)
+{
+ BLI_assert(component.type() == GEO_COMPONENT_TYPE_CURVE);
+ CurveComponent &curve_component = static_cast<CurveComponent &>(component);
+ return curve_component.get_for_write();
+}
+
+static const CurveEval *get_curve_from_component_for_read(const GeometryComponent &component)
+{
+ BLI_assert(component.type() == GEO_COMPONENT_TYPE_CURVE);
+ const CurveComponent &curve_component = static_cast<const CurveComponent &>(component);
+ return curve_component.get_for_read();
+}
+
namespace blender::bke {
class BuiltinSplineAttributeProvider final : public BuiltinAttributeProvider {
@@ -164,8 +178,7 @@ class BuiltinSplineAttributeProvider final : public BuiltinAttributeProvider {
GVArrayPtr try_get_for_read(const GeometryComponent &component) const final
{
- const CurveComponent &curve_component = static_cast<const CurveComponent &>(component);
- const CurveEval *curve = curve_component.get_for_read();
+ const CurveEval *curve = get_curve_from_component_for_read(component);
if (curve == nullptr) {
return {};
}
@@ -178,8 +191,7 @@ class BuiltinSplineAttributeProvider final : public BuiltinAttributeProvider {
if (writable_ != Writable) {
return {};
}
- CurveComponent &curve_component = static_cast<CurveComponent &>(component);
- CurveEval *curve = curve_component.get_for_write();
+ CurveEval *curve = get_curve_from_component_for_write(component);
if (curve == nullptr) {
return {};
}