nasa / bplib

Apache License 2.0
30 stars 13 forks source link

Fix #216, split v7_codec.c into parts #225

Closed jphickey closed 1 year ago

jphickey commented 1 year ago

Describe the contribution This splits the monolithic "v7_codec.c" file, which contained encode/decode routines for all BPv7 elements, into smaller components.

There is a set of fundamental elements, such as integers, crc, containers and bitmaps, as well as a dedicated source unit for each block type and admin record. In the future the software may allow for dynamic registration of additional block types and admin records.

Fixes #216

Testing performed Build and run, execute all tests/checks

Expected behavior changes More manageable encode/decode software units, no functional change

System(s) tested on Ubuntu 22.04

Additional Context This splits the original single file into 16 units.

This structure should allow the code for a particular structure to be more easily located, as well as additional block types or structures added in the future (including the possibility of runtime/dynamic block type registration).

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

jphickey commented 1 year ago

Reviewed at 2022-12-14 CCB and approved for merge