public void AddListener(Action <TFStream> callback, bool notifyAllStreamsNow = true, string tfTopic = "/tf")
    {
        TFTopicState state = GetOrCreateTFTopic(tfTopic);

        state.AddListener(callback);
        if (notifyAllStreamsNow)
        {
            state.NotifyAllChanged();
        }
    }
    TFTopicState GetOrCreateTFTopic(string tfTopic)
    {
        TFTopicState tfTopicState;

        if (!m_TFTopics.TryGetValue(tfTopic, out tfTopicState))
        {
            tfTopicState        = new TFTopicState(tfTopic);
            m_TFTopics[tfTopic] = tfTopicState;
        }
        return(tfTopicState);
    }
示例#3
0
    public TFStream GetOrCreateFrame(string frame_id, string tfTopic = "/tf")
    {
        TFTopicState topicState = GetOrCreateTFTopic(tfTopic);

        return(topicState.GetOrCreateFrame(frame_id));
    }