set_spy
— Control of the HALCON Debugging Tools.
The operator set_spy
is the HALCON debugging tool.
This tool allows the flexible control of the input and output data
of HALCON-operators - in graphical as well as in textual form.
The datacontrol is activated by using
set_spy(::'mode','on':)
,
and deactivated by using
set_spy(::'mode','off':)
.
The debugging tool can further be activated with the help of the environment variable HALCONSPY. The definition of this variable corresponds to calling up 'mode' and 'on' .
The following control modes can be tuned (in any desired combination
of course) with the help of Class
/Value
:
Class Meaning / Value
When a routine is called, its name and the names of its parameters will be given (in TRIAS notation).
Value: 'on' or 'off'
default: 'off'
When a routine is called, the names and values of the input control parameters will be given.
Value: 'on' or 'off'
default: 'off'
When a routine is called, the names and values of the output control parameters are given.
Value: 'on' or 'off'
default: 'off'
Additional information on 'input_control' and 'output_control': indicates how many values per parameter shall be displayed at most (maximum tuplet length of the output).
Value: tuplet length (integer)
default: 4
Information concerning the 4 relations in the
HALCON-database. This is especially valuable
in looking for forgotten clear_obj
.
Value: 'on' or 'off'
default: 'off'
Any reading access of the gray-value component of an (input) image object will cause the gray-value component to be shown in the indicated window (Window-ID; 'none' will deactivate this control ).
Value: Window-ID (integer) or 'none'
default: 'none'
Any reading access of the region of an (input) iconic object will cause this region to be shown in the indicated (Window-ID; 'none' will deactivate this control ).
Value: Window-ID (integer) or 'none'
default: 'none'
Any reading access of the xld will cause this xld to be shown in the indicated (Window-ID; 'none' will deactivate this control ).
Value: Window-ID (integer) or 'none'
default: 'none'
Processing time of the operator
Value: 'on' or 'off'
default: 'off'
Determines whether there is a halt after every individual action ('multiple') or only at the end of each operator ('single'). The parameter is only effective if the halt has been activated by 'timeout' or 'button_window'.
Value: 'single' or 'multiple'
default: 'multiple'
After every output there will be a halt of the indicated number of seconds.
Value: seconds (real)
default 0.0
Alternative to 'timeout': after every output spy waits until the cursor indicates ('button_click' = 'off') or clicks into ('button_click' = 'on') the indicated window. (Window-ID; 'none' will deactivate this control ).
Value: Window-ID (integer) or 'none'
default: 'none'
Additional option for 'button_window': determines whether or not a mouse-click has to be waited for after an output.
Value: 'on' or 'off'
default: 'off'
If 'button_notify' is activated, spy generates a beep after every output. This is useful in combination with 'button_window'.
Value: 'on' or 'off'
default: 'off'
Spy can hereby divert the text output into a file having been opened with open_file.
Value: a file handle (see open_file
)
If 'error' is activated and an internal error occurs, spy will show the internal procedures (file/line) concerned.
Value: 'on' or 'off'
default: 'off'
If 'internal' is activated, spy will display the internal procedures and their parameters (file/line) while an HALCON-operator is processed.
Value: 'on' or 'off'
default: 'off'
Each output starts with the thread handle, followed by a global counter that marks the order of the outputs. In multi-threaded applications, this information can be used to assign the output to individual user threads and to reconstruct the chronological sequence.
Note that under Windows the output on stdout works only in combination with a console application, i.e., you can not use it together with HDevelop.
Class
(input_control) string →
(string)
Control mode
Default value: 'mode'
List of values: 'button_click' , 'button_notify' , 'button_window' , 'db' , 'error' , 'halt' , 'input_control' , 'input_gray_window' , 'input_region_window' , 'input_region_window' , 'input_xld_window' , 'internal' , 'log_file' , 'mode' , 'operator' , 'output_control' , 'parameter_values' , 'time' , 'timeout'
Value
(input_control) string →
(string / integer / real)
State of the control mode to be set.
Default value: 'on'
Suggested values: 'on' , 'off' , 1, 2, 3, 4, 5, 10, 50, 0.0, 1.0, 2.0, 5.0, 10.0
/* 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");
The operator set_spy
returns the value 2 (H_MSG_TRUE) if the parameters
are correct.
Otherwise an exception is raised.
Foundation