create_dict
— Create a new empty dictionary.
create_dict( : : : DictHandle)
create_dict
creates a new empty dictionary and returns
it in DictHandle
.
The dictionary serves as an associative array-like container allowing to
store an arbitrary number of values associated with unique keys (integers
or strings).
Each key can refer either to a tuple or to an iconic object.
These are stored in the dictionary using
set_dict_tuple
or set_dict_object
,
respectively, from where they can be retrieved again using
get_dict_tuple
or get_dict_object
.
The data stored in the dictionary is always a copy of the original
data, being it control parameters or objects.
The original data
can thus be reused immediately after the set_dict_tuple
or set_dict_object
calls.
The following particularities apply:
Objects: The copy is a reference, as in copy_obj
.
In particular, changes made using the operators set_grayval
or
overpaint_region
affect the object stored in the Dictionary as well.
Handles: They are treated as regular integer values by HALCON, therefore storing any handle in the dictionary will copy the handle value, but not the resource behind the handle.
This operator returns a handle. Note that the state of an instance of this handle type may be changed by specific operators even though the handle is used as an input parameter by those operators.
DictHandle
(output_control) dict →
(handle)
Handle of the newly created dictionary.
Number of elements: DictHandle == 1
Dicts := [] for idx := 0 to 4 by 1 create_dict (DictHandle) Dicts[idx] := DictHandle endfor * ...
Returns 2 (H_MSG_TRUE) unless a resource allocation error occurs.
set_dict_tuple
,
set_dict_object
set_dict_tuple
,
get_dict_tuple
,
set_dict_object
,
get_dict_object
,
get_dict_param
Foundation