With the transition to use IDL for specifying interfaces in ROS 2 Dashing this article has been superseded by the mapping described in the Interface definition using .msg / .srv / .action files article.
This article specifies the mapping between the ROS interface types and the DDS types.
Authors: Dirk Thomas
Date Written: 2015-06
Last Modified: 2020-02
This article specifies the mapping between ROS interface types defined in the interface definition article and DDS types defined in the Interface Definition Language.
| ROS type | DDS type |
|---|---|
| bool | boolean |
| byte | octet |
| char | char |
| float32 | float |
| float64 | double |
| int8 | octet |
| uint8 | octet |
| int16 | short |
| uint16 | unsigned short |
| int32 | long |
| uint32 | unsigned long |
| int64 | long long |
| uint64 | unsigned long long |
| string | string |
| ROS type | DDS type |
|---|---|
| static array | T[N] |
| unbounded dynamic array | sequence |
| bounded dynamic array | sequence<T, N> |
| bounded string | string |