Umzüge abgeschlossen

Docstrings - Code-Cleanup
This commit is contained in:
2019-10-21 08:13:17 +02:00
parent 9d85c7bdc0
commit 2ce75e0b04
4 changed files with 34 additions and 32 deletions

4
.idea/revpimodio2.iml generated
View File

@@ -1,9 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/revpimodio2" isTestSource="false" />
</content>
<content url="file://$MODULE_DIR$" />
<orderEntry type="jdk" jdkName="Python 3.6" jdkType="Python SDK" />
<orderEntry type="sourceFolder" forTests="false" />
</component>

View File

@@ -659,14 +659,13 @@ class Core(Base):
led += int_led & 2
return led
def _set_calculatedled(self, addresslist, shifted_value) -> None:
def _set_calculatedled(self, addresslist: list, shifted_value: int) -> None:
"""
Berechnet und setzt neuen Bytewert fuer LED byte.
:param addresslist: Liste der Vergleicher
:param shifted_value: Bits vergleichen
"""
# TODO: Docstring
# Byte als int holen
int_led = int.from_bytes(
self._ba_devdata[self._slc_led], byteorder="little"

View File

@@ -542,7 +542,7 @@ class IOBase(object):
der Fall, wird IMMER aufgerundet!
:param func: Funktion die bei Aenderung aufgerufen werden soll
:param delay; Verzoegerung in ms zum Ausloesen wenn Wert gleich bleibt
:param delay: Verzoegerung in ms zum Ausloesen wenn Wert gleich bleibt
:param edge: Ausfuehren bei RISING, FALLING or BOTH Wertaenderung
:param as_thread: Bei True, Funktion als EventCallback-Thread ausfuehren
:param prefire: Ausloesen mit aktuellem Wert, wenn mainloop startet
@@ -752,13 +752,15 @@ class IOBase(object):
:param okvalue: IO-Wert, bei dem das Warten sofort beendet wird
:param timeout: Zeit in ms nach der abgebrochen wird
:return: <class 'int'> erfolgreich Werte <= 0
* Erfolgreich gewartet
** Wert 0: IO hat den Wert gewechselt
** Wert -1: okvalue stimmte mit IO ueberein
* Fehlerhaft gewartet
** Wert 1: exitevent wurde gesetzt
** Wert 2: timeout abgelaufen
** Wert 100: Devicelist.exit() wurde aufgerufen
- Erfolgreich gewartet
- Wert 0: IO hat den Wert gewechselt
- Wert -1: okvalue stimmte mit IO ueberein
- Fehlerhaft gewartet
- Wert 1: exitevent wurde gesetzt
- Wert 2: timeout abgelaufen
- Wert 100: Devicelist.exit() wurde aufgerufen
"""
# Prüfen ob Device in autorefresh ist
if not self._parentdevice._selfupdate:
@@ -849,7 +851,7 @@ class IntIO(IOBase):
Umwandlung koennen 'Byteorder' (Default 'little') und 'signed' (Default
False) als Parameter gesetzt werden.
:ref:`IOBase`
:ref: :class:`IOBase`
"""
__slots__ = ()
@@ -1041,9 +1043,9 @@ class IntIOReplaceable(IntIO):
Es darf nur ein einzelnes Formatzeichen 'frm' uebergeben werden. Daraus
wird dann die benoetigte Laenge an Bytes berechnet und der Datentyp
festgelegt. Moeglich sind:
Bits / Bytes: ?, c, s
Integer : bB, hH, iI, lL, qQ
Float : e, f, d
- Bits / Bytes: ?, c, s
- Integer : bB, hH, iI, lL, qQ
- Float : e, f, d
Eine Ausnahme ist die Formatierung 's'. Hier koennen mehrere Bytes
zu einem langen IO zusammengefasst werden. Die Formatierung muss
@@ -1055,17 +1057,19 @@ class IntIOReplaceable(IntIO):
:param name: Name des neuen Inputs
:param frm: struct formatierung (1 Zeichen) oder 'ANZAHLs' z.B. '8s'
:param kwargs: Weitere Parameter:
- bmk: interne Bezeichnung fuer IO
- bit: Registriert IO als <class 'bool'> am angegebenen Bit im Byte
- byteorder: Byteorder fuer den IO, Standardwert=little
- defaultvalue: Standardwert fuer IO
- event: Funktion fuer Eventhandling registrieren
- delay: Verzoegerung in ms zum Ausloesen wenn Wert gleich bleibt
- edge: Event ausfuehren bei RISING, FALLING or BOTH Wertaenderung
- as_thread: Fuehrt die event-Funktion als RevPiCallback-Thread aus
- prefire: Ausloesen mit aktuellem Wert, wenn mainloop startet
`https://docs.python.org/3/library/struct.html#format-characters`
:param kwargs: Weitere Parameter
- bmk: interne Bezeichnung fuer IO
- bit: Registriert IO als <class 'bool'> am angegebenen Bit im Byte
- byteorder: Byteorder fuer den IO, Standardwert=little
- defaultvalue: Standardwert fuer IO
- event: Funktion fuer Eventhandling registrieren
- delay: Verzoegerung in ms zum Ausloesen wenn Wert gleich bleibt
- edge: Event ausfuehren bei RISING, FALLING or BOTH Wertaenderung
- as_thread: Fuehrt die event-Funktion als RevPiCallback-Thread aus
- prefire: Ausloesen mit aktuellem Wert, wenn mainloop startet
`<https://docs.python.org/3/library/struct.html#format-characters>`_
"""
# StructIO erzeugen
io_new = StructIO(
@@ -1095,7 +1099,6 @@ class StructIO(IOBase):
Sie stellt ueber struct die Werte in der gewuenschten Formatierung
bereit. Der struct-Formatwert wird bei der Instantiierung festgelegt.
:ref:`IOBase`
"""
__slots__ = "__frm", "_parentio_address", "_parentio_defaultvalue", \

View File

@@ -175,9 +175,11 @@ class RevPiModIO(object):
and int(dev["position"]) in self._lst_devselect:
lst_found.append(dev)
# Devices aus JSON oder Filter übernehmen
lst_devices = jconfigrsc["Devices"] if len(self._lst_devselect) == 0 \
else lst_found
# Devices Filter übernehmen
lst_devices = lst_found
else:
# Devices aus JSON übernehmen
lst_devices = jconfigrsc["Devices"]
# Device und IO Klassen anlegen
self.device = devicemodule.DeviceList()