Doxygen
pagedef.h
浏览该文件的文档.
1 /******************************************************************************
2  *
3  * Copyright (C) 1997-2020 by Dimitri van Heesch.
4  *
5  * Permission to use, copy, modify, and distribute this software and its
6  * documentation under the terms of the GNU General Public License is hereby
7  * granted. No representations are made about the suitability of this software
8  * for any purpose. It is provided "as is" without express or implied warranty.
9  * See the GNU General Public License for more details.
10  *
11  * Documents produced by Doxygen are derivative works derived from the
12  * input used in their production; they are not affected by this license.
13  *
14  */
15 
16 #ifndef PAGEDEF_H
17 #define PAGEDEF_H
18 
19 #include "definition.h"
20 
21 class PageLinkedRefMap;
22 class OutputList;
23 
24 /** @brief A model of a page symbol. */
25 class PageDef : public DefinitionMutable, public Definition
26 {
27  public:
28  virtual ~PageDef() {}
29 
30  // setters
31  virtual void setFileName(const QCString &name) = 0;
32  virtual void setLocalToc(const LocalToc &tl) = 0;
33  virtual void setShowLineNo(bool) = 0;
34  virtual void setTitle(const QCString &title) = 0;
35 
36  // getters
37  virtual DefType definitionType() const = 0;
38  virtual bool isLinkableInProject() const = 0;
39  virtual bool isLinkable() const = 0;
40  virtual QCString getOutputFileBase() const = 0;
41  virtual QCString anchor() const = 0;
42  virtual void findSectionsInDocumentation() = 0;
43  virtual QCString title() const = 0;
44  virtual const GroupDef *getGroupDef() const = 0;
45  virtual const PageLinkedRefMap &getSubPages() const = 0;
46  virtual void addInnerCompound(const Definition *) = 0;
47  virtual bool visibleInIndex() const = 0;
48  virtual bool documentedPage() const = 0;
49  virtual bool hasSubPages() const = 0;
50  virtual bool hasParentPage() const = 0;
51  virtual bool hasTitle() const = 0;
52  virtual LocalToc localToc() const = 0;
53  virtual void setPageScope(Definition *) = 0;
54  virtual Definition *getPageScope() const = 0;
55  virtual QCString displayName(bool=TRUE) const = 0;
56  virtual bool showLineNo() const = 0;
57 
58  virtual void writeDocumentation(OutputList &) = 0;
59  virtual void writeTagFile(TextStream &) = 0;
60  virtual void setNestingLevel(int) = 0;
61  virtual void writePageDocumentation(OutputList &) const = 0;
62 
63 };
64 
65 PageDef *createPageDef(const QCString &f,int l,const QCString &n,const QCString &d,const QCString &t);
66 
67 // --- Cast functions
68 
70 const PageDef *toPageDef(const Definition *d);
71 
72 // ------------------
73 
74 class PageLinkedMap : public LinkedMap<PageDef>
75 {
76 };
77 
78 class PageLinkedRefMap : public LinkedRefMap<const PageDef>
79 {
80 };
81 
82 #endif
83 
PageDef::localToc
virtual LocalToc localToc() const =0
LinkedRefMap
Container class representing a vector of objects with keys.
Definition: linkedmap.h:231
PageDef::showLineNo
virtual bool showLineNo() const =0
Definition
The common base class of all entity definitions found in the sources.
Definition: definition.h:76
toPageDef
PageDef * toPageDef(Definition *d)
Definition: pagedef.cpp:408
PageDef::getOutputFileBase
virtual QCString getOutputFileBase() const =0
PageDef::~PageDef
virtual ~PageDef()
Definition: pagedef.h:28
PageDef::getGroupDef
virtual const GroupDef * getGroupDef() const =0
PageDef::getSubPages
virtual const PageLinkedRefMap & getSubPages() const =0
PageLinkedRefMap
Definition: pagedef.h:78
TextStream
Text streaming class that buffers data.
Definition: textstream.h:33
PageDef::documentedPage
virtual bool documentedPage() const =0
PageDef::setLocalToc
virtual void setLocalToc(const LocalToc &tl)=0
PageDef::hasSubPages
virtual bool hasSubPages() const =0
PageDef
A model of a page symbol.
Definition: pagedef.h:25
PageDef::getPageScope
virtual Definition * getPageScope() const =0
GroupDef
A model of a group of symbols.
Definition: groupdef.h:49
LocalToc
Definition: types.h:301
OutputList
Class representing a list of output generators that are written to in parallel.
Definition: outputlist.h:37
PageDef::isLinkableInProject
virtual bool isLinkableInProject() const =0
DefinitionMutable
Definition: definition.h:308
PageDef::isLinkable
virtual bool isLinkable() const =0
PageDef::findSectionsInDocumentation
virtual void findSectionsInDocumentation()=0
Definition::name
virtual QCString name() const =0
PageDef::writeTagFile
virtual void writeTagFile(TextStream &)=0
PageDef::setNestingLevel
virtual void setNestingLevel(int)=0
PageLinkedMap
Definition: pagedef.h:74
TRUE
#define TRUE
Definition: qcstring.h:36
PageDef::setPageScope
virtual void setPageScope(Definition *)=0
PageDef::definitionType
virtual DefType definitionType() const =0
PageDef::hasTitle
virtual bool hasTitle() const =0
Definition::DefType
DefType
Definition: definition.h:85
PageDef::setTitle
virtual void setTitle(const QCString &title)=0
PageDef::writePageDocumentation
virtual void writePageDocumentation(OutputList &) const =0
PageDef::setFileName
virtual void setFileName(const QCString &name)=0
definition.h
createPageDef
PageDef * createPageDef(const QCString &f, int l, const QCString &n, const QCString &d, const QCString &t)
Definition: pagedef.cpp:76
PageDef::addInnerCompound
virtual void addInnerCompound(const Definition *)=0
LinkedMap
Container class representing a vector of objects with keys.
Definition: linkedmap.h:35
PageDef::title
virtual QCString title() const =0
PageDef::writeDocumentation
virtual void writeDocumentation(OutputList &)=0
PageDef::displayName
virtual QCString displayName(bool=TRUE) const =0
PageDef::visibleInIndex
virtual bool visibleInIndex() const =0
PageDef::setShowLineNo
virtual void setShowLineNo(bool)=0
PageDef::anchor
virtual QCString anchor() const =0
PageDef::hasParentPage
virtual bool hasParentPage() const =0
QCString
This is an alternative implementation of QCString.
Definition: qcstring.h:108