public void DataToStruct(byte[] array)
{
dataArray = array;
fixed (byte* d = dataArray)
{
data = Marshal.PtrToStructure((IntPtr)d, type);
}
}
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); }