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:
authorJacques Lucke <jacques@blender.org>2021-10-03 17:58:33 +0300
committerJacques Lucke <jacques@blender.org>2021-10-03 17:58:33 +0300
commitbf354cde9691cd26ad5110bd275a581976b06911 (patch)
treee2c0696238ea18079ec24fbb408be1d66d5e0836
parent64d07ffcc32258c2a39800f1b930f7d262508d0d (diff)
Cleanup: move special methods of geometry set out of header
This reduces the compile time, because fewer symbols have to be generated in translation units using geometry sets.
-rw-r--r--source/blender/blenkernel/BKE_geometry_set.hh7
-rw-r--r--source/blender/blenkernel/intern/geometry_set.cc8
2 files changed, 15 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_geometry_set.hh b/source/blender/blenkernel/BKE_geometry_set.hh
index f182fb527e1..b36d15578a7 100644
--- a/source/blender/blenkernel/BKE_geometry_set.hh
+++ b/source/blender/blenkernel/BKE_geometry_set.hh
@@ -253,6 +253,13 @@ struct GeometrySet {
blender::Map<GeometryComponentType, GeometryComponentPtr> components_;
public:
+ GeometrySet();
+ GeometrySet(const GeometrySet &other);
+ GeometrySet(GeometrySet &&other);
+ ~GeometrySet();
+ GeometrySet &operator=(const GeometrySet &other);
+ GeometrySet &operator=(GeometrySet &&other);
+
GeometryComponent &get_component_for_write(GeometryComponentType component_type);
template<typename Component> Component &get_component_for_write()
{
diff --git a/source/blender/blenkernel/intern/geometry_set.cc b/source/blender/blenkernel/intern/geometry_set.cc
index 0aac6ae3adf..84daa06554a 100644
--- a/source/blender/blenkernel/intern/geometry_set.cc
+++ b/source/blender/blenkernel/intern/geometry_set.cc
@@ -105,6 +105,14 @@ bool GeometryComponent::is_empty() const
/** \name Geometry Set
* \{ */
+/* The methods are defaulted here so that they are not instantiated in every translation unit. */
+GeometrySet::GeometrySet() = default;
+GeometrySet::GeometrySet(const GeometrySet &other) = default;
+GeometrySet::GeometrySet(GeometrySet &&other) = default;
+GeometrySet::~GeometrySet() = default;
+GeometrySet &GeometrySet::operator=(const GeometrySet &other) = default;
+GeometrySet &GeometrySet::operator=(GeometrySet &&other) = default;
+
/* This method can only be used when the geometry set is mutable. It returns a mutable geometry
* component of the given type.
*/