summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authora1xd <[email protected]>2021-09-08 03:01:43 -0400
committera1xd <[email protected]>2021-09-23 22:34:51 -0400
commit864ef4d74b4f2709c8df216c5197b299389a8926 (patch)
tree6963312fe184c2a8d6cb9e3190c966f72bb494ef
parentCap type options now fully working (diff)
downloadrawaccel-864ef4d74b4f2709c8df216c5197b299389a8926.tar.xz
rawaccel-864ef4d74b4f2709c8df216c5197b299389a8926.zip
fix clang build errors
-rw-r--r--common/accel-natural.hpp1
-rw-r--r--common/accel-union.hpp20
2 files changed, 10 insertions, 11 deletions
diff --git a/common/accel-natural.hpp b/common/accel-natural.hpp
index 521a1ae..6f30a38 100644
--- a/common/accel-natural.hpp
+++ b/common/accel-natural.hpp
@@ -54,6 +54,5 @@ namespace rawaccel {
natural_base(args),
constant(-limit / accel) {}
- natural() = default;
};
}
diff --git a/common/accel-union.hpp b/common/accel-union.hpp
index 19fd9fe..136db44 100644
--- a/common/accel-union.hpp
+++ b/common/accel-union.hpp
@@ -24,11 +24,11 @@ namespace rawaccel {
loglog_sigmoid<GAIN> loglog_sigmoid_g;
loglog_sigmoid<LEGACY> loglog_sigmoid_l;
- void init(const accel_args& args)
+ template <template <bool> class AccelTemplate, typename Visitor>
+ auto visit_helper(Visitor vis, bool gain)
{
- visit([&](auto& impl) {
- impl = { args };
- }, args);
+ if (gain) return vis(reinterpret_cast<AccelTemplate<GAIN>&>(*this));
+ else return vis(reinterpret_cast<AccelTemplate<LEGACY>&>(*this));
}
template <typename Visitor>
@@ -41,17 +41,17 @@ namespace rawaccel {
case accel_mode::motivity: return visit_helper<loglog_sigmoid>(vis, args.gain);
case accel_mode::power: return visit_helper<power>(vis, args.gain);
case accel_mode::lookup: return vis(lut);
- default: return vis(noaccel);
+ default: return vis(noaccel);
}
}
- private:
- template <template <bool> class AccelTemplate, typename Visitor>
- auto visit_helper(Visitor vis, bool gain)
+ void init(const accel_args& args)
{
- if (gain) return vis(reinterpret_cast<AccelTemplate<GAIN>&>(*this));
- else return vis(reinterpret_cast<AccelTemplate<LEGACY>&>(*this));
+ visit([&](auto& impl) {
+ impl = { args };
+ }, args);
}
+
};
}