The NodeMap on the receiver side is a std::map, so the ordering is guaranteed. By looking at it today it probably makes more sense to have a getNode( identifier ); to really get what you want in the application. Or completely omitting getNodes() and the application has to remember the node on mapNode().