set_spyset_spySetSpySetSpyset_spy (Operator)
Name
set_spyset_spySetSpySetSpyset_spy — Steuern des HALCON Debugging Tools.
Signatur
Herror set_spy(const char* Class, const char* Value)
Herror T_set_spy(const Htuple Class, const Htuple Value)
Beschreibung
set_spyset_spySetSpySetSpySetSpyset_spy ist das HALCON Debugging Tool.
Es erlaubt die flexible Überwachung der Ein- und Ausgabedaten
von HALCON-Operatoren - sowohl graphisch
als auch textuell. Aktiviert wird die Datenkontrolle mittels
set_spy(::'mode','on':)set_spy("mode","on")SetSpy("mode","on")SetSpy("mode","on")SetSpy("mode","on")set_spy("mode","on"),
ausgeschaltet mittels
set_spy(::'mode','off':)set_spy("mode","off")SetSpy("mode","off")SetSpy("mode","off")SetSpy("mode","off")set_spy("mode","off").
Außerdem kann das Debugging Tool mit der Environmentvariable
HALCONSPY aktiviert werden: Wenn diese Variable definiert ist,
entspricht das dem Aufruf mit 'mode'"mode""mode""mode""mode""mode" und 'on'"on""on""on""on""on".
Die folgenden Überwachungsmodi (ClassClassClassClassclassValclass) können über ValueValueValueValuevaluevalue
gesteuert werden:
ClassClassClassClassclassValclass = 'operator'"operator""operator""operator""operator""operator"
-
Bei Aufruf einer Routine werden deren Name und die Namen
ihrer Parameter (in TRIAS Notation) ausgegeben.
ValueValueValueValuevaluevalue: 'on'"on""on""on""on""on" oder 'off'"off""off""off""off""off".
Standardwert: 'off'"off""off""off""off""off".
ClassClassClassClassclassValclass = 'input_control'"input_control""input_control""input_control""input_control""input_control"
-
Bei Aufruf einer Routine werden die Namen und Werte der
Eingabesteuerparameter ausgegeben.
ValueValueValueValuevaluevalue: 'on'"on""on""on""on""on" oder 'off'"off""off""off""off""off".
Standardwert: 'off'"off""off""off""off""off".
ClassClassClassClassclassValclass = 'output_control'"output_control""output_control""output_control""output_control""output_control"
-
Bei Aufruf einer Routine werden die Namen und Werte der
Ausgabesteuerparameter ausgegeben.
ValueValueValueValuevaluevalue: 'on'"on""on""on""on""on" oder 'off'"off""off""off""off""off".
Standardwert: 'off'"off""off""off""off""off".
ClassClassClassClassclassValclass = 'db'"db""db""db""db""db"
-
Informationen über die 4 Relationen in der
HALCON-Datenbank. Dies ist insbesondere bei der
Suche nach vergessenen clear_objclear_objClearObjClearObjClearObjclear_obj zu suchen.
ValueValueValueValuevaluevalue: 'on'"on""on""on""on""on" oder 'off'"off""off""off""off""off".
Standardwert: 'off'"off""off""off""off""off".
ClassClassClassClassclassValclass = 'parameter_values'"parameter_values""parameter_values""parameter_values""parameter_values""parameter_values"
-
Ergänzung zu 'input_control'"input_control""input_control""input_control""input_control""input_control" und
'output_control'"output_control""output_control""output_control""output_control""output_control":
Gibt an, wie viele Werte pro Parameter maximal
ausgegeben werden sollen (maximale
Tupellänge für Ausgabe).
ValueValueValueValuevaluevalue: Tupellänge (integer)
Standardwert: 4
ClassClassClassClassclassValclass = 'time'"time""time""time""time""time"
-
Rechenzeit für die Ausführung des Operators
ValueValueValueValuevaluevalue: 'on'"on""on""on""on""on" oder 'off'"off""off""off""off""off".
Standardwert: 'off'"off""off""off""off""off".
ClassClassClassClassclassValclass = 'log_file'"log_file""log_file""log_file""log_file""log_file"
-
Umleitung der Textausgabe von spy in ein File, das mit
open_file geöffnet wurde.
ValueValueValueValuevaluevalue: ein File Handle (siehe
open_fileopen_fileOpenFileOpenFileOpenFileopen_file).
ClassClassClassClassclassValclass = 'error'"error""error""error""error""error"
-
Ist 'error'"error""error""error""error""error" eingeschaltet, gibt spy
beim Auftreten eines internen Fehlers die
Prozeduren (Datei/Zeilennummer) aus,
bei denen der Fehler auftritt.
ValueValueValueValuevaluevalue: 'on'"on""on""on""on""on" oder 'off'"off""off""off""off""off".
Standardwert: 'off'"off""off""off""off""off".
ClassClassClassClassclassValclass = 'internal'"internal""internal""internal""internal""internal"
-
Ist 'internal'"internal""internal""internal""internal""internal" eingeschaltet, gibt spy
vor dem Aufruf eines internen HALCON-Operators den
Prozedurname mit ihren Parametern (Datei/Zeilennummer) aus.
ValueValueValueValuevaluevalue: 'on'"on""on""on""on""on" oder 'off'"off""off""off""off""off".
Standardwert: 'off'"off""off""off""off""off".
Jede Ausgabe beginnt mit dem thread handle, gefolgt von einem globalen
Zähler, welcher die Reihenfolge der Ausgaben markiert. In multi-threaded
Anwendungen kann mit dieser Information die Ausgabe einzelnen User Threads
zugeordnet und der chronologische Ablauf rekonstruiert werden.
Achtung
Unter Windows funktioniert die Ausgabe auf stdout nur in
Konsolenapplikationen. Dies bedeutet, dass man diesen Mechanismus zum
Beispiel nicht in Kombination mit HDevelop verwenden kann.
Ausführungsinformationen
- Multithreading-Typ: exclusive (läuft parallel nur zu unabhängigen Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Parameter
ClassClassClassClassclassValclass (input_control) string → HTuplestrHTupleHtuple (string) (string) (HString) (char*)
Überwachungsmodus
Defaultwert:
'mode'
"mode"
"mode"
"mode"
"mode"
"mode"
Werteliste: 'db'"db""db""db""db""db", 'error'"error""error""error""error""error", 'input_control'"input_control""input_control""input_control""input_control""input_control", 'internal'"internal""internal""internal""internal""internal", 'log_file'"log_file""log_file""log_file""log_file""log_file", 'mode'"mode""mode""mode""mode""mode", 'operator'"operator""operator""operator""operator""operator", 'output_control'"output_control""output_control""output_control""output_control""output_control", 'parameter_values'"parameter_values""parameter_values""parameter_values""parameter_values""parameter_values", 'time'"time""time""time""time""time"
ValueValueValueValuevaluevalue (input_control) string → HTupleUnion[str, int, float]HTupleHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)
Einzustellender Status des Überwachungsmodus.
Defaultwert:
'on'
"on"
"on"
"on"
"on"
"on"
Wertevorschläge: 'on'"on""on""on""on""on", 'off'"off""off""off""off""off", 1, 2, 3, 4, 5, 10, 50, 0.0, 1.0, 2.0, 5.0, 10.0
Beispiel (C)
/* init spy: Setting of the wished control modi */
set_spy("mode","on");
set_spy("operator","on");
set_spy("input_control","on");
set_spy("output_control","on");
/* calling of program section, that will be examined */
set_spy("mode","off");
Ergebnis
set_spyset_spySetSpySetSpySetSpyset_spy liefert den Wert TRUE, falls die Parameter korrekt sind.
Ansonsten wird eine Fehlerbehandlung durchgeführt.
Vorgänger
reset_obj_dbreset_obj_dbResetObjDbResetObjDbResetObjDbreset_obj_db
Siehe auch
get_spyget_spyGetSpyGetSpyGetSpyget_spy,
query_spyquery_spyQuerySpyQuerySpyQuerySpyquery_spy
Modul
Foundation