This is more of a limitation of normal C coding - if a header file is included, all of the contents of the header file must be defined.
There are a few workarounds:
- Create a separate header file (data_dictionary_enums.h for example) with only the enumerations needed by the Data Dictionary, and then add #include "data_dictionary_enums.h" to the main header file.
- Add a preprocessor macro to the header file such that the rest of the header file is only included when a specific define is set.
- Add the other necessary #includes to the header file such that all the structs are fully defined.