Commit 1a56662a authored by Martin Drechsler's avatar Martin Drechsler

save current image button added

parent d8be7aa8
......@@ -17,8 +17,10 @@ from zylaCameraWorker import CameraWorker
from subclasses.controllayouts import LaserControlLayout, LaserScanLayout
from subclasses.cameraParameterFrame import CameraParameterFrame
from resources.scanFunctions import create_measurement_array
from resources.storage import get_date_string
from appsettings import WORKING_DIR
from measurement import MeasurementFrame
import sys
import sys, os
import numpy as np
import logging
......@@ -157,7 +159,9 @@ class CameraGuiMainWindow(QMainWindow):
lambda: self.measurementFrame.saveMeasureButton.setEnabled(False)
)
self.measurementFrame.abortMeasureButton.clicked.connect(backend.abort_measurement)
self.cameraParamFrame.saveImgButton.clicked.connect(self.save_current_image)
for roi in self.rois:
self.cameraParamFrame.saveRoiButton.clicked.connect(lambda: roi.save(
current_binning=self.cameraParamFrame.paramTree.p.child('Basic acq parameters')
......@@ -169,6 +173,7 @@ class CameraGuiMainWindow(QMainWindow):
roi.sigRegionChanged.connect(self.cameraParamFrame.updateRoiSpinBoxes)
def camera_button_pressed(self):
if self.isCameraAcquiring:
......@@ -301,9 +306,6 @@ class CameraGuiMainWindow(QMainWindow):
plot.setLabel('left', 'Y Axis', 'Counts')
def __del__(self):
print("chau gui")
def emit_measurement_parameters_and_start(self):
measure_params = dict()
measure_params['signal_to_scan'] = self.measurementFrame.selectScanSignal.currentText()
......@@ -315,12 +317,19 @@ class CameraGuiMainWindow(QMainWindow):
for roi in self.rois:
measure_params['Roi Pos'] = roi.pos()
measure_params['Roi Size'] = roi.size()
self.signalWithMeasurementParameters.emit(measure_params)
def save_current_image(self):
saving_directory = WORKING_DIR + get_date_string()
if not os.path.exists(saving_directory):
os.makedirs(saving_directory)
os.makedirs(saving_directory + '/images')
np.save(saving_directory+'/images/'+self.cameraParamFrame.imagePrefix.text(), self.current_image)
def __del__(self):
print("chau gui")
###############################################################################
if __name__ == "__main__":
......
......@@ -14,6 +14,8 @@ from PyQt5.QtWidgets import QAction, QFileDialog, QInputDialog, QWidget
from measurement_ui import Ui_Frame
from MCDAQcontrolsignals import anal_control_signal
from appsettings import WORKING_DIR
class MeasurementFrame(QtWidgets.QFrame, Ui_Frame):
......@@ -44,6 +46,7 @@ class MeasurementFrame(QtWidgets.QFrame, Ui_Frame):
self.saveMeasureButton.setEnabled(False)
self.folderBrowser.setText(WORKING_DIR)
def select_folder(self):
directory = QFileDialog.getExistingDirectory(self, 'Choose directory')
......
......@@ -17,6 +17,13 @@ import datetime
import os
import shutil
def get_date_string():
y = datetime.datetime.now().year
m = datetime.datetime.now().month
d = datetime.datetime.now().day
s = str(y) + str(m).zfill(2) + str(d).zfill(2)
return s
class Storage(object):
"""
Class to handle data saving.
......@@ -39,6 +46,9 @@ class Storage(object):
if not os.path.exists(saving_directory):
os.makedirs(saving_directory)
os.makedirs(saving_directory + '/dump')
if not os.path.exists(saving_directory+'/dump'):
os.makedirs(saving_directory + '/dump')
s_num = self.get_saving_number()
......
......@@ -62,7 +62,12 @@ class CameraParameterFrame(QtWidgets.QFrame):
self.grid.addWidget(self.loadRoiButton, 8, 1)
self.grid.addWidget(self.saveToRoiButton, 9, 1)
#self.grid.addWidget(self.roiLayout, 7, 0, 1, 2)
self.imagePrefix = QtWidgets.QLineEdit()
self.saveImgButton = QtWidgets.QPushButton('Save image')
self.grid.addWidget(self.imagePrefix, 10, 1)
self.grid.addWidget(self.saveImgButton, 10, 0)
self.make_connections()
self.show()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment