Questa pagina spiega come interpretare i grafi generati da doxygen.
Si consideri l'esempio seguente:
class Invisible { };
class Truncated : public Invisible { };
class Undocumented { };
class PublicBase : public Truncated { };
template<class T> class Templ { };
class ProtectedBase { };
class PrivateBase { };
class Used { };
class Inherited : public PublicBase,
protected ProtectedBase,
private PrivateBase,
public Undocumented,
public Templ<int>
{
private:
Used *m_usedClass;
};
Verrà prodotto il grafo seguente:
I riquadri nel grafo qui sopra hanno il seguente significato:
-
Il riquadro grigio pieno rappresenta la struct o la classe per la quale il grafo è stato generato.
-
Un riquadro con un bordo nero denota una struct o una classe documentata.
-
Un riquadro con un bordo grigio indica una struct o una classe non documentata.
-
Un riquadro con un bordo rosso indica una struct o una classe per la quale non sono mostrate tutte le relazioni di ereditarietà/contenimento (un grafo viene troncato se non rientra nei limiti prestabiliti).
Le frecce hanno il seguente significato:
-
Una freccia blu scuro indica una relazione di ereditarietà pubblica tra due classi.
-
Una freccia verde indica un'ereditarietà protetta.
-
Una freccia rossa indica un'ereditarietà privata.
-
Una freccia viola tratteggiata indica che una classe è contenuta o usata da un'altra classe. La freccia viene etichettata con la o le variabili attraverso cui la struct o la classe puntata dalla freccia è accessibile.
-
Una freccia gialla tratteggiata indica la relazione tra una istanza di un template e la classe templatizzata da cui è stata istanziata. La freccia viene etichettata con i parametri di template dell'istanza.