diff options
| author | Jacob Palecki <[email protected]> | 2020-08-03 14:07:21 -0700 |
|---|---|---|
| committer | Jacob Palecki <[email protected]> | 2020-08-03 14:07:21 -0700 |
| commit | 4e63da9daa1a3869caef1ac6c45c598aaf5a4b6e (patch) | |
| tree | 50ac76f551f9094707507d722a4ccb890e34aa42 | |
| parent | Merge branch 'master' into GUI (diff) | |
| download | rawaccel-4e63da9daa1a3869caef1ac6c45c598aaf5a4b6e.tar.xz rawaccel-4e63da9daa1a3869caef1ac6c45c598aaf5a4b6e.zip | |
Start work on reading from driver
| -rw-r--r-- | grapher/AccelGUI.cs | 1 | ||||
| -rw-r--r-- | grapher/Form1.cs | 1 | ||||
| -rw-r--r-- | rawaccel.sln | 2 | ||||
| -rw-r--r-- | wrapper/wrapper.cpp | 13 | ||||
| -rw-r--r-- | wrapper/wrapper.hpp | 10 | ||||
| -rw-r--r-- | wrapper/wrapper.vcxproj | 4 | ||||
| -rw-r--r-- | wrapper/wrapper.vcxproj.filters | 4 | ||||
| -rw-r--r-- | wrapper/wrapper_io.cpp | 15 | ||||
| -rw-r--r-- | wrapper/wrapper_io.hpp (renamed from wrapper/wrapper_writer.hpp) | 3 | ||||
| -rw-r--r-- | wrapper/wrapper_writer.cpp | 9 |
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); -} |