Operator Reference
query_bar_code_params (Operator)
query_bar_code_params — Get the names of the parameters that can be used in set_bar_code* and
get_bar_code* operators for a given bar code model
Signature
query_bar_code_params( : : BarCodeHandle, Properties : GenParamName)
Description
The operator query_bar_code_params returns parameter names
of the bar code model that correspond to the selection given in
Properties. To explain this, here first some background:
After creating a bar code model, all parameters
are initially set 'general', i.e., they have the same values set
for each supported bar code type. During automatic parameter training or
after calling the operator set_bar_code_param_specific some
parameters might become bar code type specific at runtime. These parameters
can not be read with the general operator
get_bar_code_param but must be read for a given bar code type with
get_bar_code_param_specific. To make this access easy and generic,
the output GenParamName of query_bar_code_params can be
used as input parameter GenParamName in
get_bar_code_param or get_bar_code_param_specific, depending
on Properties='*general' or
Properties='*specific'.
Please note that you could
alternatively use a static tuple of
parameter names for get_bar_code_param or
get_bar_code_param_specific (e.g., the parameter names described with
these operators), but this
is inflexible and therefore not recommended.
Possible values for Properties are:
- 'all':
-
Returns the names of all parameters supported by the bar code reader. The names are independent of the bar code model given in
BarCodeHandle. - 'general':
-
Returns the names of the parameters that contain the same values for all supported bar code types, i.e., there are no specific values set for certain bar code types, e.g., with
set_bar_code_param_specific. The values of only these parameters can be read withget_bar_code_param.Please note that the parameter name 'train' is explicitly excluded here. 'train' in a following call to
get_bar_code_paramwould return a multivalue tuple and therefore couldn't be used within one tuple in combination with other parameter names. - 'specific':
-
Returns the names of the parameters that contain specific values for certain bar code types. The values of these parameters must be read with
get_bar_code_param_specificinstead ofget_bar_code_param. Bar code type specific values can occur in conjunction with bar code autodiscrimination, described with the operatorfind_bar_codeor automatic parameter training. - 'trained_general':
-
Returns the names of parameters that have already been trained and contain the same values for all supported bar code types. The training mode is described with the operator
set_bar_code_param. - 'trained_specific':
-
Returns the names of the parameters that have already been trained and contain specific values for certain bar code types. The training mode is described with the operator
set_bar_code_param.
Execution Information
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Parameters
BarCodeHandle (input_control) barcode → (handle)
Handle of the bar code model.
Properties (input_control) attribute.name → (string)
Properties of the parameters.
Default: 'trained_general'
List of values: 'all', 'general', 'specific', 'trained_general', 'trained_specific'
GenParamName (output_control) attribute.name(-array) → (string)
Names of the generic parameters.
Example (HDevelop)
TrainParams := ['element_size_min', 'element_size_max', 'orientation']
Train3times := gen_tuple_const(|TrainParams|,'train')
create_bar_code_model (Train3times, TrainParams, BarCodeHandle)
find_bar_code (Image, SymbolRegions, BarCodeHandle, 'EAN-13', \
DecodedDataStrings)
query_bar_code_params (BarCodeHandle, 'trained_general', NamesGen)
* returns NamesGen = ['element_size_max', 'element_size_min']
get_bar_code_param (BarCodeHandle, NamesGen, ValGen)
* returns e.g., ValGen = [4.0, 1.5]
query_bar_code_params (BarCodeHandle, 'trained_specific', NamesSpec)
* returns NamesSpec = ['orientation', 'orientation_tol']
get_bar_code_param_specific (BarCodeHandle, 'EAN-13', NamesSpec, ValSpec)
* returns e.g., ValSpec = [89.9127, 0.5]
Result
The operator query_bar_code_params returns the value 2 (
H_MSG_TRUE)
if the
given parameters are correct. Otherwise, an exception is raised.
Possible Predecessors
find_bar_code,
decode_bar_code_rectangle2
Possible Successors
get_bar_code_param,
get_bar_code_param_specific
Module
Bar Code