ClassesClasses | | Operators

query_bar_code_paramsT_query_bar_code_paramsQueryBarCodeParamsQueryBarCodeParams (Operator)

Name

query_bar_code_paramsT_query_bar_code_paramsQueryBarCodeParamsQueryBarCodeParams — 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)

Herror T_query_bar_code_params(const Htuple BarCodeHandle, const Htuple Properties, Htuple* GenParamName)

void QueryBarCodeParams(const HTuple& BarCodeHandle, const HTuple& Properties, HTuple* GenParamName)

HTuple HBarCode::QueryBarCodeParams(const HString& Properties) const

HTuple HBarCode::QueryBarCodeParams(const char* Properties) const

static void HOperatorSet.QueryBarCodeParams(HTuple barCodeHandle, HTuple properties, out HTuple genParamName)

HTuple HBarCode.QueryBarCodeParams(string properties)

Description

The operator query_bar_code_paramsquery_bar_code_paramsQueryBarCodeParamsQueryBarCodeParamsQueryBarCodeParams returns parameter names of the bar code model that correspond to the selection given in PropertiesPropertiesPropertiesPropertiesproperties. To explain this, here first some background: After creating a bar code model, all parameters are initially set 'general'"general""general""general""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_specificset_bar_code_param_specificSetBarCodeParamSpecificSetBarCodeParamSpecificSetBarCodeParamSpecific some parameters might become bar code type specific at runtime. These parameters can not be read with the general operator get_bar_code_paramget_bar_code_paramGetBarCodeParamGetBarCodeParamGetBarCodeParam but must be read for a given bar code type with get_bar_code_param_specificget_bar_code_param_specificGetBarCodeParamSpecificGetBarCodeParamSpecificGetBarCodeParamSpecific. To make this access easy and generic, the output GenParamNameGenParamNameGenParamNameGenParamNamegenParamName of query_bar_code_paramsquery_bar_code_paramsQueryBarCodeParamsQueryBarCodeParamsQueryBarCodeParams can be used as input parameter GenParamNameGenParamNameGenParamNameGenParamNamegenParamName in get_bar_code_paramget_bar_code_paramGetBarCodeParamGetBarCodeParamGetBarCodeParam or get_bar_code_param_specificget_bar_code_param_specificGetBarCodeParamSpecificGetBarCodeParamSpecificGetBarCodeParamSpecific, depending on PropertiesPropertiesPropertiesPropertiesproperties='*general'"*general""*general""*general""*general" or PropertiesPropertiesPropertiesPropertiesproperties='*specific'"*specific""*specific""*specific""*specific".

Please note that you could alternatively use a static tuple of parameter names for get_bar_code_paramget_bar_code_paramGetBarCodeParamGetBarCodeParamGetBarCodeParam or get_bar_code_param_specificget_bar_code_param_specificGetBarCodeParamSpecificGetBarCodeParamSpecificGetBarCodeParamSpecific (e.g. the parameter names described with these operators), but this is inflexible and therefore not recommended.

Possible values for PropertiesPropertiesPropertiesPropertiesproperties are:

'all'"all""all""all""all":

Returns the names of all parameters supported by the bar code reader. The names are independent of the bar code model given in BarCodeHandleBarCodeHandleBarCodeHandleBarCodeHandlebarCodeHandle.

'general'"general""general""general""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_specificset_bar_code_param_specificSetBarCodeParamSpecificSetBarCodeParamSpecificSetBarCodeParamSpecific. The values of only these parameters can be read with get_bar_code_paramget_bar_code_paramGetBarCodeParamGetBarCodeParamGetBarCodeParam.

Please note that the parameter name 'train' is explicitly excluded here. 'train' in a following call to get_bar_code_paramget_bar_code_paramGetBarCodeParamGetBarCodeParamGetBarCodeParam would return a multivalue tuple and therefore couldn't be used within one tuple in combination with other parameter names.

'specific'"specific""specific""specific""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_specificget_bar_code_param_specificGetBarCodeParamSpecificGetBarCodeParamSpecificGetBarCodeParamSpecific instead of get_bar_code_paramget_bar_code_paramGetBarCodeParamGetBarCodeParamGetBarCodeParam. Bar code type specific values can occur in conjunction with bar code autodiscrimination, described with the operator find_bar_codefind_bar_codeFindBarCodeFindBarCodeFindBarCode or automatic parameter training.

'trained_general'"trained_general""trained_general""trained_general""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_paramset_bar_code_paramSetBarCodeParamSetBarCodeParamSetBarCodeParam.

'trained_specific'"trained_specific""trained_specific""trained_specific""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_paramset_bar_code_paramSetBarCodeParamSetBarCodeParamSetBarCodeParam.

Execution Information

Parameters

BarCodeHandleBarCodeHandleBarCodeHandleBarCodeHandlebarCodeHandle (input_control)  barcode HBarCode, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle of the bar code model.

PropertiesPropertiesPropertiesPropertiesproperties (input_control)  attribute.name HTupleHTupleHtuple (string) (string) (HString) (char*)

Properties of the parameters.

Default value: 'trained_general' "trained_general" "trained_general" "trained_general" "trained_general"

List of values: 'all'"all""all""all""all", 'general'"general""general""general""general", 'specific'"specific""specific""specific""specific", 'trained_general'"trained_general""trained_general""trained_general""trained_general", 'trained_specific'"trained_specific""trained_specific""trained_specific""trained_specific"

GenParamNameGenParamNameGenParamNameGenParamNamegenParamName (output_control)  attribute.name(-array) HTupleHTupleHtuple (string) (string) (HString) (char*)

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_paramsquery_bar_code_paramsQueryBarCodeParamsQueryBarCodeParamsQueryBarCodeParams returns the value 2 (H_MSG_TRUE) if the given parameters are correct. Otherwise, an exception is raised.

Possible Predecessors

find_bar_codefind_bar_codeFindBarCodeFindBarCodeFindBarCode, decode_bar_code_rectangle2decode_bar_code_rectangle2DecodeBarCodeRectangle2DecodeBarCodeRectangle2DecodeBarCodeRectangle2

Possible Successors

get_bar_code_paramget_bar_code_paramGetBarCodeParamGetBarCodeParamGetBarCodeParam, get_bar_code_param_specificget_bar_code_param_specificGetBarCodeParamSpecificGetBarCodeParamSpecificGetBarCodeParamSpecific

Module

Bar Code


ClassesClasses | | Operators