public static bool ToColor(this OSCMessage message, out Color value, bool force = false) { var values = message.FindValues(OSCValueType.Color); if (values.Length > 0) { var firstValue = values[0]; value = firstValue.ColorValue; return(true); } if (force) { if (message.ToVector3(out var vector3)) { value = new Color(vector3.x, vector3.y, vector3.z); return(true); } if (message.ToVector4(out var vector4)) { value = new Color(vector4.x, vector4.y, vector4.z, vector4.w); return(true); } } value = Color.white; return(false); }
public static bool ToVector4(this OSCMessage message, out Vector4 value, bool force = false) { var values = message.FindValues(OSCValueType.Float); if (values.Length >= 4) { var firstValue = values[0]; var secondValue = values[1]; var thirdValue = values[2]; var fourthValue = values[3]; value = new Vector4(firstValue.FloatValue, secondValue.FloatValue, thirdValue.FloatValue, fourthValue.FloatValue); return(true); } if (force) { if (message.ToVector2(out var vector2)) { value = vector2; return(true); } if (message.ToVector3(out var vector3)) { value = vector3; return(true); } } value = Vector4.zero; return(false); }
public static bool ToArray(this OSCMessage message, out List <OSCValue> value) { var values = message.FindValues(OSCValueType.Array); if (values.Length > 0) { var firstValue = values[0]; value = firstValue.ArrayValue; return(true); } value = new List <OSCValue>(); return(false); }
public static bool ToMidi(this OSCMessage message, out OSCMidi value) { var values = message.FindValues(OSCValueType.Midi); if (values.Length > 0) { var firstValue = values[0]; value = firstValue.MidiValue; return(true); } value = default(OSCMidi); return(false); }
public static bool ToTimeTag(this OSCMessage message, out DateTime value) { var values = message.FindValues(OSCValueType.TimeTag); if (values.Length > 0) { var firstValue = values[0]; value = firstValue.TimeTagValue; return(true); } value = default(DateTime); return(false); }
public static bool ToBlob(this OSCMessage message, out byte[] value) { var values = message.FindValues(OSCValueType.Blob); if (values.Length > 0) { var firstValue = values[0]; value = firstValue.BlobValue; return(true); } value = default(byte[]); return(false); }
public static bool ToString(this OSCMessage message, out string value) { var values = message.FindValues(OSCValueType.String); if (values.Length > 0) { var firstValue = values[0]; value = firstValue.StringValue; return(true); } value = default(string); return(false); }
public static bool ToChar(this OSCMessage message, out char value) { var values = message.FindValues(OSCValueType.Char); if (values.Length > 0) { var firstValue = values[0]; value = firstValue.CharValue; return(true); } value = default(char); return(false); }
public static bool ToBool(this OSCMessage message, out bool value) { var values = message.FindValues(OSCValueType.True, OSCValueType.False); if (values.Length > 0) { var firstValue = values[0]; value = firstValue.BoolValue; return(true); } value = default(bool); return(false); }
public static bool ToLong(this OSCMessage message, out long value) { var values = message.FindValues(OSCValueType.Long); if (values.Length > 0) { var firstValue = values[0]; value = firstValue.LongValue; return(true); } value = 0; return(false); }
public static bool ToDouble(this OSCMessage message, out double value) { var values = message.FindValues(OSCValueType.Double); if (values.Length > 0) { var firstValue = values[0]; value = firstValue.DoubleValue; return(true); } value = 0; return(false); }
public static bool ToFloat(this OSCMessage message, out float value) { var values = message.FindValues(OSCValueType.Float); if (values.Length > 0) { var firstValue = values[0]; value = firstValue.FloatValue; return(true); } value = 0; return(false); }
public static bool HasNull(this OSCMessage message) { return(message.FindValues(OSCValueType.Null).Length > 0); }
public static bool HasImpulse(this OSCMessage message) { return(message.FindValues(OSCValueType.Impulse).Length > 0); }