Example #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;
    }
Example #2
0
 public virtual void Awake()
 {
     //AsyncIO.ForceDotNet.Force();
     if (isStage)
     {
         m_node = new ZstNode(nodeName, stagePort);
     } else {
         if(!String.IsNullOrEmpty(stageAddress))
             stageAddress = "tcp://" + stageAddress + ":" + stagePort.ToString();
         StartCoroutine("CreateNode");
     }
 }
Example #3
0
 public virtual void Awake()
 {
     //AsyncIO.ForceDotNet.Force();
     if (isStage)
     {
         m_node = new ZstNode(nodeName, stagePort);
     } else {
         if (!GlobalConfig.Instance.ShowtimeUseBonjour)
         {
             if (!String.IsNullOrEmpty(stageAddress))
             {
                 stageAddress = "tcp://" + stageAddress + ":" + stagePort.ToString();
             }
             else
             {
                 stageAddress = "tcp://" + GlobalConfig.Instance.ShowtimeStageAddress + ":" + GlobalConfig.Instance.ShowtimeStagePort.ToString();
             }
         }
         StartCoroutine("CreateNode");
     }
 }
Example #4
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);
    }