starting work on multibar

This commit is contained in:
Benoît Sierro
2023-09-15 14:08:29 +02:00
parent 34d407a921
commit 9381ebe3f3
2 changed files with 19 additions and 1 deletions

View File

@@ -576,7 +576,7 @@ envelope_rules = default_rules + [
Rule("gamma_op", lambda: operators.constant_quantity(0.0), priorities=-1),
Rule("ss_op", lambda w_c, w0: operators.constant_quantity(w_c / w0)),
Rule("ss_op", lambda: operators.constant_quantity(0), priorities=-1),
Rule("spm_op", operators.envelope_spm),
Rule("spm_op", operators.envelope_spm, conditions=dict(spm=True)),
Rule("spm_op", operators.no_op_freq, priorities=-1),
Rule("raman_op", operators.envelope_raman),
Rule("raman_op", operators.no_op_freq, priorities=-1),

View File

@@ -0,0 +1,18 @@
from multiprocessing import Process, Queue
from threading import Thread
from tqdm import tqdm
class Multibar(Thread):
queue: Queue
bars:list[tqdm]
def __init__(self, bars:list[tqdm], queue:Queue):
self.queue = queue
self.bars = bars
def run(self):
while True:
bar_id, amount = self.queue.get(True, None)
self.bars[bar_id].update(amount)
self.bars[0].update(amount)