diff --git a/doc/index.html b/doc/index.html
new file mode 100644
index 0000000..418bfe4
--- /dev/null
+++ b/doc/index.html
@@ -0,0 +1,26 @@
+
+
+Table of contents
+
+
+
+
+Table of contents
+
+
+
+
+Modules
+
+
+| procimgserver |
+Stellt Funktionen bereit um das Prozessabbild zu ueberwachen. |
+
+| proginit |
+Main functions of our program. |
+
+| revpipyload |
+Revolution Pi Python PLC Loader. |
+
+
+
\ No newline at end of file
diff --git a/doc/procimgserver.html b/doc/procimgserver.html
index 0f398e2..4c37d09 100644
--- a/doc/procimgserver.html
+++ b/doc/procimgserver.html
@@ -69,6 +69,9 @@ Methods
ios |
Generiert ein dict() der Devices und IOs. |
+| loadrevpimodio |
+Instantiiert das RevPiModIO Modul. |
+
| setvalue |
Setzt einen Wert auf dem RevPi. |
@@ -137,7 +140,13 @@ IO Typ inp/out
pickled dict()
-
+
+
+ProcimgServer.loadrevpimodio
+loadrevpimodio()
+
+Instantiiert das RevPiModIO Modul.
+
ProcimgServer.setvalue
setvalue(device, io, value)
diff --git a/eric-revpipyload.api b/eric-revpipyload.api
index 8b39e80..bdcbe29 100644
--- a/eric-revpipyload.api
+++ b/eric-revpipyload.api
@@ -1,5 +1,6 @@
procimgserver.ProcimgServer.devices?4()
procimgserver.ProcimgServer.ios?4(type)
+procimgserver.ProcimgServer.loadrevpimodio?4()
procimgserver.ProcimgServer.setvalue?4(device, io, value)
procimgserver.ProcimgServer.start?4()
procimgserver.ProcimgServer.stop?4()
diff --git a/revpipyload.e4p b/revpipyload.e4p
index b090706..cbbcf57 100644
--- a/revpipyload.e4p
+++ b/revpipyload.e4p
@@ -1,7 +1,7 @@
-
+
en_US
@@ -212,12 +212,6 @@
setup.py
-
- noindex
-
-
- True
-
outputDirectory
diff --git a/revpipyload/procimgserver.py b/revpipyload/procimgserver.py
index 0248908..06f4c71 100644
--- a/revpipyload/procimgserver.py
+++ b/revpipyload/procimgserver.py
@@ -41,6 +41,9 @@ class ProcimgServer():
self.logger = logger
self.logger.debug("enter ProcimgServer.__init__()")
self.acl = aclmode
+ self.configrsc = configrsc
+ self.procimg = procimg
+ self.rpi = None
# XML-Server übernehmen
self.xmlsrv = xmlserver
@@ -55,14 +58,7 @@ class ProcimgServer():
"ps_setvalue": self.setvalue,
}
- # RevPiModIO-Modul Instantiieren
- self.logger.debug("create revpimodio class")
- self.rpi = revpimodio.RevPiModIO(
- configrsc=configrsc,
- procimg=procimg,
- )
- self.rpi.devices.syncoutputs(device=0)
- self.logger.debug("created revpimodio class")
+ self.loadrevpimodio()
self.logger.debug("leave ProcimgServer.__init__()")
@@ -101,6 +97,20 @@ class ProcimgServer():
])
return Binary(pickle.dumps(dict_ios))
+ def loadrevpimodio(self):
+ """Instantiiert das RevPiModIO Modul."""
+ # RevPiModIO-Modul Instantiieren
+ if self.rpi is not None:
+ self.rpi.cleanup()
+
+ self.logger.debug("create revpimodio class")
+ self.rpi = revpimodio.RevPiModIO(
+ configrsc=self.configrsc,
+ procimg=self.procimg,
+ )
+ self.rpi.devices.syncoutputs(device=0)
+ self.logger.debug("created revpimodio class")
+
def setvalue(self, device, io, value):
"""Setzt einen Wert auf dem RevPi.
diff --git a/revpipyload/revpipyload.py b/revpipyload/revpipyload.py
index 912ea3e..270d11f 100755
--- a/revpipyload/revpipyload.py
+++ b/revpipyload/revpipyload.py
@@ -477,6 +477,7 @@ class RevPiPyLoad():
# Klassenattribute
self._exit = True
+ self.pictorymtime = os.path.getmtime(configrsc)
self.evt_loadconfig = Event()
self.globalconfig = ConfigParser()
self.logr = LogReader()
@@ -580,7 +581,7 @@ class RevPiPyLoad():
self.xml_ps = None
proginit.logger.warning(
"can not load revpimodio module. maybe its not installed "
- "or an old version (required at least 0.11.0). if you "
+ "or an old version (required at least 0.15.0). if you "
"like to use the process monitor feature, update/install "
"revpimodio: 'apt-get install python3-revpimodio'"
)
@@ -751,6 +752,16 @@ class RevPiPyLoad():
while not self._exit \
and not self.evt_loadconfig.is_set():
+
+ # piCtory auf Veränderung prüfen
+ if self.pictorymtime != os.path.getmtime(configrsc):
+ proginit.logger.warning("piCtory configuration was changed")
+ self.pictorymtime = os.path.getmtime(configrsc)
+
+ if self.xml_ps is not None:
+ self.xml_psstop()
+ self.xml_ps.loadrevpimodio()
+
self.evt_loadconfig.wait(1)
if not self._exit: