◆ MemorySet()

virtual void MemorySet ( uint64_t  address,
int32_t  data 
)
pure virtual

Write a value to controller memory.

ℹ This function is avaliable in RapidCode and RapidSequencer

Description:
MemorySet writes a value into controller memory
Parameters
addressAny address (host) in the controller's memory.
dataThe data to write.
Sample Code:
IOPointUserBuffer
//---Arrange---
const int INPUT_INDEX = 0;
const int OUTPUT_INDEX = 1; // The PDO Index in that Node
UInt64 userBufferAddress = controller.AddressGet(RSIControllerAddressType.RSIControllerAddressTypeUSER_BUFFER, 0); // Grabing an memory address to store a simulated IO point.
IOPoint input0 = IOPoint.CreateDigitalInput(controller, userBufferAddress, INPUT_INDEX); // Automatically gets the memory index of a specified node and input index
IOPoint output0 = IOPoint.CreateDigitalOutput(controller, userBufferAddress, OUTPUT_INDEX); // Automatically gets the memory index of a specified node and input index
//---ACT/ASSERT---
output0.Set(false);
Assert.False(output0.Get(), "The getter function should return a value equal to false");
output0.Set(true);
Assert.True(output0.Get(), "The getter function should return a value equal to true");
controller.MemorySet(input0.AddressGet(), 0);
Assert.False(input0.Get(), "The getter function should return a value equal to false");
controller.MemorySet(input0.AddressGet(), 1);
Assert.True(input0.Get(), "The getter function should return a value equal to true");
See also
MemoryGet
Examples
Gantry.cpp, and MotionHoldReleasedBySoftwareAddress.cpp.