ILoggedMessageSvc::LoggedMessage Node1 ILoggedMessageSvc:: LoggedMessage + level + LoggedMessage() Node2 std::string Node2->Node1 +message +source Node3 std::basic_string< char > Node3->Node2