Ejemplo n.º 1
0
    IEnumerator CreateNode()
    {
        if(String.IsNullOrEmpty(stageAddress))
            m_node = new ZstNode(nodeName);
        else
            m_node = new ZstNode(nodeName, stageAddress);

        //m_node.Start();
        yield return new WaitForSeconds(2);

        if (m_node.requestRegisterNode())
        {
            Debug.Log("Successfully registered to stage.");
            connected = true;
            Dictionary<string, ZstPeerLink> peers = m_node.requestNodePeerlinks();
            if (peers.ContainsKey(targetPeer))
            {
                peer = peers[targetPeer];
            }
        }
        else
        {
            Debug.Log("Stage did not respond.");
        }

        yield return null;
    }
Ejemplo n.º 2
0
    // Use this for initialization
    void Start()
    {
        m_instance = this;
        m_node     = new ZstNode("UnityNode", "tcp://" + m_stageAddress + ":" + m_port);
        m_node.requestRegisterNode();
        m_peers = m_node.requestNodePeerlinks();

        m_livePeer = m_peers["LiveNode"];
        m_node.subscribeToNode(m_livePeer);
        m_node.connectToPeer(m_livePeer);
        ZstMethod response = m_node.updateRemoteMethod(m_livePeer.methods["get_song_layout"]);
        string    output   = response.output.ToString();

        m_instrumentSpawner.LoadLiveSessionXml(output);

        //Subscribe to value updates
        m_node.subscribeToMethod(m_livePeer.methods["value_updated"], instrumentValueUpdated);
        m_node.subscribeToMethod(m_livePeer.methods["fired_slot_index"], clipFired);
        m_node.subscribeToMethod(m_livePeer.methods["playing_slot_index"], clipPlaying);


        //m_node.subscribeToMethod(m_livePeer.methods["value_updated"], clipFired);
    }