Call/er Tree mit Doxygen und Graphviz

Gast #1970926
Lesenswert?

Hallo zusammen,

ich versuche gerade in meinem Code einen Call Tree aufzeichnen zu 
lassen. Die Haken damit ein solcher gezeichnet werden kann ist gesetzt. 
Jedoch macht er bei manchen Funktionen den Call bzw. Callergraph mit 
rein und bei manchen nicht. Kann mir das einer erklären?
Gast #1970953
Lesenswert?

Das geht leider nicht, da es sich um geschäftliche Daten handelt. Die 
beiden FUnktionen die ich vergleiche sind aber recht ähnlich aufgebaut. 
Bei der einen macht er es, bei der anderen nicht :-/ ?
Gast #1973578
Lesenswert?

Rolf Magnus schrieb:
> Hansbär schrieb:
>> Die Haken damit ein solcher gezeichnet werden kann ist gesetzt.
>
> Was für Haken?
>
> Hansbär schrieb:
>> Boah ich mache da jetzt schon ne gefühlte Ewigkeit daran rum. Kann mir
>> wenigstens jemand ne gescheite Dokumenation empfehlen? Die von Doxygen
>> ist nicht wirklich Aussagekräftig!
>
> Das Doxyfile enthält eigentlich eine sehr ausführliche Dokumentation.
>
>
>
>     Beitrag melden | Bearbeiten | Löschen |


Mit den "Haken" kann man die einzelnen Optionen einschalten.
Es steht einiges drin im Doxyfile, aber ausführlich bzw. verständlich 
ist das nicht wirklich
Gast #1973579
Lesenswert?

Brumbär schrieb:
> Gab es da nicht irgendwelche "hide"-Optionen für bestimmte
> Funktionstypen ? Schau da mal nach.

Das mag sein, allerdings ist das keine besondere Funktion. Natürlich 
haben alle Funktionen eine unterschiedliche Parameterliste, sonst gibt 
es keine Besonderheiten
#1974051
Lesenswert?

Evtl. wird eine Funktion irgendwie durch einen Funktionspointer 
aufgerufen und Doxygen kann das nicht nachvollziehen. Ansonsten sind was 
den Graph angeht die Einstellungen nicht besondern viel.
Meine alte Konfig die ging sah so aus:
1
#---------------------------------------------------------------------------
2
# Configuration options related to the dot tool   
3
#---------------------------------------------------------------------------
4
CLASS_DIAGRAMS         = YES
5
HIDE_UNDOC_RELATIONS   = YES
6
HAVE_DOT               = YES
7
CLASS_GRAPH            = NO
8
COLLABORATION_GRAPH    = YES
9
GROUP_GRAPHS           = YES
10
UML_LOOK               = YES
11
TEMPLATE_RELATIONS     = NO
12
INCLUDE_GRAPH          = YES
13
INCLUDED_BY_GRAPH      = YES
14
CALL_GRAPH             = YES
15
CALLER_GRAPH           = YES
16
GRAPHICAL_HIERARCHY    = YES
17
DIRECTORY_GRAPH        = YES
18
DOT_IMAGE_FORMAT       = png
19
DOT_PATH               = D:/graphviz-win-2.8.bin/graphviz-2.8/bin
20
DOTFILE_DIRS           = 
21
MAX_DOT_GRAPH_WIDTH    = 1024
22
MAX_DOT_GRAPH_HEIGHT   = 1024
23
MAX_DOT_GRAPH_DEPTH    = 1000
24
DOT_TRANSPARENT        = NO
25
DOT_MULTI_TARGETS      = NO
26
GENERATE_LEGEND        = YES
27
DOT_CLEANUP            = YES
Gast #1974917
Lesenswert?

Ich habe gerade gesehen, dass nur "globale Funktionen" aufgezeichnet 
werden :-/ Damit hat sich das dann erledigt. Kann mir noch jemand sagen, 
wie man den Reiter ganz erstellt, der das Projekt in seiner 
Verzeichnisstruktur darstellt und in der man die Files direkt öffnen 
kann?
Gast #1975116
Lesenswert?

------------------------------------------------------------------------
1.Hint zu Suchen: -->
Google file:“*pdf“ doxygen
Also mit Triggerwort file:
und den String:“*.pdf“
bei Google Suchen
Finde ich exclusiv *.pdf Infos zum suchen,damit ich Doygen noch besser
steuern kann.
------------------------------------------------------------------------
http://www.gnu.org/software/global/globaldoc.html
------------------------------------------------------------------------
/home/user/
 |
 |-ROOT/      <- the root of source tree (GTAGS,GRTAGS,...)
    |
    |- README       .....   +---------------+
    |                       |The function of|
    |                       +---------------+
    |- DIR1/
    |  |
    |  |- fileA.c   .....   +---------------+
    |  |                    |main(){        |
    |  |                    |       func1();|
    |  |                    |       func2();|
    |  |                    |}              |
    |  |                    +---------------+
    |  |
    |  |- fileB.c   .....   +---------------+
    |                       |func1(){ ... } |
    |                       +---------------+
    |- DIR2/
       |
       |- fileC.c   .....   +---------------+
                            |#ifdef X       |
                            |func2(){ i++; }|
                            |#else          |
                            |func2(){ i--; }|
                            |#endif         |
                            |func3(){       |
                            |       func1();|
                            |}              |
                            +---------------+
Ich denke der FreeScale CodeWarrier macht so einen Call-Tree auch.???
Gruss Holger.
#1975604
Lesenswert?

Hansbär schrieb:

> Mit den "Haken" kann man die einzelnen Optionen einschalten.

Dann hast du das wohl über irgendeine Art von IDE konfiguriert, die dir 
das anbietet. Bei Doxygen gibt es keine "Haken".

> Es steht einiges drin im Doxyfile, aber ausführlich bzw. verständlich
> ist das nicht wirklich

Hmm, ist das denn überhaupt ein klassisch per 'doxygen -g' generiertes, 
oder wurde das von deiner IDE erzeugt? Ich hatte bisher keine Probleme 
mit den Kommentaren.
Gast #1975667
Lesenswert?

Rolf Magnus schrieb:
>> Mit den "Haken" kann man die einzelnen Optionen einschalten.
>
> Dann hast du das wohl über irgendeine Art von IDE konfiguriert, die dir
> das anbietet. Bei Doxygen gibt es keine "Haken".
>
>> Es steht einiges drin im Doxyfile, aber ausführlich bzw. verständlich
>> ist das nicht wirklich
>
> Hmm, ist das denn überhaupt ein klassisch per 'doxygen -g' generiertes,
> oder wurde das von deiner IDE erzeugt? Ich hatte bisher keine Probleme
> mit den Kommentaren.


In den Experteneinstellungen gibt es sehr wohl Haken :)
Ich habe die Doku mit Doxygen erstellt. Ich verwende keine IDE die mir 
das generiert. Ich verwende die Doxygen GUI Version 1.7.1
Gast #1977927
Lesenswert?

Rolf Magnus schrieb:
> Ach richtig, die Doxygen-GUI gab's ja auch noch. Ok, dann sind die Haken
> genehmigt. ;-)
>
> Hansbär schrieb:
>> Kann mir noch jemand sagen,
>> wie man den Reiter ganz erstellt, der das Projekt in seiner
>> Verzeichnisstruktur darstellt und in der man die Files direkt öffnen
>> kann?
>
> Das kenne ich bisher noch nicht.

Das hab ich jetzt auch endlich gelöst:

SHOW_FILES             = YES
SHOW_DIRECTORIES       = YES

das finde ich auch super praktisch...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren