mirror of
https://github.com/naruxde/revpimodio2.git
synced 2025-11-08 22:03:53 +01:00
Selected / Driver gegen nun einen DeviceNotFoundError aus, wenn nicht vorhanden
debug und replace_io_file über Namen abrufbar
This commit is contained in:
@@ -27,7 +27,10 @@ Global Attributes</h3>
|
|||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
Classes</h3>
|
Classes</h3>
|
||||||
<table>
|
<table>
|
||||||
<tr><td>None</td></tr>
|
<tr>
|
||||||
|
<td><a style="color:#0000FF" href="#DeviceNotFoundError">DeviceNotFoundError</a></td>
|
||||||
|
<td>Fehler wenn ein Device nicht gefunden wird.</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
Functions</h3>
|
Functions</h3>
|
||||||
@@ -41,6 +44,37 @@ Functions</h3>
|
|||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<hr /><hr />
|
<hr /><hr />
|
||||||
|
<a NAME="DeviceNotFoundError" ID="DeviceNotFoundError"></a>
|
||||||
|
<h2 style="background-color:#FFFFFF;color:#0000FF">DeviceNotFoundError</h2>
|
||||||
|
<p>
|
||||||
|
Fehler wenn ein Device nicht gefunden wird.
|
||||||
|
</p>
|
||||||
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
|
Derived from</h3>
|
||||||
|
Exception
|
||||||
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
|
Class Attributes</h3>
|
||||||
|
<table>
|
||||||
|
<tr><td>None</td></tr>
|
||||||
|
</table>
|
||||||
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
|
Class Methods</h3>
|
||||||
|
<table>
|
||||||
|
<tr><td>None</td></tr>
|
||||||
|
</table>
|
||||||
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
|
Methods</h3>
|
||||||
|
<table>
|
||||||
|
<tr><td>None</td></tr>
|
||||||
|
</table>
|
||||||
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
|
Static Methods</h3>
|
||||||
|
<table>
|
||||||
|
<tr><td>None</td></tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<div align="right"><a style="color:#0000FF" href="#top">Up</a></div>
|
||||||
|
<hr /><hr />
|
||||||
<a NAME="acheck" ID="acheck"></a>
|
<a NAME="acheck" ID="acheck"></a>
|
||||||
<h2 style="background-color:#FFFFFF;color:#0000FF">acheck</h2>
|
<h2 style="background-color:#FFFFFF;color:#0000FF">acheck</h2>
|
||||||
<b>acheck</b>(<i>check_type, **kwargs</i>)
|
<b>acheck</b>(<i>check_type, **kwargs</i>)
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ object
|
|||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
Class Attributes</h3>
|
Class Attributes</h3>
|
||||||
<table>
|
<table>
|
||||||
<tr><td>__slots__</td></tr><tr><td>configrsc</td></tr><tr><td>cycletime</td></tr><tr><td>ioerrors</td></tr><tr><td>length</td></tr><tr><td>maxioerrors</td></tr><tr><td>monitoring</td></tr><tr><td>procimg</td></tr><tr><td>simulator</td></tr>
|
<tr><td>__slots__</td></tr><tr><td>configrsc</td></tr><tr><td>cycletime</td></tr><tr><td>debug</td></tr><tr><td>ioerrors</td></tr><tr><td>length</td></tr><tr><td>maxioerrors</td></tr><tr><td>monitoring</td></tr><tr><td>procimg</td></tr><tr><td>replace_io_file</td></tr><tr><td>simulator</td></tr>
|
||||||
</table>
|
</table>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
Class Methods</h3>
|
Class Methods</h3>
|
||||||
@@ -89,6 +89,9 @@ Methods</h3>
|
|||||||
<td><a style="color:#0000FF" href="#RevPiModIO._get_cycletime">_get_cycletime</a></td>
|
<td><a style="color:#0000FF" href="#RevPiModIO._get_cycletime">_get_cycletime</a></td>
|
||||||
<td>Gibt Aktualisierungsrate in ms der Prozessabbildsynchronisierung aus.</td>
|
<td>Gibt Aktualisierungsrate in ms der Prozessabbildsynchronisierung aus.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
|
<td><a style="color:#0000FF" href="#RevPiModIO._get_debug">_get_debug</a></td>
|
||||||
|
<td>Gibt Status des Debugflags zurueck.</td>
|
||||||
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiModIO._get_ioerrors">_get_ioerrors</a></td>
|
<td><a style="color:#0000FF" href="#RevPiModIO._get_ioerrors">_get_ioerrors</a></td>
|
||||||
<td>Getter function.</td>
|
<td>Getter function.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
@@ -104,6 +107,9 @@ Methods</h3>
|
|||||||
<td><a style="color:#0000FF" href="#RevPiModIO._get_procimg">_get_procimg</a></td>
|
<td><a style="color:#0000FF" href="#RevPiModIO._get_procimg">_get_procimg</a></td>
|
||||||
<td>Getter function.</td>
|
<td>Getter function.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
|
<td><a style="color:#0000FF" href="#RevPiModIO._get_replace_io_file">_get_replace_io_file</a></td>
|
||||||
|
<td>Gibt Pfad zur verwendeten replace IO Datei aus.</td>
|
||||||
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiModIO._get_simulator">_get_simulator</a></td>
|
<td><a style="color:#0000FF" href="#RevPiModIO._get_simulator">_get_simulator</a></td>
|
||||||
<td>Getter function.</td>
|
<td>Getter function.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
@@ -260,6 +266,17 @@ Gibt Aktualisierungsrate in ms der Prozessabbildsynchronisierung aus.
|
|||||||
<dd>
|
<dd>
|
||||||
Millisekunden
|
Millisekunden
|
||||||
</dd>
|
</dd>
|
||||||
|
</dl><a NAME="RevPiModIO._get_debug" ID="RevPiModIO._get_debug"></a>
|
||||||
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
|
RevPiModIO._get_debug</h3>
|
||||||
|
<b>_get_debug</b>(<i></i>)
|
||||||
|
<p>
|
||||||
|
Gibt Status des Debugflags zurueck.
|
||||||
|
</p><dl>
|
||||||
|
<dt>Returns:</dt>
|
||||||
|
<dd>
|
||||||
|
Status des Debugflags
|
||||||
|
</dd>
|
||||||
</dl><a NAME="RevPiModIO._get_ioerrors" ID="RevPiModIO._get_ioerrors"></a>
|
</dl><a NAME="RevPiModIO._get_ioerrors" ID="RevPiModIO._get_ioerrors"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiModIO._get_ioerrors</h3>
|
RevPiModIO._get_ioerrors</h3>
|
||||||
@@ -315,6 +332,17 @@ Getter function.
|
|||||||
<dd>
|
<dd>
|
||||||
Pfad des verwendeten Prozessabbilds
|
Pfad des verwendeten Prozessabbilds
|
||||||
</dd>
|
</dd>
|
||||||
|
</dl><a NAME="RevPiModIO._get_replace_io_file" ID="RevPiModIO._get_replace_io_file"></a>
|
||||||
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
|
RevPiModIO._get_replace_io_file</h3>
|
||||||
|
<b>_get_replace_io_file</b>(<i></i>)
|
||||||
|
<p>
|
||||||
|
Gibt Pfad zur verwendeten replace IO Datei aus.
|
||||||
|
</p><dl>
|
||||||
|
<dt>Returns:</dt>
|
||||||
|
<dd>
|
||||||
|
Pfad zur replace IO Datei
|
||||||
|
</dd>
|
||||||
</dl><a NAME="RevPiModIO._get_simulator" ID="RevPiModIO._get_simulator"></a>
|
</dl><a NAME="RevPiModIO._get_simulator" ID="RevPiModIO._get_simulator"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiModIO._get_simulator</h3>
|
RevPiModIO._get_simulator</h3>
|
||||||
|
|||||||
@@ -145,11 +145,13 @@ revpimodio2.modio.RevPiModIO._configure_replace_io?5()
|
|||||||
revpimodio2.modio.RevPiModIO._create_myfh?5()
|
revpimodio2.modio.RevPiModIO._create_myfh?5()
|
||||||
revpimodio2.modio.RevPiModIO._get_configrsc?5()
|
revpimodio2.modio.RevPiModIO._get_configrsc?5()
|
||||||
revpimodio2.modio.RevPiModIO._get_cycletime?5()
|
revpimodio2.modio.RevPiModIO._get_cycletime?5()
|
||||||
|
revpimodio2.modio.RevPiModIO._get_debug?5()
|
||||||
revpimodio2.modio.RevPiModIO._get_ioerrors?5()
|
revpimodio2.modio.RevPiModIO._get_ioerrors?5()
|
||||||
revpimodio2.modio.RevPiModIO._get_length?5()
|
revpimodio2.modio.RevPiModIO._get_length?5()
|
||||||
revpimodio2.modio.RevPiModIO._get_maxioerrors?5()
|
revpimodio2.modio.RevPiModIO._get_maxioerrors?5()
|
||||||
revpimodio2.modio.RevPiModIO._get_monitoring?5()
|
revpimodio2.modio.RevPiModIO._get_monitoring?5()
|
||||||
revpimodio2.modio.RevPiModIO._get_procimg?5()
|
revpimodio2.modio.RevPiModIO._get_procimg?5()
|
||||||
|
revpimodio2.modio.RevPiModIO._get_replace_io_file?5()
|
||||||
revpimodio2.modio.RevPiModIO._get_simulator?5()
|
revpimodio2.modio.RevPiModIO._get_simulator?5()
|
||||||
revpimodio2.modio.RevPiModIO._gotioerror?5(action, e=None)
|
revpimodio2.modio.RevPiModIO._gotioerror?5(action, e=None)
|
||||||
revpimodio2.modio.RevPiModIO._set_cycletime?5(milliseconds)
|
revpimodio2.modio.RevPiModIO._set_cycletime?5(milliseconds)
|
||||||
@@ -159,6 +161,7 @@ revpimodio2.modio.RevPiModIO.cleanup?4()
|
|||||||
revpimodio2.modio.RevPiModIO.configrsc?7
|
revpimodio2.modio.RevPiModIO.configrsc?7
|
||||||
revpimodio2.modio.RevPiModIO.cycleloop?4(func, cycletime=50)
|
revpimodio2.modio.RevPiModIO.cycleloop?4(func, cycletime=50)
|
||||||
revpimodio2.modio.RevPiModIO.cycletime?7
|
revpimodio2.modio.RevPiModIO.cycletime?7
|
||||||
|
revpimodio2.modio.RevPiModIO.debug?7
|
||||||
revpimodio2.modio.RevPiModIO.exit?4(full=True)
|
revpimodio2.modio.RevPiModIO.exit?4(full=True)
|
||||||
revpimodio2.modio.RevPiModIO.export_replaced_ios?4(filename)
|
revpimodio2.modio.RevPiModIO.export_replaced_ios?4(filename)
|
||||||
revpimodio2.modio.RevPiModIO.get_jconfigrsc?4()
|
revpimodio2.modio.RevPiModIO.get_jconfigrsc?4()
|
||||||
@@ -170,6 +173,7 @@ revpimodio2.modio.RevPiModIO.maxioerrors?7
|
|||||||
revpimodio2.modio.RevPiModIO.monitoring?7
|
revpimodio2.modio.RevPiModIO.monitoring?7
|
||||||
revpimodio2.modio.RevPiModIO.procimg?7
|
revpimodio2.modio.RevPiModIO.procimg?7
|
||||||
revpimodio2.modio.RevPiModIO.readprocimg?4(device=None)
|
revpimodio2.modio.RevPiModIO.readprocimg?4(device=None)
|
||||||
|
revpimodio2.modio.RevPiModIO.replace_io_file?7
|
||||||
revpimodio2.modio.RevPiModIO.resetioerrors?4()
|
revpimodio2.modio.RevPiModIO.resetioerrors?4()
|
||||||
revpimodio2.modio.RevPiModIO.setdefaultvalues?4(device=None)
|
revpimodio2.modio.RevPiModIO.setdefaultvalues?4(device=None)
|
||||||
revpimodio2.modio.RevPiModIO.simulator?7
|
revpimodio2.modio.RevPiModIO.simulator?7
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
Base Device
|
Base Device
|
||||||
Connect Core
|
Connect Core
|
||||||
Core Base
|
Core Base
|
||||||
|
DeviceNotFoundError Exception
|
||||||
DioModule Device
|
DioModule Device
|
||||||
EventCallback Thread
|
EventCallback Thread
|
||||||
Gateway Device
|
Gateway Device
|
||||||
|
|||||||
@@ -38,6 +38,13 @@ MEM = 302
|
|||||||
warnings.simplefilter(action="always")
|
warnings.simplefilter(action="always")
|
||||||
|
|
||||||
|
|
||||||
|
class DeviceNotFoundError(Exception):
|
||||||
|
|
||||||
|
"""Fehler wenn ein Device nicht gefunden wird."""
|
||||||
|
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
def acheck(check_type, **kwargs):
|
def acheck(check_type, **kwargs):
|
||||||
"""Check type of given arguments.
|
"""Check type of given arguments.
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ from json import load as jload
|
|||||||
from multiprocessing import cpu_count
|
from multiprocessing import cpu_count
|
||||||
from os import access, F_OK, R_OK
|
from os import access, F_OK, R_OK
|
||||||
from queue import Empty
|
from queue import Empty
|
||||||
from revpimodio2 import acheck
|
from revpimodio2 import acheck, DeviceNotFoundError
|
||||||
from signal import signal, SIG_DFL, SIGINT, SIGTERM
|
from signal import signal, SIG_DFL, SIGINT, SIGTERM
|
||||||
from threading import Thread, Event, Lock
|
from threading import Thread, Event, Lock
|
||||||
from timeit import default_timer
|
from timeit import default_timer
|
||||||
@@ -368,9 +368,7 @@ class RevPiModIO(object):
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
raise RuntimeError(
|
raise RuntimeError(
|
||||||
"replace_io_file: can not replace '{0}' with '{1}' "
|
"replace_io_file: can not replace '{0}' with '{1}' "
|
||||||
"| RevPiModIO message: {2}".format(
|
"| RevPiModIO message: {2}".format(parentio, io, e)
|
||||||
parentio, io, e
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
|
|
||||||
def _create_myfh(self):
|
def _create_myfh(self):
|
||||||
@@ -389,6 +387,11 @@ class RevPiModIO(object):
|
|||||||
@return Millisekunden"""
|
@return Millisekunden"""
|
||||||
return self._imgwriter.refresh
|
return self._imgwriter.refresh
|
||||||
|
|
||||||
|
def _get_debug(self):
|
||||||
|
"""Gibt Status des Debugflags zurueck.
|
||||||
|
@return Status des Debugflags"""
|
||||||
|
return self._debug
|
||||||
|
|
||||||
def _get_ioerrors(self):
|
def _get_ioerrors(self):
|
||||||
"""Getter function.
|
"""Getter function.
|
||||||
@return Aktuelle Anzahl gezaehlter Fehler"""
|
@return Aktuelle Anzahl gezaehlter Fehler"""
|
||||||
@@ -417,6 +420,11 @@ class RevPiModIO(object):
|
|||||||
@return Pfad des verwendeten Prozessabbilds"""
|
@return Pfad des verwendeten Prozessabbilds"""
|
||||||
return self._procimg
|
return self._procimg
|
||||||
|
|
||||||
|
def _get_replace_io_file(self):
|
||||||
|
"""Gibt Pfad zur verwendeten replace IO Datei aus.
|
||||||
|
@return Pfad zur replace IO Datei"""
|
||||||
|
return self._replace_io_file
|
||||||
|
|
||||||
def _get_simulator(self):
|
def _get_simulator(self):
|
||||||
"""Getter function.
|
"""Getter function.
|
||||||
@return True, wenn als Simulator gestartet"""
|
@return True, wenn als Simulator gestartet"""
|
||||||
@@ -992,6 +1000,7 @@ class RevPiModIO(object):
|
|||||||
|
|
||||||
return workokay
|
return workokay
|
||||||
|
|
||||||
|
debug = property(_get_debug)
|
||||||
configrsc = property(_get_configrsc)
|
configrsc = property(_get_configrsc)
|
||||||
cycletime = property(_get_cycletime, _set_cycletime)
|
cycletime = property(_get_cycletime, _set_cycletime)
|
||||||
ioerrors = property(_get_ioerrors)
|
ioerrors = property(_get_ioerrors)
|
||||||
@@ -999,6 +1008,7 @@ class RevPiModIO(object):
|
|||||||
maxioerrors = property(_get_maxioerrors, _set_maxioerrors)
|
maxioerrors = property(_get_maxioerrors, _set_maxioerrors)
|
||||||
monitoring = property(_get_monitoring)
|
monitoring = property(_get_monitoring)
|
||||||
procimg = property(_get_procimg)
|
procimg = property(_get_procimg)
|
||||||
|
replace_io_file = property(_get_replace_io_file)
|
||||||
simulator = property(_get_simulator)
|
simulator = property(_get_simulator)
|
||||||
|
|
||||||
|
|
||||||
@@ -1052,20 +1062,20 @@ class RevPiModIOSelected(RevPiModIO):
|
|||||||
|
|
||||||
if len(self.device) == 0:
|
if len(self.device) == 0:
|
||||||
if type(self) == RevPiModIODriver:
|
if type(self) == RevPiModIODriver:
|
||||||
raise RuntimeError(
|
raise DeviceNotFoundError(
|
||||||
"could not find any given VIRTUAL devices in config"
|
"could not find any given VIRTUAL devices in config"
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
raise RuntimeError(
|
raise DeviceNotFoundError(
|
||||||
"could not find any given devices in config"
|
"could not find any given devices in config"
|
||||||
)
|
)
|
||||||
elif len(self.device) != len(self._lst_devselect):
|
elif len(self.device) != len(self._lst_devselect):
|
||||||
if type(self) == RevPiModIODriver:
|
if type(self) == RevPiModIODriver:
|
||||||
raise RuntimeError(
|
raise DeviceNotFoundError(
|
||||||
"could not find all given VIRTUAL devices in config"
|
"could not find all given VIRTUAL devices in config"
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
raise RuntimeError(
|
raise DeviceNotFoundError(
|
||||||
"could not find all given devices in config"
|
"could not find all given devices in config"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -3,11 +3,11 @@
|
|||||||
__author__ = "Sven Sager"
|
__author__ = "Sven Sager"
|
||||||
__copyright__ = "Copyright (C) 2018 Sven Sager"
|
__copyright__ = "Copyright (C) 2018 Sven Sager"
|
||||||
__license__ = "LGPLv3"
|
__license__ = "LGPLv3"
|
||||||
|
|
||||||
import socket
|
import socket
|
||||||
import warnings
|
import warnings
|
||||||
from json import loads as jloads
|
from json import loads as jloads
|
||||||
from re import compile
|
from re import compile
|
||||||
|
from revpimodio2 import DeviceNotFoundError
|
||||||
from threading import Thread, Event, Lock
|
from threading import Thread, Event, Lock
|
||||||
|
|
||||||
from .device import Device
|
from .device import Device
|
||||||
@@ -696,20 +696,20 @@ class RevPiNetIOSelected(RevPiNetIO):
|
|||||||
|
|
||||||
if len(self.device) == 0:
|
if len(self.device) == 0:
|
||||||
if type(self) == RevPiNetIODriver:
|
if type(self) == RevPiNetIODriver:
|
||||||
raise RuntimeError(
|
raise DeviceNotFoundError(
|
||||||
"could not find any given VIRTUAL devices in config"
|
"could not find any given VIRTUAL devices in config"
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
raise RuntimeError(
|
raise DeviceNotFoundError(
|
||||||
"could not find any given devices in config"
|
"could not find any given devices in config"
|
||||||
)
|
)
|
||||||
elif len(self.device) != len(self._lst_devselect):
|
elif len(self.device) != len(self._lst_devselect):
|
||||||
if type(self) == RevPiNetIODriver:
|
if type(self) == RevPiNetIODriver:
|
||||||
raise RuntimeError(
|
raise DeviceNotFoundError(
|
||||||
"could not find all given VIRTUAL devices in config"
|
"could not find all given VIRTUAL devices in config"
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
raise RuntimeError(
|
raise DeviceNotFoundError(
|
||||||
"could not find all given devices in config"
|
"could not find all given devices in config"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user