Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions external_samples/component.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
from abc import ABC, abstractmethod
from enum import Enum
from collections.abc import Callable, Protocol

class EmptyCallable(Protocol):
def __call__(self) -> bool:
pass
class PortType(Enum):
CAN_PORT = 1
SMART_IO_PORT = 2
Expand Down
7 changes: 3 additions & 4 deletions external_samples/rev_touch_sensor.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
from component import Component, PortType, InvalidPortException
from collections.abc import Callable
from component import Component, PortType, InvalidPortException, EmptyCallable

class RevTouchSensor(Component):
def __init__(self, ports : list[tuple[PortType, int]]):
Expand Down Expand Up @@ -44,11 +43,11 @@ def is_pressed(self) -> bool:
return self.is_pressed

# Events
def register_when_pressed(self, callback: Callable[[], None]) -> None:
def register_when_pressed(self, callback: EmptyCallable) -> None:
'''Event when touch sensor is first pressed'''
self.pressed_callback = callback


def register_when_released(self, callback: Callable[[], None]) -> None:
def register_when_released(self, callback: EmptyCallable) -> None:
'''Event when touch sensor is first released'''
self.released_callback = callback