// die andere Richtung wäre auch schön, damit man auch Nachrichten an ROS senden kann
    public string SerializeROSmessage(RosMessage message)
    {
        //todo

        if (message.GetType() == typeof(RosPublish))
        {
            rosComplexCoder coder = null;
            switch (message.topic)
            {
            case "\"/joint_states\"":
                coder = new RosJointStateCoder_();
                return(coder.startSerializing(message));

            case "\"/preview_trajectory\"":
                coder = new RosJointTrajectoryCoder_();
                return(coder.startSerializing(message));

            default:
                return(null);
            }
        }
        else
        {
            return(null);
        }
    }
    // hier wird einfach hart-gecoded eine JointState-Nachricht deserialisiert
    public RosMessage DeserializeJSONstring(string message)
    {
        JsonObject      jsonObject = JsonObject.Parse(message);
        string          jtopic     = jsonObject["topic"].GetString();
        rosComplexCoder coder      = null;

        switch (jtopic)
        {
        case "/joint_states":
            coder = new RosJointStateCoder_();
            return(coder.startDeserializing(jsonObject));

        case "/preview_trajectory":
            coder = new RosJointTrajectoryCoder_();
            return(coder.startDeserializing(jsonObject));

        default:
            return(null);
        }
    }