все зависит от задачи. У меня вот включаются. Есть файл так
называемого содержимого, который генерит макросы для всего проекта.
В каждом h файле модулей есть дефайны и тайпдефы которые
используются в этой таблице. 

дальше из этой таблицы генерятся енамы массивы с данными и методами.
а в общем случае в любой h файл нужно включать только те инклуды, которые нужны этому инклуду. Т.е. , чтобы инклуд был самодостаточен и при его включении в любой файл не требовалось бы больше включать другие инклуды для компиляции без ошибок. А самый простой метод это проверить скомпилировать h файл.