private void AddVariable(string name, string type, byte[] data)
{
Type[] types = typeof(Native).GetNestedTypes();
Type native = types.Where(t => t.Name == "_" + type).SingleOrDefault();
if (native == null)
{
throw new Exception("Unsupported type send from server");
}
Variable v = new Variable(native, name);
v.DataToStruct(data);
variables.Add(v);
OnVariableAdded(v);
}