1from typing
import NoReturn, Any
6 Base-Class for synchronisation parts. A subclass need to be implemented for each part (e.g. iCub interaction; ANNarchy simulation)
8 def __init__(self, *args, **kwargs) -> None: ...
12 Need to be implemented. Should contain necessary input retrieval.
17 Raises NotImplementedError as default. Need to be overwritten in the actual implementation.
21 def update(self, T: int) -> NoReturn:
23 Need to be implemented. Should contain necessary update steps -> e.g. ANNarchy simulation.
28 number of timesteps for the update -> e.g. simulation time for ANNarchy
33 Raises NotImplementedError as default. Need to be overwritten in the actual implementation.
40 Main Class for synchronisation, needs to be instantiated only once.
44 def add(self, instance: ClockInterface) -> Any:
46 Add instance of class inherited from "ClockInterface" for synchronisation.
50 instance : sublass of ClockInterface
51 Class instance which is derived from ClockInterface (need to be implemented serperately).
56 Raises TypeError, if instances is not a sublass of ClockInterface.
60 def update(self, T: int) -> NoReturn:
62 Perform an update for each registered instance in parallel. Contains an input retrieval step and the actual update.
67 number of timesteps for the update -> e.g. simulation time for ANNarchy
NoReturn sync_input(self)
NoReturn update(self, int T)
None __init__(self, *args, **kwargs)
NoReturn update(self, int T)
Any add(self, ClockInterface instance)