INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

CS++ - A LVOOP Actor based Framework



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

21.08.2013, 07:13 (Dieser Beitrag wurde zuletzt bearbeitet: 21.08.2013 07:13 von Y-P.)
Beitrag #11

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
RE: CS++ - A LVOOP Actor based Framework
Dann bitte Profil_ergaenzen, wenn Du schon LabVIEW 2013 hast. Big Grin

Gruß Markus


(20.08.2013 15:35 )BNT schrieb:  An alle CS++ Interessierten

Ich habe nun nach dem Urlaub noch einige Kleinigkeiten geändert und ein neues Preview auf Guthub hochgeladen. Mit dem Tag LV2012 ist die letzte Version mit LabVIEW 2012 markiert.

Die weiteren Entwicklungen werden mit LV2013 fortgesetzt. LV2013 hat zwei neue LVOOP Features, die ich unbedingt benutzen möchte.
- Man kann jetzt ein Object mit Default-Daten nur mit Hilfe des Klassennamen erzeugen, wenn sich die Klasse schon im Memory befindet. Das vereinfacht das Bauen von Executables deutlich.
- Man kann sich jetzt den Namen der Klasse eine Objekts in einem Draht verraten lassen. Das ist sicher auch ganz angenehm.

Gruß Holger

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.08.2013, 10:10
Beitrag #12

BNT Offline
LVF-Freak
****


Beiträge: 744
Registriert seit: Aug 2008

5.0 - 22Q3
1999
EN

64291
Deutschland
RE: CS++ - A LVOOP Actor based Framework
An alle CS++ Interessierten

lv13_img
Auf Github ist der Preview-Branch für LabVIEW 2013 verfügbar. Er enthält die Quellen fur LV2013 (mass compile). Es wurden einige verbesserte Default-Werte in den Beispielen gesetzt.

lv12_img
Die letzte Version für LV2012SP1f4 habe ich mit dem Tag LV2012 versehen. Wer damit weitermachen möchte, sollte sich von dort aus einen eigenen Branch erzeugen.

Lesen
Wer noch bei den User Requirements Specifications im Master-Branch mitmachen möchte, sollte sich beeilen.

Gruß Holger

NI Alliance Partner & LabVIEW Champion
GnuPG Key: 6C077E71, refer to http://www.gnupg.org for details.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2013, 15:57
Beitrag #13

BNT Offline
LVF-Freak
****


Beiträge: 744
Registriert seit: Aug 2008

5.0 - 22Q3
1999
EN

64291
Deutschland
RE: CS++ - A LVOOP Actor based Framework
An alle CS++ Interessierten

Ich habe dem Projekt eine Demo Build-Specification hinzugefügt. Dazu waren wenige Änderungen an der Factory erforderlich. die ini-Dateien enthalten jetzt zusätzlich zu dem LVClassPath noch LVLibPath.

Für jede Bibliothek wurde eine Beispiel-Ini-Datei hinzugefügt.

Gruß Holger

NI Alliance Partner & LabVIEW Champion
GnuPG Key: 6C077E71, refer to http://www.gnupg.org for details.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.12.2013, 14:44
Beitrag #14

BNT Offline
LVF-Freak
****


Beiträge: 744
Registriert seit: Aug 2008

5.0 - 22Q3
1999
EN

64291
Deutschland
RE: CS++ - A LVOOP Actor based Framework
An alle CS++ Interessierten

Ich habe dem Projekt einige Geräte-Basisklassen hinzugefügt. Es wurden die IVI-Treiber zur Definition der Interfaces herangezogen. Es wurden bereits folgende IVIklassen implementiert: IVI_DMM, IVI_DCPwr, IVI_Fgen. Für dies Klassen gibt es auch schon die korresponsirenden CS++-Basisklassen mit GUI. CS++FgenGui ist noch nicht vollständig implementiert. Es fehlen noch fast alle Konfigurationskommandos.

Für jede Klassenbibliothek wurde eine Beispiel-Ini-Datei hinzugefügt.

Die neue Revision findet Ihr im Preview-Branch auf GitHub.

Gruß Holger

NI Alliance Partner & LabVIEW Champion
GnuPG Key: 6C077E71, refer to http://www.gnupg.org for details.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.05.2014, 10:09
Beitrag #15

BNT Offline
LVF-Freak
****


Beiträge: 744
Registriert seit: Aug 2008

5.0 - 22Q3
1999
EN

64291
Deutschland
RE: CS++ - A LVOOP Actor based Framework
An alle CS++ Interessierten

Ich das Projekt überarbeitet und neu strukturiert. Das Projekt ist nun als pre-alpha Release im MainDev-Branch veröffentlicht.

CS++ ist nun als Startpunkt gedacht, um die Struktur zu zeigen. Es referenziert zwei Submodule, CSPP_Core und CSPP_DeviceBase. Alle anderen gewünschten Submodule muss der Entwickler selbst hinzufügen.

Nach dem Klonen des Projekt sitzt man auf dem Master-Branch. Als erstes sollte man auf den MainDev-Branch umschalten und danach die zwei Kommandos:
Code:
git submodule init
und danach
Code:
git submodule update
ausführen, um die referenzierten Submodule-Quellen zu holen. Sie werden in dem Ordner Packages/SubmoduleName abgelegt. Weitere Submodule können mit
Code:
git submodule add URL Path
hinzugefügt werden.

Zuletzt sollte man die Quellen der Submodule auf Nur-Lesen setzen.
Code:
chmod a-w -R SubodulePath
Das hat den Vorteil, dass man die Submodul-Quellen nicht unbeabsichtigt ändert. In diesem Zusammenhang sollte man in den LabVIEW Optionen in der Kategorie Environment folgende Eigenschaften aktivieren:
  • Treat read-only VIs as locked
  • Do not save automatic changes

Nun kann man das CS++.lvproj öffnen. Es gibt eine README.txt, in dem ein Getting started enthalten ist, sowie externe Abhängigkeiten genannt sind.

Wenn jemand Änderungen an dem Projekt oder den Submodulen vornimmt, sollte er sich vorher einen eignen Branch anlegen. Alternativ kann er das Projekt auf Guthub klonen und damit arbeiten. Das gilt natürlich auch für die Submodule. Das erleichtert das Versenden und bearbeiten eines Pull-Requests. Der Git-Workflow für dieses Projekt muss noch genauer definiert werden. Ich denke dieses Dokument ist ein guter Ansatz, der von meinen Kollegen in ihrem Projekt erzwungen wird. Für das CS++-Projekt müssen natürlich noch die LabVIEW spezifischen Details berücksichtigt werden.

Wenn eigene Projekte konkret begonnen werden, sollte man auch mit einem eignen LabVIEW Projekt in einem eigenen neuen Git-Repository beginnen und die notwendigen CS++-Submodule manuell hinzufügen. Damit ist jeder Entwickler frei, die Struktur gemäß der eigenen projektspezifischen Anforderungen zu organisieren und weitere Bibliotheken hinzuzufügen, die nicht notwendig mit CS++ zu tun haben.

Als nächtes wird nun auch die Dokumentation in dem zugehörigen Github-Wiki vervollständigt.

Kritik und konstruktive Anregungen sind selbstverständlich erwünscht. Bug-Reports und Feature-Requests sollten mittels Github-Issue-Tracker eingebracht werden.

Gruß Holger

NI Alliance Partner & LabVIEW Champion
GnuPG Key: 6C077E71, refer to http://www.gnupg.org for details.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.05.2014, 13:37
Beitrag #16

BNT Offline
LVF-Freak
****


Beiträge: 744
Registriert seit: Aug 2008

5.0 - 22Q3
1999
EN

64291
Deutschland
RE: CS++ - A LVOOP Actor based Framework
Liebe CS++-Interessierten

Ich habe mal begonnen, etwas Dokumentation in dem zugehörigen Projekt-Wiki hinzuzufügen, damit der Start und die Einarbeitung etwas leichter fällt.

Gruß Holger

NI Alliance Partner & LabVIEW Champion
GnuPG Key: 6C077E71, refer to http://www.gnupg.org for details.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
10.12.2014, 10:07 (Dieser Beitrag wurde zuletzt bearbeitet: 10.12.2014 10:10 von BNT.)
Beitrag #17

BNT Offline
LVF-Freak
****


Beiträge: 744
Registriert seit: Aug 2008

5.0 - 22Q3
1999
EN

64291
Deutschland
RE: CS++ - A LVOOP Actor based Framework
Liebe CS++-Interessierten
Ich habe einen neuen Branch RC veröffentlicht.

Ich habe Neuerungen aus LV 2014 eingepflegt. Einige Umbenennungen sorgen für mehr Eindeutigkeit. Wenige Eigenschaften wurden in Basisklassen geschoben. Den Message Handler habe ich OO-konform eingebaut und als Alternative zu Syslog einen DSC-MessageLogger bereitgestellt. Die Angabe von PV-URL's in der ini-Datei ist jetzt weitgehend optional.

Ich habe auch mit dem VI-Analyzer die LV Kodierungsempfehlungen überprüft.

Also, Freiwillige vor! Wer mag Beta-Tester des Release-Kandidaten testen?
Auch die Doku im Wiki bedarf der Überarbeitung. Möchte sich jemand damit beschäftigen? Das wäre eine gute Gelegenheit sich grundlegend mit dem CS++ Framework zu beschäftigen.

Gruß Holger

NI Alliance Partner & LabVIEW Champion
GnuPG Key: 6C077E71, refer to http://www.gnupg.org for details.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.01.2015, 13:50 (Dieser Beitrag wurde zuletzt bearbeitet: 22.01.2015 13:51 von BNT.)
Beitrag #18

BNT Offline
LVF-Freak
****


Beiträge: 744
Registriert seit: Aug 2008

5.0 - 22Q3
1999
EN

64291
Deutschland
RE: CS++ - A LVOOP Actor based Framework
Liebe CS++-Interessierten
Ich habe zwei neue CS++ Submodule auf Github veröffentlicht.
  • CSPP_LNA: Diese Bibliothek erlaubt es Actor-Messages ohne Kopplung an remote Linked Network Actors zu senden. Siehe auch die aktualisierte Revision des CSPP_Example mit einem Beispiel.
  • CSPP_RT: Diese Bibliothek enthält eine von CS++Base und CS++BaseActor unabhängige Klassenbibliothek für LabVIEW RT Target-Systeme, die es auch erlaubt, auch Nachrichten ohne Kopplung zu empfangen und zu versenden. Zusätzlich werden einige Shared Variablen zu System-Health unf Watchdog veröffentlicht. Diese Bibliothek stellt nur den wiederverwendbaren Rahmen. Die eigentliche RT-Applikation muss als Kindklasse von CS++RTMain.lvclass implementiert werden.

Gruß Holger

NI Alliance Partner & LabVIEW Champion
GnuPG Key: 6C077E71, refer to http://www.gnupg.org for details.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.03.2015, 14:26
Beitrag #19

BNT Offline
LVF-Freak
****


Beiträge: 744
Registriert seit: Aug 2008

5.0 - 22Q3
1999
EN

64291
Deutschland
RE: CS++ - A LVOOP Actor based Framework
Liebe CS++-Interessierten
Die MainDev-Branches der CS++ submodule haben einen Sprung gemacht.

Wesentliches neues Feature ist, dass bei Verwendung des DSC-Moduls die Shared Variablen automatisch erzeugt werden können, wenn sie nicht schon vorher deployed wurden.

Die anderen Änderung sind Anpassungen an dieses neue Feature und Bug-Fixes.

Gruß Holger

NI Alliance Partner & LabVIEW Champion
GnuPG Key: 6C077E71, refer to http://www.gnupg.org for details.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Verständnisfrage Actor Framework lol 8 9.447 07.10.2020 13:05
Letzter Beitrag: lol
  Vorschlag für Asynchrone Rückantworten im Actor Framework BNT 1 4.771 10.10.2019 19:03
Letzter Beitrag: BNT
  NI Actor Framework - Eine Einführung BNT 11 24.544 25.07.2018 11:08
Letzter Beitrag: BNT
  Actor-Oriented Design in LabVIEW Course BNT 1 7.440 01.07.2016 14:28
Letzter Beitrag: BNT
  Actor FW - Response Msg D_Sev 1 8.610 19.02.2014 16:19
Letzter Beitrag: BNT
  UI Plugin Framework - Plugins in Runtime austauschbar? Tschirno 0 9.374 30.08.2012 09:25
Letzter Beitrag: Tschirno

Gehe zu: