Exemple #1
0
        public void FromToPtr()
        {
            // Build array of random integer structs.
            int randomStructNumber = 1000;

            RandomIntStruct[] randomIntegers = new RandomIntStruct[randomStructNumber];

            for (int x = 0; x < randomStructNumber; x++)
            {
                randomIntegers[x] = RandomIntStruct.BuildRandomStruct();
            }

            // Allocate memory for these structs.
            IntPtr memoryPtr = _currentProcess.Allocate(Reloaded.Memory.StructArray.GetSize <RandomIntStruct>(randomStructNumber));

            // Write random int struct array to pointer.
            Reloaded.Memory.StructArray.ToPtr(memoryPtr, randomIntegers);

            // Read back struct array from pointer.
            Reloaded.Memory.StructArray.FromPtr <RandomIntStruct>(memoryPtr, out var randomIntegersCopy, randomStructNumber);

            // Now compare old and new array.
            Assert.Equal(randomIntegers, randomIntegersCopy);

            // Cleanup
            _currentProcess.Free(memoryPtr);
        }
 public void Dispose() => _currentProcess.Free(_adventurePhysicsArray);
Exemple #3
0
 public void Dispose()
 {
     CurrentProcess.Free(AdventurePhysicsArray);
 }