flandre/src/nodes/Loader.py

28 lines
824 B
Python
Raw Normal View History

2025-01-06 11:21:04 +08:00
import numpy as np
import zmq
from RfFile import RfFolder
from Msg import StrMsg, MoveAxisMsg, KillMsg
from nodes.Node import Node
class Loader(Node):
topics = [MoveAxisMsg]
def loop(self):
s2 = self.context.socket(zmq.PUSH)
s2.bind("tcp://*:5003")
rff = RfFolder.from_path('/run/media/lambda/b86dccdc-f134-464b-a310-6575ee9ae85c/cap4/trim/R1,L=30,C=PAR')
all_files = rff.all
while True:
r = self.recv()
if isinstance(r, MoveAxisMsg):
for f in all_files:
if f.S == r.value:
# s2.send(np.zeros((256, 1500), dtype=np.uint16).tobytes())
s2.send(f.path.read_bytes())
elif isinstance(r, KillMsg):
if r.name == '':
break