protected virtual Array rawDataToStructArray(ref byte[] rawData) { if (rawData == null) { return(new STANDARD_HOOK_CALL[0]); } // Create our result array uint size = (this.lengthParams + 8); STANDARD_HOOK_CALL[] result = new STANDARD_HOOK_CALL[rawData.Length / size]; for (int i = 0; i < result.Length; i++) { result[i].caller = oMemoryFunctions.byteArrayToUint(rawData, (int)(i * size)); // Copy over the arguments result[i].arguments = new uint[this.lengthParams / 4]; for (int n = 0; n < this.lengthParams / 4; n++) { result[i].arguments[n] = oMemoryFunctions.byteArrayToUint(rawData, (int)(i * size + 4 + n * 4)); } result[i].returnValue = oMemoryFunctions.byteArrayToUint(rawData, (int)(i * size + 4 + this.lengthParams)); } return(result); }
protected virtual Array rawDataToStructArray(ref byte[] rawData) { if (rawData == null) return new STANDARD_HOOK_CALL[0]; // Create our result array uint size = (this.lengthParams+8); STANDARD_HOOK_CALL[] result = new STANDARD_HOOK_CALL[rawData.Length / size]; for (int i = 0; i < result.Length; i++) { result[i].caller = oMemoryFunctions.byteArrayToUint(rawData, (int) (i * size) ); // Copy over the arguments result[i].arguments = new uint[this.lengthParams / 4]; for (int n = 0; n < this.lengthParams / 4; n++) { result[i].arguments[n] = oMemoryFunctions.byteArrayToUint(rawData, (int) (i * size + 4 + n*4) ); } result[i].returnValue = oMemoryFunctions.byteArrayToUint(rawData, (int)(i * size + 4 + this.lengthParams)); } return result; }