def test_register(): from kwiver.vital.config import config from kwiver.vital.modules import modules from kwiver.sprokit.pipeline import pipeline from kwiver.sprokit.pipeline import scheduler_factory modules.load_known_modules() sched_type = 'python_example' sched_desc = 'simple description' scheduler_factory.add_scheduler(sched_type, sched_desc, example_scheduler(True)) if not sched_desc == scheduler_factory.description(sched_type): test_error("Description was not preserved when registering") p = pipeline.Pipeline() try: s = scheduler_factory.create_scheduler(sched_type, p) if s is None: raise Exception() except: test_error("Could not create newly registered scheduler type")
def __sprokit_register__(): from kwiver.sprokit.pipeline import scheduler_factory module_name = 'python:test.pythonpath.scheduler_test' if scheduler_factory.is_scheduler_module_loaded(module_name): return scheduler_factory.add_scheduler('pythonpath_test_scheduler', 'A test scheduler.', TestPythonScheduler) scheduler_factory.mark_scheduler_module_as_loaded(module_name)
def __sprokit_register__(): from kwiver.sprokit.pipeline import scheduler_factory module_name = 'python:schedulers' if scheduler_factory.is_scheduler_module_loaded(module_name): return scheduler_factory.add_scheduler('pythread_per_process', 'Run each process in its own Python thread', PyThreadPerProcessScheduler) scheduler_factory.mark_scheduler_module_as_loaded(module_name)
def test_wrapper_api(): from kwiver.vital.config import config from kwiver.vital.modules import modules from kwiver.sprokit.pipeline import pipeline from kwiver.sprokit.pipeline import process_factory from kwiver.sprokit.pipeline import scheduler_factory sched_type = 'python_example' sched_desc = 'simple description' modules.load_known_modules() scheduler_factory.add_scheduler(sched_type, sched_desc, example_scheduler(False)) p = pipeline.Pipeline() proc_type = 'orphan' proc_name = 'orphan' proc = process_factory.create_process(proc_type, proc_name) p.add_process(proc) def check_scheduler(s): if s is None: test_error("Got a 'None' scheduler") return s.start() s.pause() s.resume() s.stop() s.start() s.wait() del s p.reset() p.setup_pipeline() s = scheduler_factory.create_scheduler(sched_type, p) check_scheduler(s)