copy_dictT_copy_dictCopyDictCopyDictcopy_dict复制字典(算子)

名称

copy_dictT_copy_dictCopyDictCopyDictcopy_dict — 复制字典。

签名

copy_dict( : : DictHandle, GenParamName, GenParamValue : CopiedDictHandle)

Herror T_copy_dict(const Htuple DictHandle, const Htuple GenParamName, const Htuple GenParamValue, Htuple* CopiedDictHandle)

void CopyDict(const HTuple& DictHandle, const HTuple& GenParamName, const HTuple& GenParamValue, HTuple* CopiedDictHandle)

HDict HDict::CopyDict(const HTuple& GenParamName, const HTuple& GenParamValue) const

HDict HDict::CopyDict(const HString& GenParamName, const HString& GenParamValue) const

HDict HDict::CopyDict(const char* GenParamName, const char* GenParamValue) const

HDict HDict::CopyDict(const wchar_t* GenParamName, const wchar_t* GenParamValue) const   ( Windows only)

static void HOperatorSet.CopyDict(HTuple dictHandle, HTuple genParamName, HTuple genParamValue, out HTuple copiedDictHandle)

HDict HDict.CopyDict(HTuple genParamName, HTuple genParamValue)

HDict HDict.CopyDict(string genParamName, string genParamValue)

def copy_dict(dict_handle: HHandle, gen_param_name: MaybeSequence[str], gen_param_value: MaybeSequence[Union[int, float, str]]) -> HHandle

描述

copy_dictcopy_dictCopyDictCopyDictCopyDictcopy_dict 创建字典 DictHandleDictHandleDictHandleDictHandledictHandledict_handle 的深度副本(即所有包含的句柄和图标对象均被深度复制)至字典 CopiedDictHandleCopiedDictHandleCopiedDictHandleCopiedDictHandlecopiedDictHandlecopied_dict_handle

如果 DictHandleDictHandleDictHandleDictHandledictHandledict_handle 包含无法复制或已被释放的句柄,则默认会引发异常。此行为由 GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name 'raise_error_if_content_not_serializable'"raise_error_if_content_not_serializable""raise_error_if_content_not_serializable""raise_error_if_content_not_serializable""raise_error_if_content_not_serializable""raise_error_if_content_not_serializable" 控制,其对应的 GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value 可取以下值:

'true'"true""true""true""true""true"

默认行为:引发错误并终止复制过程。

'low_level'"low_level""low_level""low_level""low_level""low_level"

仅会引发低级错误。系统不会复制相关句柄,而是将空句柄复制到 CopiedDictHandleCopiedDictHandleCopiedDictHandleCopiedDictHandlecopiedDictHandlecopied_dict_handle 中,并继续执行复制过程。HALCON 低级错误的行为由 set_systemset_systemSetSystemSetSystemSetSystemset_system 中的 'do_low_error'"do_low_error""do_low_error""do_low_error""do_low_error""do_low_error" 参数决定。

'false'"false""false""false""false""false"

错误被抑制。系统将把空句柄复制到 CopiedDictHandleCopiedDictHandleCopiedDictHandleCopiedDictHandlecopiedDictHandlecopied_dict_handle 中,而非相关句柄,复制过程将继续进行。

执行信息

参数

DictHandleDictHandleDictHandleDictHandledictHandledict_handle (输入控制)  dict HDict, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

字典句柄。

元素数量: DictHandle == 1

GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name (输入控制)  attribute.name(-array) HTupleMaybeSequence[str]HTupleHtuple (string) (string) (HString) (char*)

泛型参数的名称。

默认值: []

值列表: 'raise_error_if_content_not_serializable'"raise_error_if_content_not_serializable""raise_error_if_content_not_serializable""raise_error_if_content_not_serializable""raise_error_if_content_not_serializable""raise_error_if_content_not_serializable"

GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value (输入控制)  attribute.name(-array) HTupleMaybeSequence[Union[int, float, str]]HTupleHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)

泛型参数的值。

默认值: []

建议值: 'true'"true""true""true""true""true", 'false'"false""false""false""false""false", 'low_level'"low_level""low_level""low_level""low_level""low_level"

CopiedDictHandleCopiedDictHandleCopiedDictHandleCopiedDictHandlecopiedDictHandlecopied_dict_handle (输出控制)  dict HDict, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

复制的字典句柄。

元素数量: CopiedDictHandle == 1

结果

如果参数有效,算子 copy_dictcopy_dictCopyDictCopyDictCopyDictcopy_dict 返回值 2 (H_MSG_TRUE)。如有必要,则抛出异常。

可能的前趋

read_dictread_dictReadDictReadDictReadDictread_dict, deserialize_handledeserialize_handleDeserializeHandleDeserializeHandleDeserializeHandledeserialize_handle, create_dictcreate_dictCreateDictCreateDictCreateDictcreate_dict

可能的后继

write_dictwrite_dictWriteDictWriteDictWriteDictwrite_dict

另见

read_dictread_dictReadDictReadDictReadDictread_dict, write_dictwrite_dictWriteDictWriteDictWriteDictwrite_dict, serialize_handleserialize_handleSerializeHandleSerializeHandleSerializeHandleserialize_handle, deserialize_handledeserialize_handleDeserializeHandleDeserializeHandleDeserializeHandledeserialize_handle

模块

基础