Я определил следующие макросы и пытаюсь расширить их при создании документации.
#define GETSET(param) \
bool CYNOVE_Enable##param(postproc_ctx_t ctx, bool enable) \
{ \
struct postproc_ctx * c; \
c = (struct postproc_ctx *)ctx; \
c->do_##param = enable?1:0; \
return TRUE; \
} \
В Doxygen, если я использую:
MACRO_EXPANSION = YES
Затем макрос расширяется, когда я его использую.
Однако, если установлено:
MACRO_EXPANSION = YES
EXPAND_ONLY_PREDEF = YES
EXPAND_AS_DEFINED = GETSET
макрос не расширен
Так как я думаю, что один из ответов неверен, но комментарий просто отстой для любого длинного объяснения, позвольте мне добавить, как я думаю, это должно работать.
Согласно документации по Doxygen и этой ссылке , PREDEFINED и EXPAND_AS_DEFINED служат различным целям. Я понял, что EXPAND_AS_DEFINED используется для выборочного расширения данного макроса «как он был определен в исходном коде», отсюда и название, а PREDEFINED здесь, чтобы дать Doxygen значение макроса.