using UnityEngine; using System.Collections; using System.Collections.Generic; /* Reference: http://koki0702.hatenablog.com/entry/unity_article_02 */ public class OSCManager : MonoBehaviour { private long _lastOscTimeStamp = -1; /** OSC Argument(s) */ public int dataA1 = 0; /* public float sensorB1 = 0.0f; public float sensorB2 = 0.0f; */ // Use this for initialization void Start () { OSCHandler.Instance.Init(); } // Update is called once per frame void Update () { OSCHandler.Instance.UpdateLogs(); foreach( KeyValuePair item in OSCHandler.Instance.Servers ) { for( int i=0; i < item.Value.packets.Count; i++ ) { if( _lastOscTimeStamp < item.Value.packets[i].TimeStamp ) { _lastOscTimeStamp = item.Value.packets[i].TimeStamp; string address = item.Value.packets[i].Address; if(address == "/sensorA") { dataA1 = (int)item.Value.packets[i].Data[0]; } /* if(address == "/sensorB") { dataB1 = (float)item.Value.packets[i].Data[0]; dataB2 = (float)item.Value.packets[i].Data[1]; } */ //Debug.Log( address + ":(" + item.Value.packets[i].Data[0] + ", " + item.Value.packets[i].Data[1] + ")" ); } } } } void sendDataOSCA(int dataA1){ var sampleVals = new List(){dataA1}; OSCHandler.Instance.SendMessageToClient("Arduino", "/eventA", sampleVals); } /* void sendDataOSCB(float dataB1, float dataB2){ var sampleVals = new List(){dataB1, dataB2}; OSCHandler.Instance.SendMessageToClient("Arduino", "/eventB", sampleVals); } */ }