+ MailboxImpl* mbox_ = nullptr; /* Rendez-vous where the comm is queued. nullptr once the comm is matched with both a
+ sender and receiver */
+ long mbox_id_ = -1; /* ID of the rendez-vous where the comm was first queued (for MC) */
+ s4u::Host* from_ = nullptr; /* Pre-determined only for direct host-to-host communications */
+ s4u::Host* to_ = nullptr; /* Otherwise, computed at start() time from the actors */
+ CommImplType type_ = CommImplType::SEND; /* Type of the communication (SEND or RECEIVE) */
+
+ static unsigned next_id_; // Next ID to be given (for MC)
+ const unsigned id_ = ++next_id_; // ID of this comm (for MC) -- 0 as an ID denotes "invalid/unknown comm"