summaryrefslogtreecommitdiffhomepage
path: root/spline/spline.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'spline/spline.hpp')
-rw-r--r--spline/spline.hpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/spline/spline.hpp b/spline/spline.hpp
index 85f1c969..e4f64069 100644
--- a/spline/spline.hpp
+++ b/spline/spline.hpp
@@ -48,6 +48,7 @@ public:
struct OTR_SPLINE_EXPORT base_spline_
{
+ base_spline_() = default;
virtual ~base_spline_();
virtual double get_value(double x) const = 0;
@@ -61,6 +62,9 @@ struct OTR_SPLINE_EXPORT base_spline_
virtual const points_t& get_points() const = 0;
virtual int get_point_count() const = 0;
+
+ base_spline_(const base_spline_&) = default;
+ base_spline_& operator=(const base_spline_&) = default;
};
struct OTR_SPLINE_EXPORT spline_settings_mixin
@@ -68,6 +72,10 @@ struct OTR_SPLINE_EXPORT spline_settings_mixin
virtual std::shared_ptr<base_settings> get_settings() = 0;
virtual std::shared_ptr<const base_settings> get_settings() const = 0;
+ spline_settings_mixin(const spline_settings_mixin&) = default;
+ spline_settings_mixin& operator=(const spline_settings_mixin&) = default;
+
+ spline_settings_mixin() = default;
virtual ~spline_settings_mixin();
};
@@ -79,11 +87,19 @@ struct OTR_SPLINE_EXPORT spline_modify_mixin
virtual void remove_point(int i) = 0;
virtual void clear() = 0;
+ spline_modify_mixin(const spline_modify_mixin&) = default;
+ spline_modify_mixin& operator=(const spline_modify_mixin&) = default;
+
+ spline_modify_mixin() = default;
virtual ~spline_modify_mixin();
};
struct OTR_SPLINE_EXPORT base_spline : base_spline_, spline_modify_mixin, spline_settings_mixin
{
+ base_spline(const base_spline&) = default;
+ base_spline& operator=(const base_spline&) = default;
+
+ base_spline() = default;
~base_spline() override;
};