|
Robot Raconteur Core C++ Library
|
Multidimensional namedarray random access memory region. More...
#include <MemoryMember.h>
Public Member Functions | |
| NamedMultiDimArrayMemory () | |
| Construct a new NamedMultiDimArrayMemory instance. | |
| NamedMultiDimArrayMemory (const boost::intrusive_ptr< RRNamedMultiDimArray< T > > &multimemory) | |
| Construct a new NamedMultiDimArrayMemory instance attached to an RRNamedMultiDimArrayPtr<T>. | |
| virtual void | Attach (const boost::intrusive_ptr< RRNamedMultiDimArray< T > > &multimemory) |
| Attach NamedMultiDimArrayMemory instance to an RRNamedMultiDimArrayPtr<T>. | |
| RR_OVIRTUAL std::vector< uint64_t > | Dimensions () RR_OVERRIDE |
| Dimensions of the memory array. | |
| RR_OVIRTUAL uint64_t | DimCount () RR_OVERRIDE |
| The number of dimensions in the memory array. | |
| virtual void | Read (const std::vector< uint64_t > &memorypos, boost::intrusive_ptr< RRNamedMultiDimArray< T > > &buffer, const std::vector< uint64_t > &bufferpos, const std::vector< uint64_t > &count) |
| Read a block from a multidimensional array memory. | |
| virtual void | Write (const std::vector< uint64_t > &memorypos, const boost::intrusive_ptr< RRNamedMultiDimArray< T > > &buffer, const std::vector< uint64_t > &bufferpos, const std::vector< uint64_t > &count) |
| Write a segment to a multidimensional array memory. | |
Multidimensional namedarray random access memory region.
Memories represent random access memory regions that are typically represented as arrays of various shapes and types. Memories can be declared in service definition files using the memory member keyword within service definitions. Services expose memories to clients, and the nodes will proxy read, write, and parameter requests between the client and service. The node will also break up large requests to avoid the message size limit of the transport.
The NamedMultiDimArrayMemory class is used to represent a multidimensional named array. Single dimensional named arrays should use NamedArrayMemory. Type T must be declared in a service definition using the namedarray keyword, and generated using RobotRaconteurGen.
NamedMultiDimArrayMemory instances are attached to an RRNamedMultiDimArrayPtr<T>, either when constructed or later using Attach().
NamedMultiDimArrayMemory instances returned by clients are special implementations designed to proxy requests to the service. They cannot be attached to an arbitrary array.
| T | The namedarray type of the array |
|
inline |
Construct a new NamedMultiDimArrayMemory instance.
New instance will not be attached to an array.
NamedMultiDimArrayMemory must be constructed with boost::make_shared<NamedMultiDimArrayMemory<T> >();
|
inline |
Construct a new NamedMultiDimArrayMemory instance attached to an RRNamedMultiDimArrayPtr<T>.
New instance will be constructed attached to an array.
NamedMultiDimArrayMemory must be constructed with boost::make_shared<NamedMultiDimArrayMemory<T> >();
| multimemory | The array to attach |
|
inlinevirtual |
Attach NamedMultiDimArrayMemory instance to an RRNamedMultiDimArrayPtr<T>.
| multimemory | The array to attach |
|
inlinevirtual |
The number of dimensions in the memory array.
When used with a memory returned by a client, this function will call the service to execute the request.
Implements RobotRaconteur::MultiDimArrayMemoryBase.
|
inlinevirtual |
Dimensions of the memory array.
Returns the dimensions (shape) of the memory array
When used with a memory returned by a client, this function will call the service to execute the request.
Implements RobotRaconteur::MultiDimArrayMemoryBase.
|
inlinevirtual |
Read a block from a multidimensional array memory.
Read a block of a multidimensional array memory into a supplied buffer multidimensional array. The start positions and count of the read are specified.
When used with a memory returned by a client, this function will call the service to execute the request.
| memorypos | The start position in the memory array to read |
| buffer | The buffer to receive the read data |
| bufferpos | The start position in the buffer to write the data |
| count | The count of array elements to read |
|
inlinevirtual |
Write a segment to a multidimensional array memory.
Writes a segment to a multidimensional array memory from a supplied buffer multidimensional array. The start positions and count of the write are specified.
When used with a memory returned by a client, this function will call the service to execute the request.
| memorypos | The start position in the memory array to write |
| buffer | The buffer to write the data from |
| bufferpos | The start position in the buffer to read the data |
| count | The count of array elements to write |