Reihenfolge des Iterators der Devices ist nun nach Position im Prozessabbild

sortiert und nicht nach Position - Entspricht piCtory
This commit is contained in:
2018-06-27 12:12:31 +02:00
parent 69a7020aac
commit 8e0d1b7455
5 changed files with 14 additions and 5 deletions

View File

@@ -832,6 +832,9 @@ DeviceList.__iter__</h3>
<b>__iter__</b>(<i></i>)
<p>
Gibt Iterator aller Devices zurueck.
</p><p>
Die Reihenfolge ist nach Position im Prozessabbild sortiert und nicht
nach Position (Dies entspricht der Positionierung aus piCtory)!
</p><dl>
<dt>Returns:</dt>
<dd>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Project SYSTEM "Project-5.1.dtd">
<!-- eric project file for project revpimodio2 -->
<!-- Saved: 2018-04-17, 08:56:16 -->
<!-- Saved: 2018-06-27, 11:30:13 -->
<!-- Copyright (C) 2018 Sven Sager, akira@narux.de -->
<Project version="5.1">
<Language>en_US</Language>
@@ -9,7 +9,7 @@
<ProgLanguage mixed="0">Python3</ProgLanguage>
<ProjectType>Console</ProjectType>
<Description>Das Modul stellt alle Devices und IOs aus der piCtory Konfiguration in Python3 zur Verfügung. Es ermöglicht den direkten Zugriff auf die Werte über deren vergebenen Namen. Lese- und Schreibaktionen mit dem Prozessabbild werden von dem Modul selbst verwaltet, ohne dass sich der Programmierer um Offsets und Adressen kümmern muss. Für die Gatewaymodule wie ModbusTCP oder Profinet sind eigene 'Inputs' und 'Outputs' über einen bestimmten Adressbereich definierbar. Auf diese IOs kann mit Python3 über den Namen direkt auf die Werte zugegriffen werden.</Description>
<Version>2.1.5</Version>
<Version>2.1.6</Version>
<Author>Sven Sager</Author>
<Email>akira@narux.de</Email>
<Eol index="1"/>

View File

@@ -25,7 +25,7 @@ __all__ = [
__author__ = "Sven Sager <akira@revpimodio.org>"
__name__ = "revpimodio2"
__package__ = "revpimodio2"
__version__ = "2.1.5"
__version__ = "2.1.6"
# Global package values
OFF = 0

View File

@@ -72,8 +72,14 @@ class DeviceList(object):
def __iter__(self):
"""Gibt Iterator aller Devices zurueck.
Die Reihenfolge ist nach Position im Prozessabbild sortiert und nicht
nach Position (Dies entspricht der Positionierung aus piCtory)!
@return <class 'iter'> aller Devices"""
for dev in sorted(self.__dict_position):
for dev in sorted(
self.__dict_position,
key=lambda key: self.__dict_position[key]._offset):
yield self.__dict_position[dev]
def __len__(self):

View File

@@ -16,7 +16,7 @@ setup(
license="LGPLv3",
name="revpimodio2",
version="2.1.5",
version="2.1.6",
packages=["revpimodio2"],
python_requires="~=3.2",