|
Robot Raconteur Core C++ Library
|
Numeric primitive multidimensional array value type. More...
#include <DataTypes.h>
Public Member Functions | |
| virtual void | RetrieveSubArray (const std::vector< uint32_t > &memorypos, const boost::intrusive_ptr< RRMultiDimArray< T > > &buffer, const std::vector< uint32_t > &bufferpos, const std::vector< uint32_t > &count) |
| Retrieve a subset of an array. | |
| virtual void | AssignSubArray (const std::vector< uint32_t > &memorypos, const boost::intrusive_ptr< RRMultiDimArray< T > > &buffer, const std::vector< uint32_t > &bufferpos, const std::vector< uint32_t > &count) |
| Assign a subset of an array. | |
Numeric primitive multidimensional array value type.
This class stores a numeric primitive multidimensional arrays. Multidimensional arrays are stored as a uint32_t array of dimensions, and an array of the flattened elements. Arrays are stored in column major, or "Fortran" order.
Multidimensional arrays should be allocated using AllocateRRMultiDimArray() or AllocateEmptyRRMultiDimArray()
Valid values for T are rr_bool, double, float, int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t, uint64_t, cdouble, or csingle. Attempts to use any other types will result in a compiler error.
RRMultiDimArray must be stored in RR_INTRUSIVE_PTR. It will be deleted automatically when the reference count goes to zero.
| T | The type of the array elements |
|
inlinevirtual |
Assign a subset of an array.
| memorypos | Position within array to store data |
| buffer | Buffer to assign data from |
| bufferpos | Position within buffer to assign from |
| count | Count of data to assign |
|
inlinevirtual |
Retrieve a subset of an array.
| memorypos | Position in array to read |
| buffer | Buffer to store retrieved data |
| bufferpos | Position within buffer to store data |
| count | Count of data to retrieve |