2012-06-18 2 views
6

Ho un'intestazione doxygen per una funzione come segue:Doxygen Evidenziare parametro nel pre-condizione

/** Some description. 

    @param[in] grid1  First grid 
    @param[in] grid2  Second grid 

    @pre grid1 and grid2 must be of the same dimensions 
*/ 

Vorrei grid1 e grid2 essere appositamente evidenziato nella sezione presupposti delle documentazioni generate, dal momento che sono parametri. Nella mia mente, dovrei essere in grado di fare qualcosa come

@pre #grid1 and #grid2 must be the same size 

Ma questo non funziona.

Qualche idea su come raggiungere questo obiettivo?

Grazie!

risposta

6

Sarebbe bello se # collegato automaticamente alla definizione dell'argomento della funzione. Tuttavia, non riesco a vedere comunque di farlo nella sezione automatic link generation del manuale doxygen.

Dopo aver esaminato la fonte HTML della documentazione, sembra che i parametri sembrino essere semplicemente stilizzati come strong e con la classe paramname. Quindi qualcosa come

@pre <strong class="paramname">grid1</strong> and 
    <strong class="paramname">grid2</strong> must be the same size. 

dovrebbe darvi i risultati desiderati. Chiaramente questo è troppo verboso da scrivere ogni volta. Tuttavia, si dovrebbe essere in grado di definire un custom command, dire \paramname, per fare questo modo si può solo scrivere

@pre \paramname{grid1} and \paramname{grid2} must be the same size. 

Edit: Ciò può essere ottenuto con il file di configurazione alias

ALIASES += paramname{1}="<strong class="paramname">\1</strong>" 
+0

Questo ha funzionato abbastanza bene, grazie. – Richard

0

Landed qui cercando la risposta, ma l'ho trovata altrove.

Utilizzare \p per indicare che la parola successiva è un parametro di funzione.

E, naturalmente, è possibile utilizzare @ anziché \.

/** Some description. 

    @param[in] grid1  First grid 
    @param[in] grid2  Second grid 

    @pre @p grid1 and @p grid2 must be of the same dimensions 
*/ 

Vedere Doxygen Special Commands reference.