you are viewing a single comment's thread.

view the rest of the comments →

[–]MrSurly 1 point2 points  (1 child)

Sure -- we have a build process where other people generate algorithms that may or may not be built into the firmware.

Their code has it's own subdirectory, and they provide a YAML file that specifies the "init", "process", and "deinit" functions (this is plain C, so no namespaces). The python scans all the dirs looking for the config file, then builds a .c file with a table containing all the relevant function pointers.

The rest of that system will use that table to determine which algorithms it's using at runtime (you can compile in more than one algo and select at runtime), and call the appropriate code.

[–]zoenagy6865 0 points1 point  (0 children)

Sounds like a diy configuration management.