In general, rtiddsgen only recognizes keys in the outermost structure. To consider the keys in embedded structures, the outer member needs to be a key as well. In the example below, rtiddsgen will not recognize mykey as a key for union A , struct B , or struct C . struct D { long mykey; //@key long
...