diff options
| author | a1xd <[email protected]> | 2021-03-29 18:01:20 -0400 |
|---|---|---|
| committer | a1xd <[email protected]> | 2021-03-29 18:01:20 -0400 |
| commit | ed0bbc22681681a16b7d45b05133c38a0b82006f (patch) | |
| tree | 3c883ad3c85608cd167efded8cce09733527f835 /common/rawaccel-base.hpp | |
| parent | refactor common/settings (diff) | |
| download | rawaccel-ed0bbc22681681a16b7d45b05133c38a0b82006f.tar.xz rawaccel-ed0bbc22681681a16b7d45b05133c38a0b82006f.zip | |
formatting + file renames
Diffstat (limited to 'common/rawaccel-base.hpp')
| -rw-r--r-- | common/rawaccel-base.hpp | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/common/rawaccel-base.hpp b/common/rawaccel-base.hpp new file mode 100644 index 0000000..308a3fc --- /dev/null +++ b/common/rawaccel-base.hpp @@ -0,0 +1,64 @@ +#pragma once + +#include "vec2.h" + +namespace rawaccel { + using milliseconds = double; + + inline constexpr int POLL_RATE_MAX = 8000; + + inline constexpr milliseconds DEFAULT_TIME_MIN = 1000.0 / POLL_RATE_MAX / 2; + + inline constexpr milliseconds WRITE_DELAY = 1000; + + inline constexpr size_t MAX_DEV_ID_LEN = 200; + + enum class accel_mode { + classic, + natural, + motivity, + power, + noaccel + }; + + struct accel_args { + accel_mode mode = accel_mode::noaccel; + bool legacy = false; + + double offset = 0; + double cap = 1.5; + double accel_classic = 0.005; + double accel_natural = 0.1; + double accel_motivity = 1; + double motivity = 1.5; + double power = 2; + double scale = 1; + double weight = 1; + double exponent = 0.05; + double limit = 1.5; + double midpoint = 5; + }; + + struct domain_args { + vec2d domain_weights = { 1, 1 }; + double lp_norm = 2; + }; + + struct settings { + double degrees_rotation = 0; + double degrees_snap = 0; + bool combine_mags = true; + double dpi = 1000; + double speed_cap = 0; + + vec2<accel_args> argsv; + vec2d sens = { 1, 1 }; + vec2d dir_multipliers = {}; + domain_args dom_args = {}; + vec2d range_weights = { 1, 1 }; + milliseconds time_min = DEFAULT_TIME_MIN; + + wchar_t device_id[MAX_DEV_ID_LEN] = {}; + }; + +} |