1
0
This repository has been archived on 2024-10-31. You can view files and clone it, but cannot push or open issues or pull requests.
ProgramChooser/example/main.py

36 lines
1.4 KiB
Python
Raw Permalink Normal View History

"""
An example main.py which makes use of the ProgramChooser library
Copyright (C) 2024 Benjamin Burkhardt <bluefox@privacynerd.de>
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.
"""
# import library and the garbage collector - nothing more
2024-03-09 18:56:28 +00:00
from ProgramChooser import ProgramChooser
import gc # garbage collector for better memory performance
2024-03-09 18:56:28 +00:00
# extra functions to access the garbage collector
2024-03-10 15:31:09 +00:00
def randomblink():
import randomblink
randomblink.run()
gc.collect()
2024-03-09 18:56:28 +00:00
def lcd_big_hello():
2024-03-10 15:31:09 +00:00
import lcd_big_hello
2024-03-09 18:56:28 +00:00
lcd_big_hello.run()
gc.collect()
2024-03-09 18:56:28 +00:00
# create a programs dict, where the items are callables (functions)
2024-03-09 18:56:28 +00:00
programs = {
2024-03-10 15:31:09 +00:00
"randomblink": randomblink,
2024-03-09 18:56:28 +00:00
"lcd_big_hello": lcd_big_hello
}
pc = ProgramChooser(programs, 7, 8, debug=True) # initialize the ProgramChooser
pc.run() # and run it (will be an endless loop)