def __init__(self, file): # インプットとして指定されたファイルを読む source = CVCapture() source.start_recorded_file(file) source.need_resize = True # 画面が見えないと進捗が判らないので screen = outputs.Screen(0, size=(640, 360)) # プラグインとして自分自身(画面)を設定しコールバックを受ける outputPlugins = [self, screen] # IkaEngine を実行 self.engine = IkaEngine() self.engine.pause(False) self.engine.set_capture(source) self.engine.set_plugins(outputPlugins) try: self.engine.run() except: pass if args.write: # 正解ファイルを生成する if self.write_answer_file(file, self.engine.context): self.exit_code = 0 elif args.regression: # リグレッションテスト answer = self.read_answer_file(file) if self.test_regression(self.engine.context, answer): self.exit_code = 0 else: args.stdout = True self.exit_code = 0 if args.stdout: # 標準出力に表示 map = IkaUtils.map2text(self.engine.context['game']['map'], unknown='None') rule = IkaUtils.rule2text(self.engine.context['game']['rule'], unknown='None') print(file, map, rule)
def __init__(self, file): # インプットとして指定されたファイルを読む source = CVCapture() source.start_recorded_file(file) source.need_resize = True # 画面が見えないと進捗が判らないので screen = outputs.Screen(0, size=(640, 360)) # プラグインとして自分自身(画面)を設定しコールバックを受ける outputPlugins = [self, screen] # IkaEngine を実行 self.engine = IkaEngine() self.engine.pause(False) self.engine.set_capture(source) self.engine.set_plugins(outputPlugins) try: self.engine.run() except: pass if args.write: # 正解ファイルを生成する if self.write_answer_file(file, self.engine.context): self.exit_code = 0 elif args.regression: # リグレッションテスト answer = self.read_answer_file(file) if self.test_regression(self.engine.context, answer): self.exit_code = 0 else: args.stdout = True self.exit_code = 0 if args.stdout: # 標準出力に表示 map = IkaUtils.map2text(self.engine.context['game'][ 'map'], unknown='None') rule = IkaUtils.rule2text(self.engine.context['game'][ 'rule'], unknown='None') print(file, map, rule)
def __init__(self, file): self.file = file # インプットとして指定されたファイルを読む source = CVCapture() source.start_recorded_file(file) source.need_resize = True # 画面が見えないと進捗が判らないので screen = outputs.Screen(0, size=(640, 360)) # プラグインとして自分自身(画面)を設定しコールバックを受ける outputPlugins = [self, screen] # IkaEngine を実行 self.engine = IkaEngine() self.engine.pause(False) self.engine.set_capture(source) self.engine.set_plugins(outputPlugins) self.engine.run()