From b5da3b154e18d35c3de82566cb4e76857e39bc72 Mon Sep 17 00:00:00 2001 From: Olli Graf Date: Fri, 10 May 2024 10:27:46 +0200 Subject: [PATCH] added logging. implemented source generation of frame --- .gitignore | 1 + SourceGenerator.py | 24 ++++++++++++++++++++++++ r4matrixed.py | 29 ++++++++++------------------- 3 files changed, 35 insertions(+), 19 deletions(-) create mode 100644 SourceGenerator.py diff --git a/.gitignore b/.gitignore index 8fcee39..504713a 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,5 @@ __pycache__ lib bin +*.log diff --git a/SourceGenerator.py b/SourceGenerator.py new file mode 100644 index 0000000..2235d50 --- /dev/null +++ b/SourceGenerator.py @@ -0,0 +1,24 @@ +import logging + +class SourceGenerator: + + + def generate_source(self,field): + source = 'byte frame[8][12] ={\n' + + logging.debug(f'frame= {field.frame}') + for line in range(0,len(field.frame)): + logging.debug(f'proccessing line {line}') + curline = field.frame[line] + sourceline = '{ ' + logging.debug(f'initialized sourceline= {sourceline}') + for col in range(0,len(curline)): + logging.debug(f'processing column {col},adding {curline[col]}') + sourceline += '1, ' if curline[col] == 1 else '0, ' + logging.debug(f'sourceline for ({line},{col})={sourceline}') + sourceline += '},\n' #if col < len(curline) else '}\n' + logging.debug(f'appending sourceline {sourceline}') + source = source + sourceline + source = source + '\n};' + return source + diff --git a/r4matrixed.py b/r4matrixed.py index 0c34025..760b0c0 100755 --- a/r4matrixed.py +++ b/r4matrixed.py @@ -2,30 +2,17 @@ from field import Field import curses +import logging from curses import wrapper -field = Field() +from SourceGenerator import SourceGenerator -def generate_source(): - source = [] - source.add('byte frame[8][12] =i {') - for line in range(len(0,field.frame)): - curline = field.frame[line] - sourceline = '{' - for col in range(0,len(curline)): - pass - +logging.basicConfig( format='%(asctime)s [%(levelname)s] %(funcName)s: %(message)s', + filename='r4.log', + level=logging.DEBUG) -def print_field(): - for line in range(0,len(field)): - curline = field[line] - for col in range(0,len(curline)): - if curline[col] == 0: - print('o ', end='') - else: - print('x ', end='') - print('\n',end='') +field = Field() def inputLoop(stdscr): exitPrg = False @@ -44,6 +31,10 @@ def inputLoop(stdscr): match key: case 'q': exitPrg = True + case 'g': + generator = SourceGenerator() + source = generator.generate_source(field) + logging.debug(f'source={source}') case ' ': field.togglePixel() case '^L':