From 2240fbe7efc98ca2216c6b556e4c3c0af11d05f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9phine=20Wolf=20Oberholtzer?= Date: Thu, 27 Feb 2025 14:36:04 -0500 Subject: [PATCH] Streamline PatternPlayer.play() --- supriya/patterns/patterns.py | 2 +- supriya/patterns/players.py | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/supriya/patterns/patterns.py b/supriya/patterns/patterns.py index 45e179971..e292245c7 100644 --- a/supriya/patterns/patterns.py +++ b/supriya/patterns/patterns.py @@ -285,7 +285,7 @@ def play( Optional[Coroutine], ] ] = None, - clock: Optional[BaseClock], + clock: BaseClock, quantization: Optional[Quantization] = None, target_bus: Optional[Bus] = None, target_node: Optional[Node] = None, diff --git a/supriya/patterns/players.py b/supriya/patterns/players.py index fe254ae1b..8165c0acb 100644 --- a/supriya/patterns/players.py +++ b/supriya/patterns/players.py @@ -20,9 +20,7 @@ from ..clocks import ( BaseClock, CallbackEvent, - Clock, ClockContext, - OfflineClock, Quantization, ) from ..contexts import Bus, Context, ContextObject, Node @@ -256,7 +254,8 @@ def play( ) if until: self._clock.schedule(self._stop_callback, event_type=2, schedule_at=until) - self._clock.start(initial_time=at) + if not self._clock.is_running and hasattr(self._clock, "start"): + self._clock.start(initial_time=at) def stop(self, quantization: Optional[Quantization] = None) -> None: with self._lock: