solodon4/Mach7

programmer-friendly header files arrangement

Closed this issue · 0 comments

PROBLEM DESCRIPTION:

Currently the library header files are located in folder $MACH7_ROOT/code/, e.g., $MACH7_ROOT/code/patterns/constructor.hpp. This makes it somewhat inconvenient for the library users: what path should they add to systems include directory?

$MACH7_ROOT? In that case the programmers has to include headers like this:

#include <code/patterns/constructor.hpp>

$MACH7_ROOT/code? In that case the programmers has to include headers like this:

#include <patterns/constructor.hpp>

In either case from the #include it is not clear what library we are using.

I can add to system includes the folder that contains $MACH7_ROOT and therewith have the programmers include headers like this:

#include <Mach7/code/patterns/constructor.hpp>

But now the final path will vary among the users: it depends on how I name the cloned repository.

PROPOSAL:

Move all the library header files to folder $MACH7_ROOT/code/include/mach7 and add a recommendation that users should add $MACH7_ROOT/code/include to their system includes path.