from abc import ABC, abstractmethod
[docs]class Robot(ABC):
"""Abstract robot interface."""
[docs] @abstractmethod
def speak(self, text) -> None:
pass
[docs] @abstractmethod
def add_event_handler(self, on_new_camera_image) -> None:
pass
[docs] @abstractmethod
def set_start_position(self) -> None:
pass
[docs] @abstractmethod
def turn_in_place(self) -> None:
pass
[docs] @abstractmethod
def react_positively(self) -> None:
pass
[docs] @abstractmethod
def react_negatively(self) -> None:
pass
[docs] @abstractmethod
def check_plate_and_celebrate(self, distance, speed, deg) -> None:
pass