diff options
author | Dimitri van Heesch <dimitri@stack.nl> | 2004-04-27 19:44:46 (GMT) |
---|---|---|
committer | Dimitri van Heesch <dimitri@stack.nl> | 2004-04-27 19:44:46 (GMT) |
commit | 08b4b96ea20ded173b851aeb452c5d3c98e08cc4 (patch) | |
tree | 73dfea63810e8b2a57aee5b37ecd2f360c69f440 /src/definition.h | |
parent | f08c77a2ead21877f1cbd49a5b325ab7be0fc599 (diff) | |
download | Doxygen-08b4b96ea20ded173b851aeb452c5d3c98e08cc4.zip Doxygen-08b4b96ea20ded173b851aeb452c5d3c98e08cc4.tar.gz Doxygen-08b4b96ea20ded173b851aeb452c5d3c98e08cc4.tar.bz2 |
Release-1.3.6-20040427
Diffstat (limited to 'src/definition.h')
-rw-r--r-- | src/definition.h | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/src/definition.h b/src/definition.h index 88d0479..a0a3cd9 100644 --- a/src/definition.h +++ b/src/definition.h @@ -20,6 +20,7 @@ #include "qtbc.h" #include <qlist.h> +#include <qdict.h> class FileDef; class OutputList; @@ -32,6 +33,14 @@ class GroupDef; class GroupList; struct ListItemInfo; struct SectionInfo; +class Definition; + +struct ReachableDefinition +{ + ReachableDefinition(Definition *d,int dist) : def(d), distance(dist) {} + Definition *def; + int distance; +}; /*! The common base class of all entity definitions found in the sources. */ class Definition @@ -58,7 +67,7 @@ class Definition /*! Returns the base name of the output file that contains this * definition. */ - virtual QCString qualifiedName() const; + virtual QCString qualifiedName(); QCString localName() const; virtual QCString getOutputFileBase() const = 0; /*! Returns the name of the source listing of this file. */ @@ -132,6 +141,7 @@ class Definition virtual Definition *getOuterScope() const { return m_outerScope; } virtual void addInnerCompound(Definition *d); virtual void setOuterScope(Definition *d) { m_outerScope = d; } + virtual void computeReachability(); MemberSDict *getReferencesMembers() const { return m_sourceRefsDict; } MemberSDict *getReferencedByMembers() const { return m_sourceRefByDict; } @@ -139,6 +149,7 @@ class Definition void makePartOfGroup(GroupDef *gd); GroupList *partOfGroups() const { return m_partOfGroups; } QCString convertNameToFile(const char *name,bool allowDots=FALSE) const; + void addReachableDef(Definition *d,int distance); protected: int m_startBodyLine; // line number of the start of the definition @@ -158,6 +169,9 @@ class Definition /*! List of groups this definition is part of */ GroupList *m_partOfGroups; + // reachability of other definitions from this one + QDict<ReachableDefinition> m_reachableDefs; + bool m_reachabilityComputed; private: int getXRefListId(const char *listName) const; @@ -181,6 +195,9 @@ class Definition QList<ListItemInfo> *m_xrefListItems; QCString m_symbolName; bool m_isSymbol; + + + QCString m_qualifiedName; }; class DefinitionList : public QList<Definition> |