Grâce mouviciel! J'ai adopté votre solution et l'a étendue pour mes fins.
Le texte ci-dessous va dans mon Doxyfile:
ALIASES += req{1}="\ref SRTX_\1 \"SRTX-\1\" "
ALIASES += satisfy{1}="\xrefitem satisfy \"Satisfies requirement\" \"Requirement Implementation\" \1"
ALIASES += verify{1}="\xrefitem verify \"Verifies requirement\" \"Requirement Verification\" \1"
Où SRTX est le nom de mon projet et est utilisé comme préfixe pour les exigences.
Puis-je créer un fichier appelé Exigences.dox qui établit un lien entre l'exigence de l'id et l'URL de l'exigence dans mon outil de gestion des exigences (un outil de suivi dans mon cas).
/**
@page Requirements
@section Build1
@anchor SRTX_1113
<a href="https://foo.bar.com/mantis/view.php?id=1113">SRTX-1113</a>
@anchor SRTX_1114
<a href="https://foo.bar.com/mantis/view.php?id=1114">SRTX-1114</a>
*/
On pourrait aussi mettre le texte de l'exigence dans la balise d'ancrage si vous n'avez pas besoin de lien vers une source externe.
Dans mon code j'ai:
/**
* This is the basic executive that schedules processes.
* @satisfy{@req{1114}}
*/
class Scheduler: public Process
{
...
}
Et dans mes tests, j'ai mis:
/**
* Provide a number of tests for process scheduling.
* @verify{@req{1114}}
*/
class Scheduler_ut : public CppUnit::TestFixture
{
...
}
Cela me donne des pages liées pour les Exigences, les Exigences de mise en Œuvre, et les Exigences de Vérification. Il fournit également Satisfait à l'exigence et Vérifie les exigences des sections dans la description de la classe (ou de la fonction, où vous mettez la balise).