Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Special Interest Groups
  3. C++ Gurus
  4. How can I create a high-level, normie-friendly, map of C++ source-code?
Forum Update on Monday, May 27th 2025

How can I create a high-level, normie-friendly, map of C++ source-code?

Scheduled Pinned Locked Moved Unsolved C++ Gurus
2 Posts 2 Posters 328 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • atariA Offline
    atariA Offline
    atari
    wrote on last edited by atari
    #1

    I am interested in creating an automated high-level 'map' of a very-large C++ / QT project. A normie-friendly visualization simply showing the various source-code files in the project; and where they reference each other.

    In other words: I want to create a 'top-down city view' or 'traffic-route-map' between source-code files.

    It needs to be a simple, visual, 'map' of the basic inter-relationship between source-code files that a layperson / NPC could understand. I'd like to show the 'map' to everyone from our Graphics dept. to User-Testing dept. I'm imaginining a simple 'mind-map'-style visualization showing where files essentially 'interact-together' in the C++ source-code filesystem.

    Another way to put it is that I'd like to visualize all of the other files main.cpp hangs out with, and what route is taken to their houses. Basic surveillance :)

    We are Linux-based ONLY.

    I looked at doxygen; is this the right direction to go in?

    Thanks!

    1 Reply Last reply
    0
    • sierdzioS Offline
      sierdzioS Offline
      sierdzio
      Moderators
      wrote on last edited by
      #2

      Doxygen is a good choice, I don't know if it will fit your requirements exactly though. It can show nice class-subclass hierarchies if you enable dot diagrams. In cmake this can be done like so:

      find_package(Doxygen REQUIRED dot)
      

      (https://www.doxygen.nl/manual/diagrams.html)

      This will result in something like this: https://www.doxygen.nl/manual/examples/diagrams/html/class_c.html

      (Z(:^

      1 Reply Last reply
      1

      • Login

      • Login or register to search.
      • First post
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • Users
      • Groups
      • Search
      • Get Qt Extensions
      • Unsolved