Esta página explica como interpretar os grafos gerados pelo doxygen.
Considere o seguinte exemplo:
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;
};
Isto irá gerar o seguinte gráfo:
As caixas no grafo anterior têm as seguintes interpretações:
-
Uma caixa inteiramente preta representa a estrutura ou a classe para a qual o grafo foi gerado.
-
Uma caixa com borda preta representa uma estrutura ou classe documentada.
-
Uma caixa com borda cinzenta representa uma estrutura ou classe não documentada.
-
Uma caixa com borda vermelha representa uma estrutura ou classe documentada onde nem todas as relações de herança/encapsulamento são exibidas. Um grafo é truncado quando não cabe na sua área predefinida.
As setas têm a seguinte interpretação:
-
Uma seta azul escura representa uma relação de herança pública entre duas classes.
-
Uma seta verde escura representa uma relação de herança protegida.
-
Uma seta vermelha escura representa uma relação de herança privada.
-
Uma seta rocha em tracejado representa uma relação de encapsulamento ou uso por parte de outra classe. A legenda da seta contém o nome da variável ou variáveis da relação. A seta aponta da classe que estabelece a relação para a classe ou estrutura que é acessível.