if args['withUnusedHeaders']: filesToParsePatterns += ['*.h', '*.hxx', '*.hpp'] filesToParse = findFilesInDir(args['d'], filesToParsePatterns) subdirectories = [x[0] for x in os.walk(args['d'])] loggingFormat = "%(levelname)s - %(module)s: %(message)s" logging.basicConfig(format=loggingFormat, level=logging.INFO) if args['verbose']: logging.basicConfig(format=loggingFormat, level=logging.DEBUG) logging.info("found " + str(len(filesToParse)) + " source files.") for sourceFile in filesToParse: logging.info("parsing file " + sourceFile) parseTranslationUnit( sourceFile, args['includeDirs'], { 'excludeClasses': args['excludeClasses'], 'includeClasses': args['includeClasses'] }) dotGenerator.setDrawAssociations(args['associations']) dotGenerator.setDrawInheritances(args['inheritances']) dotGenerator.setShowPrivMethods(args['privMembers']) dotGenerator.setShowProtMethods(args['protMembers']) #dotGenerator.setShowPubMethods(args['pubMembers']) dotfileName = args['outFile'] logging.info("generating dotfile " + dotfileName) with open(dotfileName, 'w') as dotfile: dotfile.write(dotGenerator.generate())
if args["withUnusedHeaders"]: filesToParsePatterns += ["*.h", "*.hxx", "*.hpp"] filesToParse = findFilesInDir(args["d"], filesToParsePatterns) subdirectories = [x[0] for x in os.walk(args["d"])] loggingFormat = "%(levelname)s - %(module)s: %(message)s" logging.basicConfig(format=loggingFormat, level=logging.INFO) if args["verbose"]: logging.basicConfig(format=loggingFormat, level=logging.DEBUG) logging.info("found " + str(len(filesToParse)) + " source files.") for sourceFile in filesToParse: logging.info("parsing file " + sourceFile) parseTranslationUnit( sourceFile, args["includeDirs"], {"excludeClasses": args["excludeClasses"], "includeClasses": args["includeClasses"]}, ) dotGenerator.setDrawAssociations(args["associations"]) dotGenerator.setDrawInheritances(args["inheritances"]) dotGenerator.setShowPrivMethods(args["privMembers"]) dotGenerator.setShowProtMethods(args["protMembers"]) dotGenerator.setShowPubMethods(args["pubMembers"]) dotfileName = args["outFile"] logging.info("generating dotfile " + dotfileName) with open(dotfileName, "w") as dotfile: dotfile.write(dotGenerator.generate())
from DotGenerator import * import sys dot = DotGenerator() dot.setDrawInheritances(True) dot.setDrawAssociations(True) dot.setShowPrivMethods(True) dot.setShowProtMethods(True) dot.setShowPubMethods(True) c1 = UmlClass() c1.fqn = "NS1::AClass" c1.addField("aa", "int", private) c1.addField("bb", "void*", private) c1.addField("cc", "NS1::BClass", private) c1.addField("dd", "void", private) c1.addField("publicField1", "CClass", public) c1.addField("publicField2", "none", public) c1.addMethod("void", "privateMethod1", "(asdds, dss*)", private) c1.addMethod("BClass", "privateMethod2", "(asdf)", private) c1.addMethod("void", "publicMethod1", "(asdds, dss*)", public) c1.addMethod("BClass", "publicMethod2", "(asdf)", public) dot.addClass(c1) c2 = UmlClass() c2.fqn = "NS1::BClass" c2.parents.append(c1.fqn) dot.addClass(c2)
filesToParsePatterns += ['*.h', '*.hxx', '*.hpp'] filesToParse = findFilesInDir(args['d'], filesToParsePatterns) subdirectories = [x[0] for x in os.walk(args['d'])] loggingFormat = "%(levelname)s - %(module)s: %(message)s" loggingLevel = logging.INFO if args['verbose']: loggingLevel = logging.DEBUG logging.basicConfig(format=loggingFormat, level=loggingLevel) logging.info("found " + str(len(filesToParse)) + " source files.") for sourceFile in filesToParse: logging.info("parsing file " + sourceFile) parseTranslationUnit(sourceFile, args['includeDirs'], { 'excludeClasses': args['excludeClasses'], 'includeClasses': args['includeClasses'], 'excludeDirs': args['excludeDirs']}) dotGenerator.setDrawAssociations(args['associations']) dotGenerator.setDrawInheritances(args['inheritances']) dotGenerator.setShowPrivMethods(args['privMembers']) dotGenerator.setShowProtMethods(args['protMembers']) dotGenerator.setShowPubMethods(args['pubMembers']) dotfileName = args['outFile'] logging.info("generating dotfile " + dotfileName) with open(dotfileName, 'w') as dotfile: dotfile.write(dotGenerator.generate())