C build reorganisation #359
Labels
context: C backend
Changes occur predominantly in the C code
context: v4-prep
This issue regards changes to the v4-prep branch
type: refactor
Code refactoring / restyling for internal benefit
This issue is essentially mirror of #135 for the C backend. Currently the C backend is all compiled from
GenerateICs.c
which directly includes all of the.c
and.h
files sequentially, and specifically exposes everything in21cmFAST.h
andGlobals.h
to the python package. This makes it difficult to control dependencies between files, specify the scope of variables and functions, and will also make most linters fairly upset. We should reorganize the C backend to be separated into files with narrower scope (for example bothps.c
andUsefulFunctions.c
are way too broad at the moment), and we should define header files for each to control how they are shared amongst the backend.We should discuss the specifics of what this will look like, but as the model grows it will become important that the codebase is easy to navigate and extend.
The text was updated successfully, but these errors were encountered: