Сфинкс + Doxygen + Breathe: Как я могу получить документацию, подобную документации Ceres Solver от Google?

Я работаю над проектом C ++ и действительно влюбился в систему сборки документации Sphinx. Мне удалось настроить Doxygen и Breathe для создания и предоставления описаний C ++ для Sphinx.

Я не могу понять, как была сделана документация Google Ceres Solver. Их Справочник по API например, содержит имена классов, за которыми следует много текста, иногда даже с примерами блоков кода, как показано в предыдущей ссылке. Есть ли способ написать документацию Doxygen внутри исходных файлов и добиться этого?

Другой пример документация этого класса, который имеет около двух страниц текста. Я почему-то сомневаюсь, что весь этот текст находится в исходных файлах как комментарии Doxygen. У меня такое ощущение, что весь дополнительный текст был написан в реструктурированных текстовых источниках для документации и ничего в исходных файлах c ++. Но тогда какой смысл использовать доксиген и дышать …

Или спросил по-другому, где я должен разместить высокоуровневую информацию о коде? Я имею в виду, я могу документировать class1 а также class2 в их источниках, но где-то мне нужно объяснить, как они оба взаимодействуют и используются вместе. Это то, что документация Ceres Solver делает так хорошо, на мой взгляд.

В качестве альтернативы вы можете указать мне на проект C ++ с конвейером Sphinx + Doxygen + Breathe и документацией с открытым исходным кодом. Тогда я смогу увидеть, как это сделать. К сожалению, я не знаю ни о каком проекте.

5

Решение

Я пропустил ссылку на GitHub для Ceres Solver. Там источники документации можно найти. Я немного разочарован, потому что полная документация написана в исходных файлах Restructured Text, а НЕ внутри кода c ++. В основном они ссылаются на имя класса с .. class:: className а затем добавить разметку ReST для информативного текста, пример кодовых блоков и т. д. Один пример приведен в «Моделирование нелинейных наименьших квадратов»

4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]