def _run(args, log): assert args.sync_interval >= 5, args log.info("%s started", TITLE) runs_dir = var.runs_dir() s3_uri = _s3_uri(args) log.info("Synchronizing %s with runs in %s", s3_uri, runs_dir) state = State(runs_dir, s3_uri, log) sync_once = lambda: _sync_once(state) util.loop(sync_once, time.sleep, args.sync_interval, 0)
def main(): args = _init_args() _maybe_copy_config(args) config = _init_config(args) detector = detect.init_detector(config["detector"]) model = detector.init_model(config["model"]) cameras = _init_cameras(config["cameras"]) events = _init_events() context = Context(detector, model, config["object-class"], cameras, events) util.loop(lambda: _scan_once(context), lambda seconds: _wait(seconds, context), config["interval"], 0)
def poll(interval): state = _State() util.loop(lambda: _run_staged(state), time.sleep, interval, 0)
def poll(args): state = _State(args) util.loop(lambda: _run_staged(state), time.sleep, args.poll_interval, 0)
def _poll(state): util.loop(lambda: _run_staged(state), time.sleep, state.poll_interval, 0)