Expand description
Interop-Test-Typen fuer Cross-Vendor-Nachweis.
Enthaelt Application-Typen, die in der DDS-Welt als de-facto-
Interop-Benchmark gelten — allen voran ShapeType aus dem
RTI/Cyclone/Fast-DDS-ShapesDemo. Diese Typen sind nicht fuer
Produktions-Nutzung gedacht, sondern dafuer, gegenueber anderen
DDS-Stacks zu beweisen, dass unsere Wire- und Typen-Semantik
byte-kompatibel ist.
§ShapeType
Spec-Grundlage (IDL, wie von RTI/Cyclone/Fast-DDS verwendet):
struct ShapeType {
@key string<128> color;
int32 x;
int32 y;
int32 shapesize;
};Encoding: XCDR2 Little-Endian (das ist die Standard-Einstellung
saemtlicher ShapesDemo-Implementierungen, und entspricht unserem
User-Payload-Encapsulation-Header 0x00 0x07 0x00 0x00).
CDR-Layout:
offset 0 : uint32 color.length (inkl. null-terminator)
offset 4 : bytes color.utf8_bytes
offset 4+n: uint8 0x00 (null-terminator)
padding (auf naechste 4-Byte-Grenze)
offset * : int32 x
offset *+4: int32 y
offset *+8: int32 shapesizeDer @key auf color wird auf Wire-Level nicht gesondert behandelt
— er steuert Instance-Keying, nicht die Serialisierung. Fuer unser
Sample-Matching in v1.2 (noch keine Instance-Map im Reader) ist
jede (color, x, y, shapesize)-Kombination effektiv ein eigenes
Sample.
Structs§
- Shape
Type - RTI / Cyclone / Fast-DDS ShapesDemo-kompatibler Application-Type.