UM C API
6.16.1
|
Information structure for receive events delivered to receiver callback lbm_rcv_cb_proc. More...
#include <lbm.h>
Data Fields | |
char | source [LBM_MSG_MAX_SOURCE_LEN] |
Source string of transport session. See Source String. | |
char | topic_name [LBM_MSG_MAX_TOPIC_LEN] |
Name of the topic. Although this field is allocated at 256 bytes, legal topic names are restricted to 246 bytes. | |
char | copied_state [LBM_MSG_MAX_STATE_LEN] |
Copy of the state of the msg (only used on specific platforms. DO NOT ACCESS DIRECTLY!) | |
int | type |
Type of receiver event. See C Receiver Events. | |
int | flags |
Bitmap indicating extra information about the message. Zero or more flag bits ORed together LBM_MSG_FLAG_*, not including LBM_MSG_FLAG_NUMBERED_CHANNEL. | |
const char * | data |
Data contents of the message if of a message type that carries data. Note that UM does not guarantee any alignment of that data. The interpretation of the data pointer depends on the value of lbm_msg_t::type. See each value's description. | |
size_t | len |
Length of data in bytes. | |
lbm_response_t * | response |
Pointer to response object used for sending responses for lbm_msg_t request. | |
lbm_uint_t | sequence_number |
Topic level sequence number of message. For fragmented messages, this is the sequence number of the final fragment comprising the message. | |
long | refcnt |
UM internal only. DO NOT ACCESS DIRECTLY! | |
size_t | apphdr_len |
UM internal only. DO NOT ACCESS DIRECTLY! | |
lbm_ulong_t | apphdr_code |
UM internal only. DO NOT ACCESS DIRECTLY! | |
lbm_timeval_t | tsp |
Timestamp indicating the earliest time that the message was received, in seconds and microseconds since midnight, January 1st, 1970 UTC. This time can be up to 500 milliseconds prior to actual receipt time, and hence, is not suitable when accurate message-arrival-time measurements are needed. | |
lbm_ushort_t | hdrlen |
UM internal only. DO NOT ACCESS DIRECTLY! | |
const lbm_buff_t * | buffer |
UM internal only. DO NOT ACCESS DIRECTLY! | |
const void * | fragment_info |
UM internal only. DO NOT ACCESS DIRECTLY! To access information about message fragments, use lbm_msg_retrieve_fragment_info(). | |
const char * | apphdr_data |
UM internal only. DO NOT ACCESS DIRECTLY! To access information about application headers, see lbm_apphdr_chain_iter_create_from_msg(). | |
const void * | source_clientd |
The per-source clientd value for the source set by the lbm_rcv_src_notification_create_function_cb callback. | |
const void * | umeack |
UM internal only. DO NOT ACCESS DIRECTLY! | |
const void * | src_cd |
UM internal only. DO NOT ACCESS DIRECTLY! | |
lbm_uint_t | osqn |
UM internal only. DO NOT ACCESS DIRECTLY! | |
lbm_msg_channel_info_t * | channel_info |
Channel information set when using Spectrum channels. | |
const void * | umq_msgid |
UM internal only. DO NOT ACCESS DIRECTLY! | |
const void * | umq_cr |
UM internal only. DO NOT ACCESS DIRECTLY! | |
const void * | pdata |
UM internal only. DO NOT ACCESS DIRECTLY! | |
size_t | plen |
UM internal only. DO NOT ACCESS DIRECTLY! | |
lbm_msg_properties_t * | properties |
Message properties structure for this message. See Message Properties. | |
lbm_hf_sequence_number_t | hf_sequence_number |
Hot failover sequence number, check message flags for LBM_MSG_FLAG_HF_32 or LBM_MSG_FLAG_HF_64. | |
const void * | broker_msg_state |
UM internal only. DO NOT ACCESS DIRECTLY! | |
lbm_timespec_t | hr_timestamp |
High Resolution Timestamp of the received message. | |
Information structure for receive events delivered to receiver callback lbm_rcv_cb_proc.
Although the structure name suggests that only received application messages are represented here, there are in fact many different types of receiver events for which lbm_rcv_cb_proc's "msg" parameter provides information. Very important is the lbm_msg_t::type field, which indicates the receiver event type.
See lbm_msg_t::type for all possible event types.