summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob Palecki <[email protected]>2020-08-03 14:07:21 -0700
committerJacob Palecki <[email protected]>2020-08-03 14:07:21 -0700
commit4e63da9daa1a3869caef1ac6c45c598aaf5a4b6e (patch)
tree50ac76f551f9094707507d722a4ccb890e34aa42
parentMerge branch 'master' into GUI (diff)
downloadrawaccel-4e63da9daa1a3869caef1ac6c45c598aaf5a4b6e.tar.xz
rawaccel-4e63da9daa1a3869caef1ac6c45c598aaf5a4b6e.zip
Start work on reading from driver
-rw-r--r--grapher/AccelGUI.cs1
-rw-r--r--grapher/Form1.cs1
-rw-r--r--rawaccel.sln2
-rw-r--r--wrapper/wrapper.cpp13
-rw-r--r--wrapper/wrapper.hpp10
-rw-r--r--wrapper/wrapper.vcxproj4
-rw-r--r--wrapper/wrapper.vcxproj.filters4
-rw-r--r--wrapper/wrapper_io.cpp15
-rw-r--r--wrapper/wrapper_io.hpp (renamed from wrapper/wrapper_writer.hpp)3
-rw-r--r--wrapper/wrapper_writer.cpp9
10 files changed, 40 insertions, 22 deletions
diff --git a/grapher/AccelGUI.cs b/grapher/AccelGUI.cs
index b8f1bed..8ef411f 100644
--- a/grapher/AccelGUI.cs
+++ b/grapher/AccelGUI.cs
@@ -49,6 +49,7 @@ namespace grapher
LimitOrExponent = limtOrExp;
Midpoint = midpoint;
+ ManagedAcceleration.ReadFromDriver();
UpdateGraph();
}
diff --git a/grapher/Form1.cs b/grapher/Form1.cs
index 7fa6928..4edb9e3 100644
--- a/grapher/Form1.cs
+++ b/grapher/Form1.cs
@@ -223,7 +223,6 @@ namespace grapher
AccelGUI.Acceleration.Field.Data,
AccelGUI.LimitOrExponent.Field.Data,
AccelGUI.Midpoint.Field.Data);
- AccelGUI.ManagedAcceleration.WriteToDriver();
AccelGUI.UpdateGraph();
}
diff --git a/rawaccel.sln b/rawaccel.sln
index 3325e47..33735fd 100644
--- a/rawaccel.sln
+++ b/rawaccel.sln
@@ -23,6 +23,8 @@ Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
common-install\common-install.vcxitems*{058d66c6-d88b-4fdb-b0e4-0a6fe7483b95}*SharedItemsImports = 9
common\common.vcxitems*{24b4226f-1461-408f-a1a4-1371c97153ea}*SharedItemsImports = 9
+ common\common.vcxitems*{28a3656f-a1de-405c-b547-191c32ec555f}*SharedItemsImports = 4
+ common\common.vcxitems*{60d6c942-ac20-4c05-a2be-54b5c966534d}*SharedItemsImports = 4
common-install\common-install.vcxitems*{896950d1-520a-420a-b6b1-73014b92a68c}*SharedItemsImports = 4
common-install\common-install.vcxitems*{a4097ff6-a6f0-44e8-b8d0-538d0fb75936}*SharedItemsImports = 4
common\common.vcxitems*{ab7b3759-b85f-4067-8935-fb4539b41869}*SharedItemsImports = 4
diff --git a/wrapper/wrapper.cpp b/wrapper/wrapper.cpp
index bd0574f..38ac481 100644
--- a/wrapper/wrapper.cpp
+++ b/wrapper/wrapper.cpp
@@ -30,8 +30,6 @@ void ManagedAccel::UpdateAccel(
double lim_exp,
double midpoint)
{
- delete modifier_instance;
-
modifier_args args{};
args.acc_fn_args.accel_mode = mode;
args.degrees = rotation;
@@ -46,11 +44,20 @@ void ManagedAccel::UpdateAccel(
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;
+
+ mouse_modifier* temp_modifier = new mouse_modifier(args);
+ driverWriter->writeToDriver(temp_modifier);
+ delete temp_modifier;
- modifier_instance = new mouse_modifier(args);
+ ReadFromDriver();
}
void ManagedAccel::WriteToDriver()
{
driverWriter->writeToDriver(modifier_instance);
}
+
+void ManagedAccel::ReadFromDriver()
+{
+ modifier_instance = driverWriter->readFromDriver();
+}
diff --git a/wrapper/wrapper.hpp b/wrapper/wrapper.hpp
index e8f100d..22a1b1e 100644
--- a/wrapper/wrapper.hpp
+++ b/wrapper/wrapper.hpp
@@ -5,7 +5,7 @@
#include <rawaccel.hpp>
#include <accel-error.hpp>
-#include "wrapper_writer.hpp"
+#include "wrapper_io.hpp"
using namespace rawaccel;
using namespace System;
@@ -14,18 +14,18 @@ public ref class ManagedAccel
{
protected:
mouse_modifier* modifier_instance;
- writer* driverWriter;
+ wrapper_io* driverWriter;
public:
ManagedAccel(mouse_modifier* accel)
: modifier_instance(accel)
{
- driverWriter = new writer();
+ driverWriter = new wrapper_io();
}
ManagedAccel(System::IntPtr args)
{
modifier_instance = new mouse_modifier(*reinterpret_cast<modifier_args*>(args.ToPointer()));
- driverWriter = new writer();
+ driverWriter = new wrapper_io();
}
virtual ~ManagedAccel()
@@ -66,4 +66,6 @@ public:
void WriteToDriver();
+
+ void ReadFromDriver();
}; \ No newline at end of file
diff --git a/wrapper/wrapper.vcxproj b/wrapper/wrapper.vcxproj
index bffbf8b..3407d6d 100644
--- a/wrapper/wrapper.vcxproj
+++ b/wrapper/wrapper.vcxproj
@@ -117,11 +117,11 @@
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="wrapper.hpp" />
- <ClInclude Include="wrapper_writer.hpp" />
+ <ClInclude Include="wrapper_io.hpp" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="wrapper.cpp" />
- <ClCompile Include="wrapper_writer.cpp" />
+ <ClCompile Include="wrapper_io.cpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
diff --git a/wrapper/wrapper.vcxproj.filters b/wrapper/wrapper.vcxproj.filters
index 28b22ba..60fcc9c 100644
--- a/wrapper/wrapper.vcxproj.filters
+++ b/wrapper/wrapper.vcxproj.filters
@@ -18,7 +18,7 @@
<ClInclude Include="wrapper.hpp">
<Filter>Header Files</Filter>
</ClInclude>
- <ClInclude Include="wrapper_writer.hpp">
+ <ClInclude Include="wrapper_io.hpp">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
@@ -26,7 +26,7 @@
<ClCompile Include="wrapper.cpp">
<Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="wrapper_writer.cpp">
+ <ClCompile Include="wrapper_io.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
diff --git a/wrapper/wrapper_io.cpp b/wrapper/wrapper_io.cpp
new file mode 100644
index 0000000..be3bd58
--- /dev/null
+++ b/wrapper/wrapper_io.cpp
@@ -0,0 +1,15 @@
+#pragma once
+
+#include <rawaccel-io.hpp>
+#include "wrapper_io.hpp"
+
+void wrapper_io::writeToDriver(rawaccel::mouse_modifier* modifier)
+{
+ rawaccel::write(*modifier);
+}
+
+rawaccel::mouse_modifier* wrapper_io::readFromDriver()
+{
+ rawaccel::mouse_modifier modifier = rawaccel::read();
+ return &(modifier);
+}
diff --git a/wrapper/wrapper_writer.hpp b/wrapper/wrapper_io.hpp
index dcbef10..3427e3f 100644
--- a/wrapper/wrapper_writer.hpp
+++ b/wrapper/wrapper_io.hpp
@@ -2,6 +2,7 @@
#include <rawaccel.hpp>
-struct writer {
+struct wrapper_io {
void writeToDriver(rawaccel::mouse_modifier* modifier);
+ rawaccel::mouse_modifier* readFromDriver();
}; \ No newline at end of file
diff --git a/wrapper/wrapper_writer.cpp b/wrapper/wrapper_writer.cpp
deleted file mode 100644
index da7c9bf..0000000
--- a/wrapper/wrapper_writer.cpp
+++ /dev/null
@@ -1,9 +0,0 @@
-#pragma once
-
-#include <rawaccel-io.hpp>
-#include "wrapper_writer.hpp"
-
-void writer::writeToDriver(rawaccel::mouse_modifier* modifier)
-{
- rawaccel::write(*modifier);
-}