v4.0.13

v4.0.13 führt ein OMV-Escape-Code-Protokoll ein, mit dem auf der Kamera laufende Skripte die IDE direkt aus dem Print-/Terminal-Ausgabestrom steuern können, und ändert zwei Standardeinstellungen: Das Synchronisieren importierter Bibliotheken ist jetzt opt-in, und zwei Kontextmenüeinträge des Framebuffers sind jetzt ausgeblendet. Die Version bleibt bei der Basis Qt Creator 10.0.1. Es gibt keine Brüche der Skripting-API, aber einige für den Benutzer sichtbare Workflow-Standards wurden geändert.

Highlights

  • Das OMV-Escape-Code-Protokoll ermöglicht es Skripten auf der Kamera, Popup-Dialogfelder für Info/Warnung/Fehler/Frage sowie ein Speichern eines Bildes im Dataset Editor direkt aus dem Print-/Terminal-Ausgabestrom auszulösen.

  • Die Dialog-Ratenbegrenzung begrenzt durch Escape-Codes ausgelöste Popups auf eines pro Sekunde, sodass ein schnell ausgebendes Skript keine Fenster überfluten kann.

  • Die Imports-Synchronisierung ist jetzt opt-in und über einen neuen Umschalter im Tools-Menü zugänglich, anstatt automatisch zu laufen.

  • Saubereres Print-Output, da der überflüssige Zeilenumbruch nach einem Framebuffer-/JPEG-Bild jetzt sowohl in der IDE-Print-Ausgabe als auch im seriellen Terminal entfernt wird.

  • Verschlanktes Framebuffer-Menü, da die Kontextmenüeinträge Save Template to Cam und Save Descriptor to Cam jetzt ausgeblendet sind.

Neue Funktionen

  • OMV-Escape-Code-Protokoll. Auf der Kamera laufende Skripte können die IDE jetzt mithilfe eines neuen OMV-Escape-Code-Protokolls aus dem Print-/Terminal-Ausgabestrom steuern. Zu den unterstützten Funktionen gehören das Zurücksetzen des Systems, das Erstellen von gepuffertem Text ab START_TEXT, das Auslösen von Popup-Dialogfeldern für Info, Warnung, Fehler und Frage sowie das ferngesteuerte Auslösen eines Bildspeichervorgangs im Dataset Editor. Dies fügt openmvpluginescapecodeparser.{cpp,h} mit einem ESCAPE_CODE_FUNCTION_*-Enum hinzu, bindet den Parser in outputwindow.cpp und openmvterminal.cpp ein und verbindet das Speichern im Dataset Editor mit datasetEditorSnapshotAction (77e6b1987).

Weitere Änderungen und Verbesserungen

  • Durch Escape-Codes ausgelöste Dialoge sind ratenbegrenzt auf höchstens einen pro Sekunde, sodass ein schnell ausgebendes Skript keine Popup-Fenster überfluten kann (8b2bbae57).

  • Kürzeres Escape-Code-Präfix. Das Präfix der benutzerdefinierten Befehlssequenz wurde im Terminal-/Ausgabeparser vom dreistelligen OMV auf ein einzelnes O verkürzt (90423e6f5).

  • Die Imports-Synchronisierung ist standardmäßig deaktiviert. Das automatische Synchronisieren importierter Bibliotheken zwischen der OpenMV Cam und dem Dokumentenordner ist jetzt standardmäßig deaktiviert und über einen neuen, persistenten Umschalter im Tools-Menü, Sync Imports between OpenMV Cam and Documents Folder, zugänglich (0b6ee2590).

  • Gekürztes Framebuffer-Kontextmenü. Die Einträge Save Template to Cam und Save Descriptor to Cam sind jetzt im Rechtsklick-Kontextmenü des Framebuffers ausgeblendet (die Aktionen existieren im Code weiterhin, sind aber unsichtbar gemacht) (33a3e62a7).

Fehlerbehebungen

  • Einen überflüssigen Zeilenumbruch behoben, der nach einem Framebuffer-/JPEG-Bild in der IDE-Print-Ausgabe und im seriellen Terminal erschien, sodass nachfolgender Text jetzt sauber ausgegeben wird (afc817024).

Plattform- und Werkzeugunterstützung

  • Qt-Creator-Basis: 10.0.1.

  • Die OpenMV-IDE-Version wurde von 4.0.12 auf 4.0.13 angehoben (b4f0030c5).

Breaking changes

Es gibt keine Brüche der Skripting-API, aber zwei für den Benutzer sichtbare Standardeinstellungen wurden geändert:

  • Das Rechtsklick-Kontextmenü des Framebuffers zeigt nicht mehr Save Template to Cam oder Save Descriptor to Cam an (diese Einträge sind jetzt ausgeblendet).

  • Das automatische Synchronisieren importierter Bibliotheken zwischen der OpenMV Cam und dem Dokumentenordner ist jetzt standardmäßig AUS und muss über den neuen Umschalter Sync Imports between OpenMV Cam and Documents Folder im Tools-Menü aktiviert werden.