diff options
author | Jacques Lucke <jacques@blender.org> | 2021-10-03 17:58:33 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2021-10-03 17:58:33 +0300 |
commit | bf354cde9691cd26ad5110bd275a581976b06911 (patch) | |
tree | e2c0696238ea18079ec24fbb408be1d66d5e0836 | |
parent | 64d07ffcc32258c2a39800f1b930f7d262508d0d (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.hh | 7 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/geometry_set.cc | 8 |
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. */ |