scitools.com

← Graph catalog

Base Classes is one of the interactive graphs Understand can draw of your code — call trees, dependencies, control flow, and more.

Base Classes

Languages: C#, C++, Python, Web
Targets: Classes
Variants: Classic, Cluster, Compare, Relationship, Simplified

Show the classes a selected class directly or indirectly inherits from.

For a selected class, struct, or interface, this shows an edge to each class it directly inherits from, then recurses upward into each of those classes' own base classes, building a multi-level ancestry tree. A class with more than one direct base class (multiple inheritance) gets an edge to each one.

Rooted at Vertebrate below, the graph shows edges to its two direct bases, Animal and Eukaryote, then continues from Animal up to LivingThing. The inverse graph, Derived Classes, shows the reverse relationship — everything that inherits from the selected class.

See the following code and corresponding graph

class LivingThing {
public:
    virtual ~LivingThing() = default;
    virtual void describe() const;
};

class Animal : public LivingThing {
public:
    void describe() const override;
};

class Eukaryote {
public:
    virtual ~Eukaryote() = default;
    virtual void classify() const;
};

// Multiple inheritance: Vertebrate has two direct base classes
class Vertebrate : public Animal, public Eukaryote {
public:
    void describe() const override;
    void classify() const override;
};

Base Classes - Classic

The Classic variant is similar to the Simplified variant, showing all relationships in a simple tree, but it uses a custom layout algorithm instead of Graphviz.


Back to Base Classes

Base Classes - Cluster

The Cluster variant groups entities by their containing class/file/architecture.


Back to Base Classes

Base Classes - Compare

The Compare variant shows how the graph has changed relative to the project's comparison database.


Back to Base Classes

Base Classes - Relationship

The Relationship variant filters the graph to only paths connecting the two entities.


Back to Base Classes

Base Classes - Simplified

The Simplified variant shows all relationships in a simple tree (no clusters)


Back to Base Classes