Skip to content

Commit 592564e

Browse files
authored
fix has-transformed-position (#22)
1 parent 3f8c043 commit 592564e

3 files changed

Lines changed: 10 additions & 4 deletions

File tree

yaqd-core/yaqd_core/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
from ._is_homeable import *
1616
from ._is_discrete import *
1717
from ._has_limits import *
18+
from ._has_transformed_position import *
1819
from ._has_mapping import *
1920
from ._legacy import *
2021

yaqd-core/yaqd_core/_has_transformed_position.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ def to_native(self, transformed_position):
2222

2323
def to_transformed(self, native_position):
2424
relative = native_position - self._state["native_reference_position"]
25-
return self._relative_to_transformed(self, relative)
25+
return self._relative_to_transformed(relative)
2626

2727
def _relative_to_transformed(self, relative_position):
2828
"""convert a relative coordinate to a transformed coordinate.
@@ -58,10 +58,10 @@ def set_position(self, position: float) -> None:
5858
super().set_position(self.to_native(position))
5959

6060
def get_position(self) -> float:
61-
return self.to_transformed(self._state["position"])
61+
return self.to_transformed(super().get_position())
6262

6363
def get_destination(self) -> float:
64-
return self.to_transformed(self._state["destination"])
64+
return self.to_transformed(super().get_destination())
6565

6666
def in_limits(self, position: float) -> bool:
6767
return super().in_limits(self.to_native(position))

yaqd-core/yaqd_core/_mro.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,12 @@ def assert_mro(cls, avpr):
99
mro = list(cls.__mro__)
1010
while mro:
1111
cls = mro.pop(0)
12-
if cls == yaqd_core.HasLimits:
12+
if cls == yaqd_core.HasTransformedPosition:
13+
assert traits.pop(traits.index("has-transformed-position"))
14+
assert yaqd_core.HasLimits in mro
15+
assert yaqd_core.HasPosition in mro
16+
assert yaqd_core.IsDaemon in mro
17+
elif cls == yaqd_core.HasLimits:
1318
assert traits.pop(traits.index("has-limits"))
1419
assert yaqd_core.HasPosition in mro
1520
assert yaqd_core.IsDaemon in mro

0 commit comments

Comments
 (0)