summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2020-07-31 21:14:05 +0200
committerNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2020-07-31 21:14:05 +0200
commit038b03bbf519bdc44d1b8a3fce34901943c9bc7b (patch)
tree6087a4fea8d78da04bd5c682b7520a3807351404 /src/device/axis
parent6ca39654bfc65eee45cb38cbc53ce838d1f656a0 (diff)
Implementing what is needed for rel axis renaming.
Diffstat (limited to 'src/device/axis')
-rw-r--r--src/device/axis/axis.c9
-rw-r--r--src/device/axis/axis_filter.c5
-rw-r--r--src/device/axis/axis_option.c4
3 files changed, 18 insertions, 0 deletions
diff --git a/src/device/axis/axis.c b/src/device/axis/axis.c
index 1cdb856..ada6fa3 100644
--- a/src/device/axis/axis.c
+++ b/src/device/axis/axis.c
@@ -46,6 +46,15 @@ void relabsd_axis_enable
axis->is_enabled = 1;
}
+int relabsd_axis_has_flag
+(
+ const struct relabsd_axis axis [const restrict static 1],
+ const enum relabsd_axis_flag flag
+)
+{
+ return axis->flags[flag];
+}
+
int relabsd_axis_is_enabled
(
const struct relabsd_axis axis [const restrict static 1]
diff --git a/src/device/axis/axis_filter.c b/src/device/axis/axis_filter.c
index 04dfdb7..6258ad9 100644
--- a/src/device/axis/axis_filter.c
+++ b/src/device/axis/axis_filter.c
@@ -122,6 +122,11 @@ int relabsd_axis_filter_new_value
return 0;
}
+ if (axis->flags[RELABSD_NOT_ABS])
+ {
+ return 1;
+ }
+
if (axis->flags[RELABSD_DIRECT])
{
return direct_filter(axis, value);
diff --git a/src/device/axis/axis_option.c b/src/device/axis/axis_option.c
index 8e52fe1..7796eb7 100644
--- a/src/device/axis/axis_option.c
+++ b/src/device/axis/axis_option.c
@@ -57,6 +57,10 @@ int relabsd_axis_enable_option_from_name
);
}
}
+ else if (RELABSD_IS_PREFIX("notabs", option_name))
+ {
+ axis->flags[RELABSD_NOT_ABS] = 1;
+ }
else if (RELABSD_IS_PREFIX("convert_to=", option_name))
{
axis->convert_to =