def worker_interactive_enqueue(func):
    action = scriptingprovider._ThreadActionContext(func)
    core.BNWorkerInteractiveEnqueue(0, action.callback)
def execute_on_main_thread_and_wait(func):
    action = scriptingprovider._ThreadActionContext(func)
    core.BNExecuteOnMainThreadAndWait(0, action.callback)
def worker_priority_enqueue(func):
    action = scriptingprovider._ThreadActionContext(func)
    core.BNWorkerPriorityEnqueue(0, action.callback)
def execute_on_main_thread(func):
    action = scriptingprovider._ThreadActionContext(func)
    obj = core.BNExecuteOnMainThread(0, action.callback)
    if obj:
        return plugin.MainThreadAction(obj)
    return None
def worker_interactive_enqueue(func):
	action = scriptingprovider._ThreadActionContext(func)
	core.BNWorkerInteractiveEnqueue(0, action.callback)
def worker_priority_enqueue(func):
	action = scriptingprovider._ThreadActionContext(func)
	core.BNWorkerPriorityEnqueue(0, action.callback)
def execute_on_main_thread_and_wait(func):
	action = scriptingprovider._ThreadActionContext(func)
	core.BNExecuteOnMainThreadAndWait(0, action.callback)
def execute_on_main_thread(func):
	action = scriptingprovider._ThreadActionContext(func)
	obj = core.BNExecuteOnMainThread(0, action.callback)
	if obj:
		return plugin.MainThreadAction(obj)
	return None