OpenIGTLink/ProtocolV2/Type/NDArray

From NAMIC Wiki
Revision as of 04:44, 30 November 2011 by Tokuda (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Home < OpenIGTLink < ProtocolV2 < Type < NDArray

<< Version 2 Index Page

Summary

NDARRAY is a data type, which is designed to transfer N-dimensional numerical array.


Message Types

NDARRAY

Data Type Description
TYPE UINT8 Scalar type (2:int8 3:uint8 4:int16 5:uint16 6:int32 7:uint32 10:float32 11:float64 13:complex float 64*)
DIM UINT8 Dimension of array
SIZE UINT16[DIM] Size of array
DATA TYPE[SIZE[0]][SIZE[1]]....[[SIZE[DIM-1]]] Array data. (Must be in network byte order.)

2/16/2011: Complex number support is added.

  • Complex is a 128-bit variable consisting of a real part in the first 64-bit and an imaginal part in the last 64-bit.

Memory layout of DATA field

Like multi-dimensional array in C/C++, DATA field is laid out in sequentially in a byte stream. For example, if the value of DATA is defined by:

char data[3][3] = {{1, 2, 3},
                 {4, 5, 6},
                 {7, 8, 9}
                };

the layout in the byte stream can be visualized as follows:

  +-+-+-+-+-+-+-+-+-+
  |1|2|3|4|5|6|7|8|9|
  +-+-+-+-+-+-+-+-+-+

GET_NDARRAY

Data Type Description


STT_NDARRAY

N/A

STP_NDARRAY

N/A

RTS_NDARRAY

N / A


Implementations

The NDARRAY message type is implemented in the following source code.

Contributors

Junichi Tokuda, Yuichiro Hayashi

Comments