protected void FilterIds() { try { m_getString += Encoding.UTF8.GetString(m_bytes); for (int i = 0; i < inputs.Length; i++) { KeyResolveInput tmpInfo = inputs[i]; string fullId = tmpInfo.key + ":"; int index = m_getString.IndexOf(fullId); if (index >= 0 && (index + fullId.Length + tmpInfo.length) < m_getString.Length) { string v = m_getString.Substring(index + fullId.Length, tmpInfo.length); if (v.Length != tmpInfo.length) { Debug.Log("Value Before Flush: " + v); // string getting mess, just flush it Flush(); break; } else { tmpInfo.SetValue(float.Parse(v)); m_getString = m_getString.Remove(index, fullId.Length + tmpInfo.length); } } } for (int i = 0; i < values.Length; i++) { var resolve = ResolveEquation(values[i].equation); values[i].SetValue(resolve); } if (m_getString != string.Empty) { m_getString = m_getString.Replace(";", string.Empty); } } catch (Exception _ex) { Debug.LogWarning(_ex); } }
protected virtual void InitInputs(KeyPortInputData[] datas) { if (datas == null) { return; } inputs = new KeyResolveInput[datas.Length]; for (int i = 0; i < datas.Length; i++) { var newInput = new KeyResolveInput(); newInput.key = datas[i].key; newInput.length = datas[i].length; inputs[i] = newInput; } }