nasa / EdsLib

CCSDS SOIS Electronic Data Sheet Tool and Library
Apache License 2.0
31 stars 12 forks source link

Fix #85, updates to struct/typedef names #86

Closed jphickey closed 5 months ago

jphickey commented 5 months ago

Describe the contribution Implements a bit of paradigm shift in how names of symbols/types are generated, relying on prefixes rather than suffixes. Using suffixes has an opportunity of name collisions that is not possible when using prefixes.

A separate typedef file maps to the existing type names and thus keeps it compatible with existing code, but only if that typedef file is used.

Fixes #85

Testing performed Build CFE with EDS and sanity check

Expected behavior changes The generated type names are (intentionally) all different and unique from the names used in CFE. An extra layer of typedef is used to connect the CFE data types to EDS generated types.

System(s) tested on Debian

Additional context The previous model of making the EDS scripts generate type names that exactly match what the CFE code references was getting unsustainable, as there are too many small variations in the code, particularly as more of the CFS apps got EDS-ified. This is only stable if the code is only/always built with EDS-generated headers.

The intent here is that by adding an extra layer of typedefs between them, this can better adapt to mixtures of EDS and non-EDS environments.

Contributor Info - All information REQUIRED for consideration of pull request Joseph Hickey, Vantage Systems, Inc.