File: dump.py

package info (click to toggle)
doxygen 1.15.0%2Bds1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 25,384 kB
  • sloc: cpp: 223,248; lex: 45,536; python: 32,394; ansic: 26,761; xml: 16,962; javascript: 8,627; yacc: 582; f90: 455; php: 427; perl: 384; makefile: 201; sh: 24; objc: 14; cs: 5; java: 1
file content (31 lines) | stat: -rw-r--r-- 901 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# An minimal example showing how to use the python doxmlparser module to read
# the XML output generated by doxygen for a project and dump it to the output again.

import sys

import doxmlparser

# process a compound file and export the results to stdout
def parse_compound(inDirName,baseName):
    doxmlparser.compound.parse(inDirName+"/"+baseName+".xml",False)

# process the index file and export the results to stdout
def parse_index(inDirName):
    rootObj = doxmlparser.index.parse(inDirName+"/index.xml",False)
    for compound in rootObj.get_compound(): # for each compound defined in the index
        parse_compound(inDirName,compound.get_refid())

def usage():
    print("Usage {0} <xml_output_dir>".format(sys.argv[0]))
    sys.exit(1)

def main():
    args = sys.argv[1:]
    if len(args)==1:
        parse_index(args[0])
    else:
        usage()

if __name__ == '__main__':
    main()