Exemple #1
0
 def doSuccessWaitFile(self, _edPlugin=None):
     with self.locked():
         self.DEBUG("EDPluginWaitMultiFile.doSuccessWaitFile")
         self.retrieveSuccessMessages(
             _edPlugin, "EDPluginWaitMultiFile.doSuccessWaitFile")
         xsdFile = _edPlugin.dataOutput.actualFile
         if _edPlugin.dataOutput.getActualSize() is None:
             self.WARNING("Wait for file %s finished in timeout!" %
                          _edPlugin.dataInput.expectedFile.path.value)
             self.DEBUG("Please check why XSDataResultWaitFile is:\n%s" %
                        _edPlugin.dataOutput.marshal())
             self.DEBUG(
                 "This usually happens when EDPluginWaitFile has no configuration file or EDNA_SITE is undefined"
             )
             self.setFailure()
         else:
             self.__filesize.append(_edPlugin.dataOutput.actualSize.value)
             if _edPlugin.dataOutput.timedOut.value:
                 self.__bAnyTimeOut = True
             if xsdFile is not None:
                 xsdiAccumulator = XSDataInputAccumulator()
                 xsdiAccumulator.setItem([xsdFile.path
                                          ])  #Mandatory to be a list !!!
                 edPluginAccumulator = self.loadPlugin(
                     self.__strControlledPluginAccumulator)
                 edPluginAccumulator.setDataInput(xsdiAccumulator)
                 edPluginAccumulator.connectSUCCESS(
                     self.doSuccessAccumulator)
                 edPluginAccumulator.connectFAILURE(
                     self.doFailureAccumulator)
                 edPluginAccumulator.execute()
 def preProcess(self):
     """
     PreProcess of the execution test: download an EDF file from http://www.edna-site.org
     """
     EDTestCasePluginExecuteControlMedianFilterImagev1_0.preProcess(self)
     self.loadTestImage([ "noise2.edf", "noise3.edf", "noise4.edf", "noise5.edf", "noise6.edf"])
     acc = EDFactoryPluginStatic.loadPlugin("EDPluginAccumulatorv1_0")
     xsdIn = XSDataInputAccumulator()
     xsdIn.setItem([XSDataString(os.path.join(self.getTestsDataImagesHome(), "noise%i.edf" % i)) for i in [2, 3, 5, 6]])
     acc.setDataInput(xsdIn)
     acc.executeSynchronous()
    def process(self, _edObject=None):
        EDPluginControl.process(self)
        self.DEBUG("EDPluginControlAlignStackv1_0.process")

        for iFrame in self.iFrames:
            edPluginExecAccumulator = self.loadPlugin(self.__strControlledPluginAccumulator)
            queryRaw = XSDataQuery()
            queryShift = XSDataQuery()
            queryRaw.setRemoveItems(XSDataBoolean(False))
            queryShift.setRemoveItems(XSDataBoolean(False))
            xsdataAcc = XSDataInputAccumulator()
            if  (EDPluginControlAlignStackv1_0.__iRefFrame == iFrame) or (self.bDoAlign == False) :
                EDPluginControlAlignStackv1_0.__dictAbsShift[iFrame] = (0.0, 0.0)
                EDPluginControlAlignStackv1_0.__dictRelShift[iFrame] = (0.0, 0.0)
                self.hdf5_offset(index=iFrame, offset=[0.0, 0.0])
                edPluginExecShift = self.loadPlugin(self.__strControlledPluginShift)
                xsdata = XSDataInputShiftImage(index=XSDataInteger(iFrame),
                                               offset=[XSDataDouble(i) for i in EDPluginControlAlignStackv1_0.__dictAbsShift[iFrame]],
                                               inputImage=self.getFrameRef(iFrame),
                                               outputImage=XSDataImageExt(shared=XSDataString("Shifted-%06i" % iFrame)))
                edPluginExecShift.setDataInput(xsdata)
                edPluginExecShift.connectSUCCESS(self.doSuccessExecShiftImage)
                edPluginExecShift.connectFAILURE(self.doFailureExecShiftImage)
                self.queue.put(edPluginExecShift)
                if (self.bDoAlign == False):
                    self.executeControlledPlugins()
                    return

            elif EDPluginControlAlignStackv1_0.__iRefFrame < iFrame:
                if self.bAlwaysMOvsRef:
                    queryRaw.setItem([XSDataString("raw %04i" % (EDPluginControlAlignStackv1_0.__iRefFrame)), XSDataString("raw %04i" % iFrame)])
                    xsdataAcc.setQuery([queryRaw])
                else:
                    queryRaw.setItem([XSDataString("raw %04i" % (iFrame - 1)), XSDataString("raw %04i" % iFrame)])
                    queryShift.setItem([XSDataString("shift %04i" % i) for i in range(EDPluginControlAlignStackv1_0.__iRefFrame + 1, iFrame + 1)])
                    xsdataAcc.setQuery([queryRaw, queryShift])
            elif EDPluginControlAlignStackv1_0.__iRefFrame > iFrame:
                if self.bAlwaysMOvsRef:
                    queryRaw.setItem([ XSDataString("raw %04i" % iFrame), XSDataString("raw %04i" % (EDPluginControlAlignStackv1_0.__iRefFrame))])
                    xsdataAcc.setQuery([queryRaw])
                else:
                    queryRaw.setItem([XSDataString("raw %04i" % (iFrame + 1)), XSDataString("raw %04i" % iFrame)])
                    queryShift.setItem([XSDataString("shift %04i" % i) for i in range(EDPluginControlAlignStackv1_0.__iRefFrame - 1, iFrame - 1, -1)])
                    xsdataAcc.setQuery([queryRaw, queryShift])
            if (EDPluginControlAlignStackv1_0.__iRefFrame == iFrame):
                self.saveReferenceFrame(iFrame)

            xsdataAcc.setItem([XSDataString("raw %04i" % iFrame)])
            edPluginExecAccumulator.setDataInput(xsdataAcc)
            edPluginExecAccumulator.connectSUCCESS(self.doSuccessExecAccumultor)
            edPluginExecAccumulator.connectFAILURE(self.doFailureExecAccumulator)
            self.queue.put(edPluginExecAccumulator)
        self.executeControlledPlugins()
 def preProcess(self, _edObject=None):
     EDPluginControl.preProcess(self)
     self.DEBUG("EDPluginControlMedianFilterImagev1_0.preProcess")
     # Load the execution plugin
     self.__edPluginExecAccumulator = self.loadPlugin(self.__strControlledPluginAccumulator)
     self.image = os.path.abspath(self.getDataInput().getInputImage().getPath().getValue())
     self.width = self.getDataInput().getFilterWidth().getValue()
     if self.getDataInput().getMedianFilteredImage() is not None:
         self.outputImage = os.path.abspath(self.getDataInput().getMedianFilteredImage().getPath().getValue())
     xsdAcc = XSDataInputAccumulator()
     xsdAcc.setQuery([self.prepareQuery(self.image, self.width)])
     xsdAcc.setItem([XSDataString(self.image)])
     self.__edPluginExecAccumulator.setDataInput(xsdAcc)
Exemple #5
0
 def preProcess(self, _edObject=None):
     EDPluginControl.preProcess(self)
     self.DEBUG("EDPluginControlMedianFilterImagev1_0.preProcess")
     # Load the execution plugin
     self.__edPluginExecAccumulator = self.loadPlugin(
         self.__strControlledPluginAccumulator)
     self.image = os.path.abspath(
         self.getDataInput().getInputImage().getPath().getValue())
     self.width = self.getDataInput().getFilterWidth().getValue()
     if self.getDataInput().getMedianFilteredImage() is not None:
         self.outputImage = os.path.abspath(self.getDataInput(
         ).getMedianFilteredImage().getPath().getValue())
     xsdAcc = XSDataInputAccumulator()
     xsdAcc.setQuery([self.prepareQuery(self.image, self.width)])
     xsdAcc.setItem([XSDataString(self.image)])
     self.__edPluginExecAccumulator.setDataInput(xsdAcc)
 def preProcess(self):
     """
     PreProcess of the execution test: download an EDF file from http://www.edna-site.org
     """
     EDTestCasePluginExecuteControlMedianFilterImagev1_0.preProcess(self)
     self.loadTestImage([
         "noise2.edf", "noise3.edf", "noise4.edf", "noise5.edf",
         "noise6.edf"
     ])
     acc = EDFactoryPluginStatic.loadPlugin("EDPluginAccumulatorv1_0")
     xsdIn = XSDataInputAccumulator()
     xsdIn.setItem([
         XSDataString(
             os.path.join(self.getTestsDataImagesHome(), "noise%i.edf" % i))
         for i in [2, 3, 5, 6]
     ])
     acc.setDataInput(xsdIn)
     acc.executeSynchronous()
 def doSuccessWaitFile(self, _edPlugin=None):
     with self.locked():
         self.DEBUG("EDPluginWaitMultiFile.doSuccessWaitFile")
         self.retrieveSuccessMessages(_edPlugin, "EDPluginWaitMultiFile.doSuccessWaitFile")
         xsdFile = _edPlugin.dataOutput.actualFile
         if _edPlugin.dataOutput.getActualSize() is None:
             self.WARNING("Wait for file %s finished in timeout!" % _edPlugin.dataInput.expectedFile.path.value)
             self.DEBUG("Please check why XSDataResultWaitFile is:\n%s" % _edPlugin.dataOutput.marshal())
             self.DEBUG("This usually happens when EDPluginWaitFile has no configuration file or EDNA_SITE is undefined")
             self.setFailure()
         else:
             self.__filesize.append(_edPlugin.dataOutput.actualSize.value)
             if _edPlugin.dataOutput.timedOut.value:
                 self.__bAnyTimeOut = True
             if xsdFile is not None:
                 xsdiAccumulator = XSDataInputAccumulator()
                 xsdiAccumulator.setItem([xsdFile.path]) #Mandatory to be a list !!!
                 edPluginAccumulator = self.loadPlugin(self.__strControlledPluginAccumulator)
                 edPluginAccumulator.setDataInput(xsdiAccumulator)
                 edPluginAccumulator.connectSUCCESS(self.doSuccessAccumulator)
                 edPluginAccumulator.connectFAILURE(self.doFailureAccumulator)
                 edPluginAccumulator.execute()
Exemple #8
0
    def process(self, _edObject=None):
        EDPluginControl.process(self)
        self.DEBUG("EDPluginControlAlignStackv1_0.process")

        for iFrame in self.iFrames:
            edPluginExecAccumulator = self.loadPlugin(
                self.__strControlledPluginAccumulator)
            queryRaw = XSDataQuery()
            queryShift = XSDataQuery()
            queryRaw.setRemoveItems(XSDataBoolean(False))
            queryShift.setRemoveItems(XSDataBoolean(False))
            xsdataAcc = XSDataInputAccumulator()
            if (EDPluginControlAlignStackv1_0.__iRefFrame
                    == iFrame) or (self.bDoAlign == False):
                EDPluginControlAlignStackv1_0.__dictAbsShift[iFrame] = (0.0,
                                                                        0.0)
                EDPluginControlAlignStackv1_0.__dictRelShift[iFrame] = (0.0,
                                                                        0.0)
                self.hdf5_offset(index=iFrame, offset=[0.0, 0.0])
                edPluginExecShift = self.loadPlugin(
                    self.__strControlledPluginShift)
                xsdata = XSDataInputShiftImage(
                    index=XSDataInteger(iFrame),
                    offset=[
                        XSDataDouble(i) for i in
                        EDPluginControlAlignStackv1_0.__dictAbsShift[iFrame]
                    ],
                    inputImage=self.getFrameRef(iFrame),
                    outputImage=XSDataImageExt(
                        shared=XSDataString("Shifted-%06i" % iFrame)))
                edPluginExecShift.setDataInput(xsdata)
                edPluginExecShift.connectSUCCESS(self.doSuccessExecShiftImage)
                edPluginExecShift.connectFAILURE(self.doFailureExecShiftImage)
                self.queue.put(edPluginExecShift)
                if (self.bDoAlign == False):
                    self.executeControlledPlugins()
                    return

            elif EDPluginControlAlignStackv1_0.__iRefFrame < iFrame:
                if self.bAlwaysMOvsRef:
                    queryRaw.setItem([
                        XSDataString(
                            "raw %04i" %
                            (EDPluginControlAlignStackv1_0.__iRefFrame)),
                        XSDataString("raw %04i" % iFrame)
                    ])
                    xsdataAcc.setQuery([queryRaw])
                else:
                    queryRaw.setItem([
                        XSDataString("raw %04i" % (iFrame - 1)),
                        XSDataString("raw %04i" % iFrame)
                    ])
                    queryShift.setItem([
                        XSDataString("shift %04i" % i) for i in range(
                            EDPluginControlAlignStackv1_0.__iRefFrame +
                            1, iFrame + 1)
                    ])
                    xsdataAcc.setQuery([queryRaw, queryShift])
            elif EDPluginControlAlignStackv1_0.__iRefFrame > iFrame:
                if self.bAlwaysMOvsRef:
                    queryRaw.setItem([
                        XSDataString("raw %04i" % iFrame),
                        XSDataString(
                            "raw %04i" %
                            (EDPluginControlAlignStackv1_0.__iRefFrame))
                    ])
                    xsdataAcc.setQuery([queryRaw])
                else:
                    queryRaw.setItem([
                        XSDataString("raw %04i" % (iFrame + 1)),
                        XSDataString("raw %04i" % iFrame)
                    ])
                    queryShift.setItem([
                        XSDataString("shift %04i" % i) for i in range(
                            EDPluginControlAlignStackv1_0.__iRefFrame -
                            1, iFrame - 1, -1)
                    ])
                    xsdataAcc.setQuery([queryRaw, queryShift])
            if (EDPluginControlAlignStackv1_0.__iRefFrame == iFrame):
                self.saveReferenceFrame(iFrame)

            xsdataAcc.setItem([XSDataString("raw %04i" % iFrame)])
            edPluginExecAccumulator.setDataInput(xsdataAcc)
            edPluginExecAccumulator.connectSUCCESS(
                self.doSuccessExecAccumultor)
            edPluginExecAccumulator.connectFAILURE(
                self.doFailureExecAccumulator)
            self.queue.put(edPluginExecAccumulator)
        self.executeControlledPlugins()