-
Notifications
You must be signed in to change notification settings - Fork 1
Description
As we have developed arroyopy features in other projects, I think we should consider moving a few listeners and publishers into the main arroyopy.
Tiled
Both the XPS and SAS experiments have needs for a frame publisher to publish to Tiled. Currently, one lives in the Latent Space Explorer repo. This version is fairly specific the LSE. I think we should maybe move most of that code here into arraoypy. The LSE version has a lot of custom code for deciding where in tiled to put each frame. I propose the following:
- In arroyopy, a generic
TiledFramePublisherclass. But it contains an overridable_get_tiled_path()method. - In LSE, we have a class that overrides the arroyopy class:
class LSETiledFramePublisher(TiledFramePublisher):
def _get_tiled_path(message: FrameMessage) -> Tuple[List[str], str]:
""" Do some calculation on where in tiled to put this frame
Return is a Tuple of location and slicing information
"""The return value is a little awkward, maybe we create a class that defines the path segments and enough information to patch an existing array with the new frame.
WebSocket
In LSE, there's a web socket listener
In XPS, there's a web socket publisher
Both of these probably can be generically added to arroyopy here, with minimal overrided code in the specific projects.