Back to Cutlass

CUTLASS: Graph Legend

docs/graph_legend.html

4.4.22.5 KB
Original Source

| | CUTLASS

CUDA Templates for Linear Algebra Subroutines and Solvers |

Graph Legend

This page explains how to interpret the graphs that are generated by doxygen.

Consider the following example:

1 /*! Invisible class because of truncation */

2 class Invisible { };

3

4 /*! Truncated class, inheritance relation is hidden */

5 class Truncated : public Invisible { };

6

7 /* Class not documented with doxygen comments */

8 class Undocumented { };

9

10 /*! Class that is inherited using public inheritance */

11 class PublicBase : public Truncated { };

12

13 /*! A template class */

14 template<class T> class Templ { };

15

16 /*! Class that is inherited using protected inheritance */

17 class ProtectedBase { };

18

19 /*! Class that is inherited using private inheritance */

20 class PrivateBase { };

21

22 /*! Class that is used by the Inherited class */

23 class Used { };

24

25 /*! Super class that inherits a number of other classes */

26 class Inherited : public PublicBase,

27 protected ProtectedBase,

28 private PrivateBase,

29 public Undocumented,

30 public Templ<int>

31 {

32 private:

33 Used *m_usedClass;

34 };

This will result in the following graph:

The boxes in the above graph have the following meaning:

  • A filled gray box represents the struct or class for which the graph is generated.
  • A box with a black border denotes a documented struct or class.
  • A box with a gray border denotes an undocumented struct or class.
  • A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.

The arrows have the following meaning:

  • A dark blue arrow is used to visualize a public inheritance relation between two classes.
  • A dark green arrow is used for protected inheritance.
  • A dark red arrow is used for private inheritance.
  • A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible.
  • A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance.

Generated by 1.8.11