示例#1
0
 def testSaveLoadRecipe(self):
     from pyphant.core.CompositeWorker import CompositeWorker
     from pyphant.core.WorkerRegistry import WorkerRegistry
     from itertools import chain
     recipe = CompositeWorker(annotations={'foo': 42.0, 'bar': u'Hääh?'})
     wreg = WorkerRegistry.getInstance()
     workerInfos = [t.workerInfos for t in wreg.getToolBoxInfoList()]
     for wInfo in chain(*workerInfos):
         worker = wInfo.createWorker()
         recipe.addWorker(worker)
     with H5FH(self.path, 'w') as handler:
         handler.saveRecipe(recipe)
     with H5FH(self.path, 'r') as handler:
         loadedRecipe = handler.loadRecipe()
     loadedWorkers = loadedRecipe.getWorkers()
     workers = recipe.getWorkers()
     self.assertEqual(len(loadedWorkers), len(workers))
     workerNames = [w.name for w in workers]
     loadedWorkerNames = [w.name for w in loadedWorkers]
     for name in loadedWorkerNames:
         self.assertTrue(name in workerNames)
     self.assertEqual(recipe._annotations, loadedRecipe._annotations)
示例#2
0
 def setUp(self):
     self.composite = CompositeWorker()
     self.worker1 = ThresholdingWorker(self.composite)
     self.worker1.getParam('name').value = 'worker1'
     self.worker2 = ThresholdingWorker(self.composite)
     self.worker2.getParam('name').value = 'worker2'
示例#3
0
 def setUp(self):
     self.composite = CompositeWorker()
     self.worker1 = TestCompositeDummyWorker(self.composite)
     self.worker1.getParam('name').value = 'worker1'
     self.worker2 = TestCompositeDummyWorker(self.composite)
     self.worker2.getParam('name').value = 'worker2'
示例#4
0
from pyphant.core.CompositeWorker import CompositeWorker
from pyphant.core.H5FileHandler import H5FileHandler

# create a recipe
recipe = CompositeWorker()
# ... fill the recipe (e.g. Listing 1)

# save it
with H5FileHandler('quicktour_api.h5', 'w') as handler:
    handler.saveRecipe(recipe, saveResults=True)

# load a recipe
with H5FileHandler('quicktour_api.h5', 'r') as handler:
    recipe = handler.loadRecipe()