vt::messaging::ActiveEnvelope struct

The foundational basic envelope that every VT message has as the first member.

Used to contain the associated handler function and other control bits required to process the message. Extended envelopes contain this as the first member so the type bits can be used to cast to the specific extended envelope.

Public types

using isByteCopyable = std::true_type

Public variables

EnvelopeDataType type
The envelope type bits: eEnvelopeType.
NodeType dest
Destination node.
HandlerType han
Handler to execute on arrival.
RefType ref
Local reference count for the outer message to manage memory.
GroupType group
The associated group: may imply a non-standard spanning tree or node subset.
bool has_been_serialized
True iff serialization is performed (through to base type).
bool is_locked
bool deliver_bcast_to_sender
bool comm_lb_data_recorded_above_bare_handler

Variable documentation

bool vt::messaging::ActiveEnvelope::is_locked

True iff the message is considered locked. If locked, changes to the envelope will result in failure.

bool vt::messaging::ActiveEnvelope::comm_lb_data_recorded_above_bare_handler

Used to denote that the message's bare handlers shouldn't record communication LB data due to redundancy