summaryrefslogtreecommitdiff
path: root/wrapper/wrapper.cpp
diff options
context:
space:
mode:
authora1xd <[email protected]>2020-07-31 17:56:46 -0400
committerGitHub <[email protected]>2020-07-31 17:56:46 -0400
commit1fcbb0fa51dbc35958d211026e4d40384a049049 (patch)
treeefb65bf3f305f376ea75f4f687b08bf8998c020f /wrapper/wrapper.cpp
parentMerge pull request #6 from a1xd/st-refactor (diff)
parentShow no settings for off, remove unused class for PR (diff)
downloadrawaccel-1fcbb0fa51dbc35958d211026e4d40384a049049.tar.xz
rawaccel-1fcbb0fa51dbc35958d211026e4d40384a049049.zip
Merge pull request #7 from JacobPalecki/GUI
Add GUI
Diffstat (limited to 'wrapper/wrapper.cpp')
-rw-r--r--wrapper/wrapper.cpp44
1 files changed, 41 insertions, 3 deletions
diff --git a/wrapper/wrapper.cpp b/wrapper/wrapper.cpp
index 26d05ec..ceee1a1 100644
--- a/wrapper/wrapper.cpp
+++ b/wrapper/wrapper.cpp
@@ -1,7 +1,6 @@
#pragma once
-#include "..\common\rawaccel.hpp";
-#include "wrapper.hpp";
+#include "wrapper.hpp"
using namespace rawaccel;
using namespace System;
@@ -14,4 +13,43 @@ Tuple<double, double>^ ManagedAccel::Accelerate(int x, int y, double time)
vec2d output = (*modifier_instance).modify_with_accel(input_vec2d, (milliseconds)time);
return gcnew Tuple<double, double>(output.x, output.y);
-} \ No newline at end of file
+}
+
+void ManagedAccel::UpdateAccel(
+ int mode,
+ double rotation,
+ double sensitivityX,
+ double sensitivityY,
+ double weightX,
+ double weightY,
+ double capX,
+ double capY,
+ double offset,
+ double accel,
+ double lim_exp,
+ double midpoint)
+{
+ delete modifier_instance;
+
+ modifier_args args{};
+ args.acc_fn_args.accel_mode = mode;
+ args.degrees = rotation;
+ args.sens.x = sensitivityX;
+ args.sens.y = sensitivityY;
+ args.acc_fn_args.acc_args.weight.x = weightX;
+ args.acc_fn_args.acc_args.weight.y = weightY;
+ args.acc_fn_args.cap.x = capX;
+ args.acc_fn_args.cap.y = capY;
+ args.acc_fn_args.acc_args.offset = offset;
+ args.acc_fn_args.acc_args.accel = accel;
+ args.acc_fn_args.acc_args.limit = lim_exp;
+ args.acc_fn_args.acc_args.exponent = lim_exp;
+ args.acc_fn_args.acc_args.midpoint = midpoint;
+
+ modifier_instance = new mouse_modifier(args);
+}
+
+void ManagedAccel::WriteToDriver()
+{
+ driverWriter->writeToDriver(modifier_instance);
+}