-
Daniel Meißner authoredDaniel Meißner authored
update_progress_bar.py 1.29 KiB
# -*- coding: utf-8 -*-
import time
from PyQt5.QtCore import QThread, pyqtSignal, QObject
class UpdateProgressBar(QThread):
progress = pyqtSignal(int)
run_time = pyqtSignal(int)
def __init__(self):
"""
Make a new thread instance.
:param measure_time: Time to measure spectrum
:type measure_time: int
"""
QThread.__init__(self)
def __del__(self):
self.wait()
def run(self):
self.set_start_time()
while True:
running_time_in_percent = self.time_to_percent()
self.progress.emit(running_time_in_percent)
self.run_time.emit(float(time.time())-self.start_time)
if running_time_in_percent >= 100:
# kill thread if 100 % is reached
break
else:
time.sleep(1)
def time_to_percent(self):
running_time = float(time.time())-self.start_time
percent = (running_time/self.measure_time)*100
return int(percent)
# Create setter for
#
def set_measure_time(self, t):
"""
Set time to measure.
"""
self.measure_time = t
def set_start_time(self):
"""
Set start time of capture.
"""
self.start_time = float(time.time())