openlvc / portico

Portico is an open source, cross-platform, fully supported HLA RTI implementation. Designed with modularity and flexibility in mind, Portico is a production-grade RTI for the Simulation and Training Community, so come say hi!
http://www.porticoproject.org
153 stars 81 forks source link

Encoding/decoding errors for composite types #179

Open anthonycramp opened 8 years ago

anthonycramp commented 8 years ago

(These comments are based on review of the Java code ... a quick review of the C++ seems to point to the same issues).

While implementing HLA1516eVariantRecord I reviewed some of the other encoding helper classes and noted a few cases of deviation from the standard. These issues were constrained to the composite types HLAfixedArray, HLAvariantArray, HLAfixedRecord.

anthonycramp commented 8 years ago

Adding some extra information here. Code generated using Pitch Developer Studio can use Portico as an RTI but will continue to use their own encoding/decoding helpers. This basically precludes the use of Pitch Developer Studio if those federates are to interact with any federates written to use Portico's implementation of the encoding/decoding helpers (since the encode/decode algorithms don't match). Fault here could go either way: the Pitch Developer Studio generated federates should be sourcing and encoding/decoding helper from the RTI of the day; but, Portico should be doing encoding/decoding in accordance with the standard.