common: slightly reworked default messaging abstraction
Hmm... I'm not happy with this at all. It's better than the original
quick-hack proto but not by a large enough margin. It probably needs
quite a bit of work still eventually. One thing that needs to be added
is a way to let users use the transport layer without forcing the default
messaging abstraction/encoding/decoding on them. This should preferably
happen by allowing users to send (almost) arbitrary data structures over
a transport by providing a descriptor that describes the layout of the
data structure in terms of offset/MRP_MSG_FIELD_* allowing the transport
or messaging layer to do the encoding/decoding of the data. The sending
part is relatively easy. The trickier part is the receiving side and to
come up with an API that is simple and intuitive enough to be usable yet
allows one to flexibly multiplex any number of structure types over the
same transport connection...
12 files changed: