Commit graph

66 commits

Author SHA1 Message Date
a1xd
efbb443ec0 rename driver_settings
found a better one

refactor driver/DeviceSetup
2021-09-08 04:43:15 -04:00
a1xd
ed42001492 make profile count dynamic (unlimited) 2021-09-06 19:11:47 -04:00
a1xd
d12c000ae2 refactor vec2/math 2021-09-03 18:09:00 -04:00
a1xd
ba4b53ddbc add per-device configuration
adds input and [in, out] cap for classic mode
adds input cap for power mode
change wrapper/input, now gets useful device names
change (now dev specific) dpi to adjust sensitivity
change y sensitivity to y/x ratio
remove spaced LUTs

grapher and convert do not build
2021-09-03 17:47:52 -04:00
a1xd
9efc361b55 allow p < 2 in Lp distance mode 2021-07-06 16:36:13 -04:00
a1xd
c55d1bfd01 optimize a bit/refactor modify 2021-04-08 02:30:01 -04:00
a1xd
d8140fb31b use callbacks for applying accel 2021-04-01 23:28:41 -04:00
a1xd
3751ac9583 add minimum to complement speed cap
important feature

fixes some validation checks
2021-04-01 20:56:29 -04:00
a1xd
31ffabf6f3 make weights work in by component mode
domain weights now applied under inf norm
range weights now applied when equal
2021-04-01 19:40:19 -04:00
a1xd
fa3ebfb1eb refactor lut/motivity 2021-03-30 18:27:02 -04:00
a1xd
11045335c1 add zero/inf/nan guards 2021-03-29 19:57:33 -04:00
a1xd
ed0bbc2268 formatting + file renames 2021-03-29 18:01:20 -04:00
a1xd
16dc4df3d4 refactor common/settings
only driver compiles

remove accel-base types

merge linear + classic

move gain cap logic into classic impl, cap is now set in terms of output

use cap/limit to determine negation

remove weight, add replacement for power mode only

remove legacy offset option
remove naturalgain mode
add legacy mode flag

naturalgain -> natural
natural -> natural + legacy flag

add dpi setting and more accel args + defaults (prep for ips mode)

replace output speed cap with input cap
2021-03-29 17:14:49 -04:00
a1xd
48463581ec increase default sens cap 2021-02-02 22:39:19 -05:00
a1xd
8dac6b3ff1 add angle snapping
probably works like interaccel
2021-01-21 22:35:37 -05:00
a1xd
e74f14f2d4 direction/distance calc - small opts 2021-01-21 15:28:51 -05:00
Jacob Palecki
6196cee980 Some fixes 2021-01-11 00:34:56 -08:00
Jacob Palecki
de6b18db82 Implement direcitonality UI 2021-01-10 23:49:28 -08:00
Jacob Palecki
a368a0ede4 Add to stigma, directional to settings 2021-01-08 00:22:33 -08:00
Jacob Palecki
1174c29eb1 Add core logic in common 2021-01-07 23:50:00 -08:00
a1xd
c221eb3d62 add changes from review
rename some vars
prefer exceptions over assert
refactor poll rate field usage in MouseWatcher
2020-12-03 22:42:29 -05:00
a1xd
5657d5a54c add directional multipliers
adds multipliers for movement in negative directions (up & left by default, can be flipped by rot or sens)

avoid division by user input in mousewatcher
2020-12-03 20:00:31 -05:00
a1xd
f0ec7a2788 move speedcap into accelerator 2020-10-21 21:03:19 -04:00
a1xd
57be3fadb7 add speed cap 2020-10-20 00:40:22 -04:00
a1xd
499691c463 raise default scale cap from 9 to 128 2020-10-10 18:01:47 -04:00
a1xd
85aefb4ba1 add arg checks in wrapper
minor changes to settings shape, requires driver reinstall
add error handling to writer

grapher changes:

add prettier serialization + comments
add elements for scale and separated limit/exp
reset irrelevant (invisible) arg input before checks/write
2020-09-27 23:04:29 -04:00
Jacob Palecki
80ffeaf6d6 Remove logarithm 2020-09-26 15:13:53 -07:00
Jacob Palecki
f4ff6334df Remove sigmoidgain, only allow one instance of grapher to run at a time 2020-09-22 15:26:08 -07:00
Jacob Palecki
45285413a9 Rename experiment two to motivity 2020-09-22 13:08:31 -07:00
a1xd
75c5f80cad add lut exp to driver 2020-09-22 03:01:34 -04:00
Jacob Palecki
7622f542da log sigmoid sens done 2020-09-19 21:24:59 -07:00
Jacob Palecki
9b4556c59f Add improved logarithm style 2020-09-09 19:56:54 -07:00
Jacob Palecki
6470bff967 Remove log and sigmoid styles 2020-09-04 01:53:59 -07:00
a1xd
9010cc593a add independent xy accel to driver
other changes:

modifier_args type name is now settings,
which is now the type passed in driver ioctl

remove most settings/args verification from driver,
plan to let gui handle most of it

add another accel arg, rate, which is used to set
the 'accel' parameter of types which call exp (nat/sig),
might want to cap it

add (update) serializable DriverSettings (ModifierArgs) class to
gui and static methods for interop

remove properties from ManagedAccel, its now just a black box
for accessing modifier methods

add exception handling in wrapper_io to throw proper managed types

change SettingsManager::Startup to make a new settings file
if an error occurs during deserialization

change structure of accel types; how offset and weight are applied
now depend on additivity of types

remove tagged_union and add a handrolled variant/visit impl

AccelGui::UpdateActiveValueLabels currently broken for caps
and a few other args

remove gui default layout and initial natural accel setup

cli not updated
2020-08-31 19:41:21 -04:00
Jacob Palecki
fe17d04e57 Display active values 2020-08-20 12:51:33 -07:00
Jacob Palecki
3dd0bb9163 Sigmoid gain 2020-08-20 00:32:11 -07:00
Jacob Palecki
53c9025337 Add natural gain accel; add scale by DPI, poll rate in GUI 2020-08-19 15:26:25 -07:00
Jacob Palecki
65a74b97c0 Disallow differing x and y weights with gain cap 2020-08-11 23:06:39 -07:00
Jacob Palecki
319eb45dee Merge branch 'master' into GainCap 2020-08-11 21:16:50 -07:00
a1xd
c7f881c869 define exceptions for invalid arg & io errors 2020-08-11 23:15:02 -04:00
Jacob Palecki
9d321ad708 Further comments 2020-08-05 01:37:24 -07:00
Jacob Palecki
a6355fd785 Fix gain cap for positive offsets 2020-08-05 01:15:15 -07:00
Jacob Palecki
97ac493359 Add velocity gain option 2020-08-04 20:32:24 -07:00
a1xd
b49a91627f move clipp/parse logic into console project 2020-07-31 20:36:17 -04:00
a1xd
b3ed8fd4e4 add more tweaks for st-refactor 2020-07-31 01:37:41 -04:00
a1xd
b59cf98c2f Make weight a member of accel_base
This exposes weight to derived accel types, which now supply a method to transform acceleration into scale.
2020-07-30 22:04:44 -04:00
a1xd
e8417a29fb add tweaks for st-refactor 2020-07-30 17:07:35 -04:00
Jacob Palecki
6bb5b03e2a Use modifier object in wrapper 2020-07-29 11:52:36 -07:00
Jacob Palecki
7963edee80 Inline methods for linking, and fix sens application bug 2020-07-29 01:10:29 -07:00
Jacob Palecki
33317e7948 Separate accel implementations into files 2020-07-29 00:35:39 -07:00