ED_LRR/ed_lrr_gui/preprocess.py

37 lines
985 B
Python

# -*- coding: utf-8 -*-
import queue
from collections import namedtuple
from datetime import datetime, timedelta
from multiprocessing import Process, Queue, freeze_support
import _ed_lrr
class Preprocessor(Process):
def __init__(self, *args, **kwargs):
super().__init__()
self.state = {}
self.queue = Queue()
self.daemon = True
self.args = args
self.kwargs = kwargs
self.kwargs["callback"] = self.callback
def callback(self, state):
self.queue.put({"status": state})
def run(self):
res = _ed_lrr.preprocess(*self.args, **self.kwargs)
self.queue.put({"result": res})
if __name__ == "__main__":
freeze_support()
r = Preprocessor(
r"D:\devel\rust\ED_LRR\dumps\systemsWithCoordinates.json",
r"D:\devel\rust\ED_LRR\dumps\bodies.json",
r"D:\devel\rust\ED_LRR\stars.csv",
)
for i, e in enumerate(r):
print(e)