ClassesClassesClassesClasses | | | | Operators

set_message_objset_message_objSetMessageObjset_message_objSetMessageObjSetMessageObj (Operator)

Name

set_message_objset_message_objSetMessageObjset_message_objSetMessageObjSetMessageObj — Add a key/object pair to the message.

Signature

set_message_obj(ObjectData : : MessageHandle, Key : )

Herror set_message_obj(const Hobject ObjectData, const Hlong MessageHandle, const char* Key)

Herror T_set_message_obj(const Hobject ObjectData, const Htuple MessageHandle, const Htuple Key)

Herror set_message_obj(Hobject ObjectData, const HTuple& MessageHandle, const HTuple& Key)

void HMessage::SetMessageObj(const HObjectArray& ObjectData, const HTuple& Key) const

void SetMessageObj(const HObject& ObjectData, const HTuple& MessageHandle, const HTuple& Key)

void HMessage::SetMessageObj(const HObject& ObjectData, const HString& Key) const

void HMessage::SetMessageObj(const HObject& ObjectData, const char* Key) const

void HOperatorSetX.SetMessageObj(
[in] IHUntypedObjectX* ObjectData, [in] VARIANT MessageHandle, [in] VARIANT Key)

void HMessageX.SetMessageObj(
[in] IHObjectX* ObjectData, [in] BSTR Key)

static void HOperatorSet.SetMessageObj(HObject objectData, HTuple messageHandle, HTuple key)

void HMessage.SetMessageObj(HObject objectData, string key)

Description

set_message_objset_message_objSetMessageObjset_message_objSetMessageObjSetMessageObj stores an object associated with a key in the message, which behaves as a dictionary-like data container. The message is denoted by the MessageHandleMessageHandleMessageHandleMessageHandleMessageHandlemessageHandle parameter.

ObjectDataObjectDataObjectDataObjectDataObjectDataobjectData is copied by the operation (copying the object data in HALCON's object database, see copy_objcopy_objCopyObjcopy_objCopyObjCopyObj), and can thus be immediately reused. Both an empty object or an object tuple are considered as a valid value that can be associated with the key. If any data (tuple or object) was already associated with given key (KeyKeyKeyKeyKeykey), the old data is destroyed by set_message_objset_message_objSetMessageObjset_message_objSetMessageObjSetMessageObj and replaced by ObjectDataObjectDataObjectDataObjectDataObjectDataobjectData.

The KeyKeyKeyKeyKeykey has to be a non-empty string consisting solely of lowercase or uppercase ASCII letters, digits and underscores, while only a letter can be at the first position of the key. The key string is treated case sensitive.

The object data for the given key can be retrieved again from the message using get_message_objget_message_objGetMessageObjget_message_objGetMessageObjGetMessageObj.

Parallelization

This operator modifies the state of the following input parameter:

The value of this parameter may not be shared across multiple threads without external synchronization.

Parameters

ObjectDataObjectDataObjectDataObjectDataObjectDataobjectData (input_object)  object(-array) objectHObjectHObjectHObjectHObjectXHobject

Object to be associated with the key.

MessageHandleMessageHandleMessageHandleMessageHandleMessageHandlemessageHandle (input_control, state is modified)  message HMessage, HTupleHTupleHMessage, HTupleHMessageX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Message handle.

Number of elements: MessageHandle == 1

Restriction: MessageHandle != 0

KeyKeyKeyKeyKeykey (input_control)  string HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Key string.

Number of elements: Key == 1

Restriction: length(Key) > 0

Example (HDevelop)

create_message (Message)
read_image( Image, 'filename')
set_message_obj (Image, Message, 'my_image')

Result

If the operation succeeds, set_message_tupleset_message_tupleSetMessageTupleset_message_tupleSetMessageTupleSetMessageTuple returns 2 (H_MSG_TRUE). Otherwise an exception is raised. Possible error conditions include invalid parameters (handle or key) or resource allocation error.

Possible Predecessors

create_messagecreate_messageCreateMessagecreate_messageCreateMessageCreateMessage

Possible Successors

enqueue_messageenqueue_messageEnqueueMessageenqueue_messageEnqueueMessageEnqueueMessage, set_message_tupleset_message_tupleSetMessageTupleset_message_tupleSetMessageTupleSetMessageTuple

Alternatives

set_message_tupleset_message_tupleSetMessageTupleset_message_tupleSetMessageTupleSetMessageTuple

See also

create_messagecreate_messageCreateMessagecreate_messageCreateMessageCreateMessage, clear_messageclear_messageClearMessageclear_messageClearMessageClearMessage, set_message_tupleset_message_tupleSetMessageTupleset_message_tupleSetMessageTupleSetMessageTuple, get_message_tupleget_message_tupleGetMessageTupleget_message_tupleGetMessageTupleGetMessageTuple, get_message_objget_message_objGetMessageObjget_message_objGetMessageObjGetMessageObj, set_message_paramset_message_paramSetMessageParamset_message_paramSetMessageParamSetMessageParam, get_message_paramget_message_paramGetMessageParamget_message_paramGetMessageParamGetMessageParam, enqueue_messageenqueue_messageEnqueueMessageenqueue_messageEnqueueMessageEnqueueMessage, dequeue_messagedequeue_messageDequeueMessagedequeue_messageDequeueMessageDequeueMessage

Module

Foundation


ClassesClassesClassesClasses | | | | Operators