Beispiel #1
0
def test_parameters_5():

    # Load parameters.
    p1 = params.parameters(test.xmlFilePathAndName("test_parameters.xml"),
                           recurse=True,
                           add_filename_param=False)

    # Save.
    p1.saveToFile("temp.xml")

    # Re-load.
    p2 = params.parameters("temp.xml", recurse=True, add_filename_param=False)

    # Check that they are the same.
    assert (len(params.difference(p1, p2)) == 0) and (len(
        params.difference(p2, p1)) == 0)
def test_parameters_5():

    # Load parameters.
    p1 = params.parameters(test.xmlFilePathAndName("test_parameters.xml"),
                           recurse = True,
                           add_filename_param = False)

    # Save.
    p1.saveToFile("temp.xml")

    # Re-load.
    p2 = params.parameters("temp.xml",
                           recurse = True,
                           add_filename_param = False)

    # Check that they are the same.
    assert (len(params.difference(p1, p2)) == 0) and (len(params.difference(p2, p1)) == 0)
def test_steve_starts(qtbot):

    parameters = params.parameters(test.steveXmlFilePathAndName("test_default.xml"))
    hdebug.startLogging(test.logDirectory(), "steve")
    mainw = steve.Window(parameters)
    mainw.show()

    qtbot.addWidget(mainw)

    # Run for about 0.5 seconds.
    qtbot.wait(500)
def test_kilroy_starts(qtbot):

    parameters = params.parameters(test.kilroyXmlFilePathAndName("test_default.xml"))

    mainw = kilroy.StandAlone(parameters)
    mainw.show()

    qtbot.addWidget(mainw)

    # Run for about 0.5 seconds.
    qtbot.wait(500)
def test_kilroy_starts(qtbot):

    parameters = params.parameters(
        test.kilroyXmlFilePathAndName("test_default.xml"))

    mainw = kilroy.StandAlone(parameters)
    mainw.show()

    qtbot.addWidget(mainw)

    # Run for about 0.5 seconds.
    qtbot.wait(500)
def test_parameters_1():

    # Load parameters.
    p1 = params.parameters(test.xmlFilePathAndName("test_parameters.xml"), recurse = True)
    
    # Check a parameter.
    assert (p1.get("camera1.flip_horizontal") == False)

    # Change it's value.
    p1.set("camera1.flip_horizontal", True)

    # Check again.
    assert (p1.get("camera1.flip_horizontal") == True)
Beispiel #7
0
    def removeOldMovie(self):
        """
        Remove old movie.
        """
        with contextlib.suppress(FileNotFoundError):
            parameters = params.parameters(self.movie_name + ".xml",
                                           recurse=True)
            os.remove(self.movie_name +
                      imageItem.getCameraExtension(parameters) +
                      parameters.get("film.filetype"))

        with contextlib.suppress(FileNotFoundError):
            os.remove(self.movie_name + ".xml")
            print("Removing", self.movie_name + ".xml")
Beispiel #8
0
def test_parameters_1():

    # Load parameters.
    p1 = params.parameters(test.xmlFilePathAndName("test_parameters.xml"),
                           recurse=True)

    # Check a parameter.
    assert (p1.get("camera1.flip_horizontal") == False)

    # Change it's value.
    p1.set("camera1.flip_horizontal", True)

    # Check again.
    assert (p1.get("camera1.flip_horizontal") == True)
def test_parameters_3():

    # Load parameters.
    p1 = params.parameters(test.xmlFilePathAndName("test_parameters.xml"), recurse = True)

    # Test sub-section creation.
    p2 = params.StormXMLObject()
    p2s = p2.addSubSection("camera1", p1.get("camera1").copy())
    p2s.add(params.ParameterInt(name = "test", value = 5))

    # p2 is different then p1 because it has 'test'.
    assert (params.difference(p2.get("camera1"), p1.get("camera1"))[0] == "test")

    # But p1 is not different from p2 because difference() only
    # checks p1 properties that exist in p1.
    assert (len(params.difference(p1.get("camera1"), p2.get("camera1"))) == 0)
Beispiel #10
0
def test_steve_hal(qtbot):
    hal = halSteveTest.HalSteveTest(config_xml="none_tcp_config.xml")
    hal.run()

    parameters = params.parameters(
        test.steveXmlFilePathAndName("test_default.xml"))
    hdebug.startLogging(test.logDirectory(), "steve")
    mainw = steve.Window(parameters)
    mainw.show()

    qtbot.addWidget(mainw)

    # Run for about 0.5 seconds.
    qtbot.wait(500)

    hal.stop()
Beispiel #11
0
def test_parameters_3():

    # Load parameters.
    p1 = params.parameters(test.xmlFilePathAndName("test_parameters.xml"),
                           recurse=True)

    # Test sub-section creation.
    p2 = params.StormXMLObject()
    p2s = p2.addSubSection("camera1", p1.get("camera1").copy())
    p2s.add(params.ParameterInt(name="test", value=5))

    # p2 is different then p1 because it has 'test'.
    assert (params.difference(p2.get("camera1"),
                              p1.get("camera1"))[0] == "test")

    # But p1 is not different from p2 because difference() only
    # checks p1 properties that exist in p1.
    assert (len(params.difference(p1.get("camera1"), p2.get("camera1"))) == 0)
def test_parameters_2():

    # Load parameters.
    p1 = params.parameters(test.xmlFilePathAndName("test_parameters.xml"), recurse = True)

    # Copy.
    p2 = p1.copy()

    # Check that p1 and p2 store the same values and have
    # the same structure.
    assert (len(params.difference(p1, p2)) == 0)

    # Change a value in p2.
    p2.set("camera1.flip_horizontal", True)

    # Check that p1 is still the same.
    assert (p1.get("camera1.flip_horizontal") == False)

    # Get the difference between p1 and p2.
    assert (params.difference(p1, p2)[0] == 'camera1.flip_horizontal')
Beispiel #13
0
def test_parameters_2():

    # Load parameters.
    p1 = params.parameters(test.xmlFilePathAndName("test_parameters.xml"),
                           recurse=True)

    # Copy.
    p2 = p1.copy()

    # Check that p1 and p2 store the same values and have
    # the same structure.
    assert (len(params.difference(p1, p2)) == 0)

    # Change a value in p2.
    p2.set("camera1.flip_horizontal", True)

    # Check that p1 is still the same.
    assert (p1.get("camera1.flip_horizontal") == False)

    # Get the difference between p1 and p2.
    assert (params.difference(p1, p2)[0] == 'camera1.flip_horizontal')
Beispiel #14
0
def reader(filename):
    """
    Returns the appropriate object based on the file type as
    saved in the corresponding XML file.
    """
    no_ext_name = os.path.splitext(filename)[0]

    # Look for XML file.
    if os.path.exists(no_ext_name + ".xml"):
        xml = parameters.parameters(no_ext_name + ".xml", recurse = True)

    # If it does not exist, then create the xml object
    # from the .inf file.
    #
    # FIXME: This is not going to work correctly for films from a multiple
    #        camera setup where all of the cameras are saving films with
    #        an extension.
    #
    elif os.path.exists(no_ext_name + ".inf"):
        xml = infToXmlObject(no_ext_name + ".inf")

    else:
        raise IOError("Could not find an associated .xml or .inf file for " + filename)

    file_type = xml.get("film.filetype")

    if (file_type == ".dax"):
        return DaxReader(filename = filename,
                         xml = xml)
    elif (file_type == ".spe"):
        return SpeReader(filename = filename,
                         xml = xml)
    elif (file_type == ".tif"): 
        return TifReader(filename = filename,
                         xml = xml)
    else:
        print(file_type, "is not a recognized file type")
    raise IOError("only .dax, .spe and .tif are supported (case sensitive..)")
Beispiel #15
0
def reader(filename):
    """
    Returns the appropriate object based on the file type as
    saved in the corresponding XML file.
    """
    no_ext_name = os.path.splitext(filename)[0]

    # Look for XML file.
    if os.path.exists(no_ext_name + ".xml"):
        xml = parameters.parameters(no_ext_name + ".xml", recurse = True)

    # If it does not exist, then create the xml object
    # from the .inf file.
    #
    # FIXME: This is not going to work correctly for films from a multiple
    #        camera setup where all of the cameras are saving films with
    #        an extension.
    #
    elif os.path.exists(no_ext_name + ".inf"):
        xml = infToXmlObject(no_ext_name + ".inf")

    else:
        raise IOError("Could not find an associated .xml or .inf file for " + filename)

    file_type = xml.get("film.filetype")

    if (file_type == ".dax"):
        return DaxReader(filename = filename,
                         xml = xml)
    elif (file_type == ".spe"):
        return SpeReader(filename = filename,
                         xml = xml)
    elif (file_type == ".tif"): 
        return TifReader(filename = filename,
                         xml = xml)
    else:
        print(file_type, "is not a recognized file type")
    raise IOError("only .dax, .spe and .tif are supported (case sensitive..)")
def test_parameters_4():

    # Load parameters.
    p1 = params.parameters(test.xmlFilePathAndName("test_parameters.xml"), recurse = True)

    # Create another set of parameters with only 1 item.
    p2 = params.StormXMLObject()
    p2.add(params.ParameterString(name = "test_param", value = "bar"))
    p2s = p2.addSubSection("camera1")
    p2s.add(params.ParameterSetBoolean(name = "flip_horizontal", value = True))
    p2s.add(params.ParameterSetBoolean(name = "flip_vertical", value = False))

    # Test copy.
    [p3, ur] = params.copyParameters(p1, p2)

    # Their should be one un-recognized parameter, 'flip_vertical'.
    assert (len(ur) == 1) and (ur[0] == "flip_vertical")

    # 'camera1.flip_horizontal' in p3 should be True.
    assert p3.get("camera1.flip_horizontal")

    # 'test_param' should be 'bar'.
    assert (p3.get("test_param") == "bar")
Beispiel #17
0
def test_parameters_4():

    # Load parameters.
    p1 = params.parameters(test.xmlFilePathAndName("test_parameters.xml"),
                           recurse=True)

    # Create another set of parameters with only 1 item.
    p2 = params.StormXMLObject()
    p2.add(params.ParameterString(name="test_param", value="bar"))
    p2s = p2.addSubSection("camera1")
    p2s.add(params.ParameterSetBoolean(name="flip_horizontal", value=True))
    p2s.add(params.ParameterSetBoolean(name="flip_vertical", value=False))

    # Test copy.
    [p3, ur] = params.copyParameters(p1, p2)

    # Their should be one un-recognized parameter, 'flip_vertical'.
    assert (len(ur) == 1) and (ur[0] == "flip_vertical")

    # 'camera1.flip_horizontal' in p3 should be True.
    assert p3.get("camera1.flip_horizontal")

    # 'test_param' should be 'bar'.
    assert (p3.get("test_param") == "bar")
Beispiel #18
0
# ----------------------------------------------------------------------------------------
# Runtime code: Kilroy is meant to be run as a stand alone
# ----------------------------------------------------------------------------------------                                
if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)

    # Show splash screen (to allow for valve initialization)
    splash_pix = QtGui.QPixmap("kilroy_splash.jpg")
    splash = QtWidgets.QSplashScreen(splash_pix, QtCore.Qt.WindowStaysOnTopHint)
    splash.setMask(splash_pix.mask())
    splash.show()
    app.processEvents()
    time.sleep(.1) # Define minimum startup time

    # Load parameters
    if len(sys.argv) == 2:
        parameters = params.parameters(sys.argv[1])
    else:
        parameters = params.parameters("kilroy_settings_default.xml")

    # Create instance of StandAlone class
    window = StandAlone(parameters)

    # Remove splash screen
    splash.hide()

    # Run main app
    window.show()
    sys.exit(app.exec_())
Beispiel #19
0
        for elt in self.modules:
            elt.currentTabChanged(tab_index)

    def loadMosaic(self, mosaic_filename):
        self.image_capture.mosaicLoaded()
        if self.item_store.loadMosaic(mosaic_filename):
            for elt in self.modules:
                elt.mosaicLoaded()


if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)

    # Load settings.
    if (len(sys.argv) == 2):
        parameters = params.parameters(sys.argv[1])
    else:
        parameters = params.parameters("settings_default.xml")

    # Start logger.
    hdebug.startLogging(parameters.get("directory") + "logs/", "steve")

    # Load app.
    window = Window(parameters=parameters)
    window.show()
    app.exec_()

#
# The MIT License
#
# Copyright (c) 2013 Zhuang Lab, Harvard University
Beispiel #20
0
def paramsToStormXML(params_filename):
    """
    Returns a StormXMLObject created from a parameters file.
    """
    return parameters.parameters(params_filename, recurse=True)