Doxygen
FileDefImpl类 参考
+ 类 FileDefImpl 继承关系图:
+ FileDefImpl 的协作图:

Public 成员函数

 FileDefImpl (const QCString &p, const QCString &n, const QCString &ref=QCString(), const QCString &dn=QCString())
 
virtual ~FileDefImpl ()
 
virtual DefType definitionType () const
 
virtual CodeSymbolType codeSymbolType () const
 
virtual QCString name () const
 
virtual QCString displayName (bool=TRUE) const
 
virtual QCString fileName () const
 
virtual QCString getOutputFileBase () const
 
virtual QCString anchor () const
 
virtual QCString getSourceFileBase () const
 
virtual QCString includeName () const
 
virtual QCString includeDependencyGraphFileName () const
 
virtual QCString includedByDependencyGraphFileName () const
 
virtual QCString absFilePath () const
 
virtual const QCStringdocName () const
 
virtual bool isSource () const
 
virtual bool isDocumentationFile () const
 
virtual const DefinitiongetSourceDefinition (int lineNr) const
 
virtual const MemberDefgetSourceMember (int lineNr) const
 
virtual QCString getPath () const
 
virtual QCString getVersion () const
 
virtual bool isLinkableInProject () const
 
virtual bool isLinkable () const
 
virtual bool isIncluded (const QCString &name) const
 
virtual PackageDef * packageDef () const
 
virtual DirDefgetDirDef () const
 
virtual LinkedRefMap< const NamespaceDefgetUsedNamespaces () const
 
virtual LinkedRefMap< const ClassDefgetUsedClasses () const
 
virtual const IncludeInfoListincludeFileList () const
 
virtual const IncludeInfoListincludedByFileList () const
 
virtual void getAllIncludeFilesRecursively (StringVector &incFiles) const
 
virtual MemberListgetMemberList (MemberListType lt) const
 
virtual const MemberListsgetMemberLists () const
 
virtual const MemberGroupListgetMemberGroups () const
 
virtual const NamespaceLinkedRefMapgetNamespaces () const
 
virtual const ConceptLinkedRefMapgetConcepts () const
 
virtual const ClassLinkedRefMapgetClasses () const
 
virtual QCString title () const
 
virtual bool hasDetailedDescription () const
 
virtual QCString fileVersion () const
 
virtual bool subGrouping () const
 
virtual void countMembers ()
 
virtual int numDocMembers () const
 
virtual int numDecMembers () const
 
virtual void addSourceRef (int line, const Definition *d, const MemberDef *md)
 
virtual void writeDocumentation (OutputList &ol)
 
virtual void writeMemberPages (OutputList &ol)
 
virtual void writeQuickMemberLinks (OutputList &ol, const MemberDef *currentMd) const
 
virtual void writeSummaryLinks (OutputList &ol) const
 
virtual void writeTagFile (TextStream &t)
 
virtual void writeSourceHeader (OutputList &ol)
 
virtual void writeSourceBody (OutputList &ol, ClangTUParser *clangParser)
 
virtual void writeSourceFooter (OutputList &ol)
 
virtual void parseSource (ClangTUParser *clangParser)
 
virtual void setDiskName (const QCString &name)
 
virtual void insertMember (MemberDef *md)
 
virtual void insertClass (const ClassDef *cd)
 
virtual void insertConcept (const ConceptDef *cd)
 
virtual void insertNamespace (const NamespaceDef *nd)
 
virtual void computeAnchors ()
 
virtual void setPackageDef (PackageDef *pd)
 
virtual void setDirDef (DirDef *dd)
 
virtual void addUsingDirective (const NamespaceDef *nd)
 
virtual void addUsingDeclaration (const ClassDef *cd)
 
virtual void combineUsingRelations ()
 
virtual bool generateSourceFile () const
 
virtual void sortMemberLists ()
 
virtual void addIncludeDependency (const FileDef *fd, const QCString &incName, bool local, bool imported)
 
virtual void addIncludedByDependency (const FileDef *fd, const QCString &incName, bool local, bool imported)
 
virtual void addMembersToMemberGroup ()
 
virtual void distributeMemberGroupDocumentation ()
 
virtual void findSectionsInDocumentation ()
 
virtual void addIncludedUsingDirectives (FileDefSet &visitedFiles)
 
virtual void addListReferences ()
 
- Public 成员函数 继承自 DefinitionMixin< FileDef >
 DefinitionMixin (const QCString &defFileName, int defLine, int defColumn, const QCString &name, const char *b=0, const char *d=0, bool isSymbol=TRUE)
 
virtual ~DefinitionMixin ()
 
virtual bool isAlias () const
 
virtual QCString name () const
 
virtual bool isAnonymous () const
 
virtual QCString localName () const
 
virtual QCString qualifiedName () const
 
virtual QCString symbolName () const
 
virtual QCString getSourceFileBase () const
 
virtual QCString getSourceAnchor () const
 
virtual QCString documentation () const
 
virtual int docLine () const
 
virtual QCString docFile () const
 
virtual QCString briefDescription (bool abbreviate=FALSE) const
 
virtual QCString briefDescriptionAsTooltip () const
 
virtual int briefLine () const
 
virtual QCString inbodyDocumentation () const
 
virtual QCString inbodyFile () const
 
virtual int inbodyLine () const
 
virtual QCString briefFile () const
 
virtual QCString getDefFileName () const
 
virtual QCString getDefFileExtension () const
 
virtual int getDefLine () const
 
virtual int getDefColumn () const
 
virtual bool hasDocumentation () const
 
virtual bool hasUserDocumentation () const
 
virtual bool isVisibleInProject () const
 
virtual bool isVisible () const
 
virtual bool isHidden () const
 
virtual bool isArtificial () const
 
virtual QCString getReference () const
 
virtual bool isReference () const
 
virtual QCString externalReference (const QCString &relPath) const
 
virtual int getStartDefLine () const
 
virtual int getStartBodyLine () const
 
virtual int getEndBodyLine () const
 
virtual const FileDefgetBodyDef () const
 
virtual SrcLangExt getLanguage () const
 
virtual const GroupListpartOfGroups () const
 
virtual bool isLinkableViaGroup () const
 
virtual const RefItemVectorxrefListItems () const
 
virtual const DefinitionfindInnerCompound (const QCString &name) const
 
virtual DefinitiongetOuterScope () const
 
virtual const MemberVectorgetReferencesMembers () const
 
virtual const MemberVectorgetReferencedByMembers () const
 
virtual bool hasSections () const
 
virtual bool hasSources () const
 
virtual bool hasBriefDescription () const
 
virtual QCString id () const
 
virtual const SectionRefsgetSectionRefs () const
 
virtual void setName (const QCString &name)
 
virtual void setId (const QCString &name)
 
virtual void setDefFile (const QCString &df, int defLine, int defColumn)
 
virtual void setDocumentation (const QCString &doc, const QCString &docFile, int docLine, bool stripWhiteSpace=TRUE)
 
virtual void setBriefDescription (const QCString &brief, const QCString &briefFile, int briefLine)
 
virtual void setInbodyDocumentation (const QCString &doc, const QCString &docFile, int docLine)
 
virtual void setReference (const QCString &r)
 
virtual void addSectionsToDefinition (const std::vector< const SectionInfo * > &anchorList)
 
virtual void setBodySegment (int defLine, int bls, int ble)
 
virtual void setBodyDef (const FileDef *fd)
 
virtual void addSourceReferencedBy (const MemberDef *md)
 
virtual void addSourceReferences (const MemberDef *md)
 
virtual void setRefItems (const RefItemVector &sli)
 
virtual void mergeRefItems (Definition *def)
 
virtual void mergeReferences (const Definition *other)
 
virtual void mergeReferencedBy (const Definition *other)
 
virtual void addInnerCompound (const Definition *def)
 
virtual void setOuterScope (Definition *def)
 
virtual void setHidden (bool b)
 
virtual void setArtificial (bool b)
 
virtual void setLanguage (SrcLangExt lang)
 
virtual void writeSourceDef (OutputList &ol, const QCString &scopeName) const
 
virtual void writeInlineCode (OutputList &ol, const QCString &scopeName) const
 
virtual bool hasSourceRefs () const
 
virtual bool hasSourceReffedBy () const
 
virtual void writeSourceRefs (OutputList &ol, const QCString &scopeName) const
 
virtual void writeSourceReffedBy (OutputList &ol, const QCString &scopeName) const
 
virtual void makePartOfGroup (const GroupDef *gd)
 
virtual void writeNavigationPath (OutputList &ol) const
 
virtual QCString navigationPathAsString () const
 
virtual QCString pathFragment () const
 
virtual void writeDocAnchorsToTagFile (TextStream &fs) const
 
virtual void setLocalName (const QCString &name)
 
virtual void addSectionsToIndex ()
 
virtual void writeToc (OutputList &ol, const LocalToc &lt) const
 
virtual void computeTooltip ()
 
virtual void _setSymbolName (const QCString &name)
 
virtual QCString _symbolName () const
 
- Public 成员函数 继承自 FileDef
 ~FileDef ()
 
- Public 成员函数 继承自 DefinitionMutable
virtual bool hasSourceRefs () const =0
 
virtual bool hasSourceReffedBy () const =0
 
virtual ~DefinitionMutable ()=default
 
- Public 成员函数 继承自 Definition
virtual bool isAlias () const =0
 
virtual bool isAnonymous () const =0
 
virtual QCString localName () const =0
 
virtual QCString qualifiedName () const =0
 
virtual QCString symbolName () const =0
 
virtual QCString getSourceAnchor () const =0
 
virtual QCString documentation () const =0
 
virtual int docLine () const =0
 
virtual QCString docFile () const =0
 
virtual QCString briefDescriptionAsTooltip () const =0
 
virtual int briefLine () const =0
 
virtual QCString inbodyDocumentation () const =0
 
virtual QCString inbodyFile () const =0
 
virtual int inbodyLine () const =0
 
virtual QCString briefFile () const =0
 
virtual QCString getDefFileName () const =0
 
virtual QCString getDefFileExtension () const =0
 
virtual int getDefLine () const =0
 
virtual int getDefColumn () const =0
 
virtual bool hasDocumentation () const =0
 
virtual bool hasUserDocumentation () const =0
 
virtual bool isVisibleInProject () const =0
 
virtual bool isVisible () const =0
 
virtual bool isHidden () const =0
 
virtual bool isArtificial () const =0
 
virtual QCString getReference () const =0
 
virtual bool isReference () const =0
 
virtual int getStartDefLine () const =0
 
virtual int getStartBodyLine () const =0
 
virtual int getEndBodyLine () const =0
 
virtual const FileDefgetBodyDef () const =0
 
virtual SrcLangExt getLanguage () const =0
 Returns the programming language this definition was written in. 更多...
 
virtual const GroupListpartOfGroups () const =0
 
virtual bool isLinkableViaGroup () const =0
 
virtual const RefItemVectorxrefListItems () const =0
 
virtual DefinitiongetOuterScope () const =0
 
virtual const MemberVectorgetReferencesMembers () const =0
 
virtual const MemberVectorgetReferencedByMembers () const =0
 
virtual bool hasSections () const =0
 
virtual bool hasSources () const =0
 
virtual bool hasBriefDescription () const =0
 returns TRUE if this class has a brief description 更多...
 
virtual QCString id () const =0
 
virtual const SectionRefsgetSectionRefs () const =0
 returns the section dictionary, only of importance for pagedef 更多...
 
virtual QCString navigationPathAsString () const =0
 
virtual QCString pathFragment () const =0
 
virtual QCString _symbolName () const =0
 
virtual ~Definition ()=default
 

Private 成员函数

void acquireFileVersion ()
 
void addMemberToList (MemberListType lt, MemberDef *md)
 
void writeMemberDeclarations (OutputList &ol, MemberListType lt, const QCString &title)
 
void writeMemberDocumentation (OutputList &ol, MemberListType lt, const QCString &title)
 
void writeIncludeFiles (OutputList &ol)
 
void writeIncludeGraph (OutputList &ol)
 
void writeIncludedByGraph (OutputList &ol)
 
void writeMemberGroups (OutputList &ol)
 
void writeAuthorSection (OutputList &ol)
 
void writeSourceLink (OutputList &ol)
 
void writeNamespaceDeclarations (OutputList &ol, const QCString &title, bool isConstantGroup)
 
void writeClassDeclarations (OutputList &ol, const QCString &title, const ClassLinkedRefMap &list)
 
void writeConcepts (OutputList &ol, const QCString &title)
 
void writeInlineClasses (OutputList &ol)
 
void startMemberDeclarations (OutputList &ol)
 
void endMemberDeclarations (OutputList &ol)
 
void startMemberDocumentation (OutputList &ol)
 
void endMemberDocumentation (OutputList &ol)
 
void writeDetailedDescription (OutputList &ol, const QCString &title)
 
void writeBriefDescription (OutputList &ol)
 
void writeClassesToTagFile (TextStream &t, const ClassLinkedRefMap &list)
 

Private 属性

IncludeInfoMap m_includeMap
 
IncludeInfoList m_includeList
 
IncludeInfoMap m_includedByMap
 
IncludeInfoList m_includedByList
 
LinkedRefMap< const NamespaceDefm_usingDirList
 
LinkedRefMap< const ClassDefm_usingDeclList
 
QCString m_path
 
QCString m_filePath
 
QCString m_inclDepFileName
 
QCString m_inclByDepFileName
 
QCString m_outputDiskName
 
QCString m_fileName
 
QCString m_docname
 
DefinitionLineMap m_srcDefMap
 
MemberDefLineMap m_srcMemberMap
 
bool m_isSource
 
QCString m_fileVersion
 
PackageDef * m_package
 
DirDefm_dir
 
MemberLists m_memberLists
 
MemberGroupList m_memberGroups
 
NamespaceLinkedRefMap m_namespaces
 
ClassLinkedRefMap m_classes
 
ClassLinkedRefMap m_interfaces
 
ClassLinkedRefMap m_structs
 
ClassLinkedRefMap m_exceptions
 
ConceptLinkedRefMap m_concepts
 
bool m_subGrouping
 

额外继承的成员函数

- Public 类型 继承自 Definition
enum  DefType {
  TypeClass = 0, TypeFile = 1, TypeNamespace = 2, TypeMember = 3,
  TypeGroup = 4, TypePackage = 5, TypePage = 6, TypeDir = 7,
  TypeConcept = 8
}
 
- Protected 成员函数 继承自 DefinitionMixin< FileDef >
 DefinitionMixin (const DefinitionMixin &def)=default
 

详细描述

在文件 filedef.cpp56 行定义.

构造及析构函数说明

◆ FileDefImpl()

FileDefImpl::FileDefImpl ( const QCString p,
const QCString nm,
const QCString lref = QCString(),
const QCString dn = QCString() 
)

create a new file definition, where p is the file path, nm the file name, and lref is an HTML anchor name if the file was read from a tag file or 0 otherwise

在文件 filedef.cpp229 行定义.

231  : DefinitionMixin((QCString)p+nm,1,1,nm)
232 {
233  m_path=p;
234  m_filePath=m_path+nm;
235  m_fileName=nm;
236  setReference(lref);
237  setDiskName(!dn.isEmpty() ? dn : nm);
238  m_package = 0;
240  m_docname = nm;
241  m_dir = 0;
242  if (Config_getBool(FULL_PATH_NAMES))
243  {
245  }
248  m_subGrouping=Config_getBool(SUBGROUPING);
249 }

引用了 acquireFileVersion(), Config_getBool, getLanguageFromFileName(), guessSection(), QCString::isEmpty(), m_dir, m_docname, m_fileName, m_filePath, m_isSource, m_package, m_path, m_subGrouping, name(), QCString::prepend(), setDiskName(), DefinitionMixin< FileDef >::setLanguage(), DefinitionMixin< FileDef >::setReference(), Entry::SOURCE_SEC , 以及 stripFromPath().

◆ ~FileDefImpl()

FileDefImpl::~FileDefImpl ( )
virtual

destroy the file definition

在文件 filedef.cpp252 行定义.

253 {
254 }

成员函数说明

◆ absFilePath()

virtual QCString FileDefImpl::absFilePath ( ) const
inlinevirtual

Returns the absolute path including the file name.

实现了 FileDef.

在文件 filedef.cpp74 行定义.

74 { return m_filePath; }

引用了 m_filePath.

被这些函数引用 parseSource() , 以及 writeSourceBody().

◆ acquireFileVersion()

void FileDefImpl::acquireFileVersion ( )
private

在文件 filedef.cpp1544 行定义.

1545 {
1546  QCString vercmd = Config_getString(FILE_VERSION_FILTER);
1547  if (!vercmd.isEmpty() && !m_filePath.isEmpty() &&
1548  m_filePath!="generated" && m_filePath!="graph_legend")
1549  {
1550  msg("Version of %s : ",qPrint(m_filePath));
1551  QCString cmd = vercmd+" \""+m_filePath+"\"";
1552  Debug::print(Debug::ExtCmd,0,"Executing popen(`%s`)\n",qPrint(cmd));
1553  FILE *f=Portable::popen(cmd,"r");
1554  if (!f)
1555  {
1556  err("could not execute %s\n",qPrint(vercmd));
1557  return;
1558  }
1559  const int bufSize=1024;
1560  char buf[bufSize];
1561  int numRead = (int)fread(buf,1,bufSize-1,f);
1562  Portable::pclose(f);
1563  if (numRead>0 && numRead<bufSize)
1564  {
1565  buf[numRead]='\0';
1566  m_fileVersion=QCString(buf,numRead).stripWhiteSpace();
1567  if (!m_fileVersion.isEmpty())
1568  {
1569  msg("%s\n",qPrint(m_fileVersion));
1570  return;
1571  }
1572  }
1573  msg("no version available\n");
1574  }
1575 }

引用了 Config_getString, err(), Debug::ExtCmd, QCString::isEmpty(), m_filePath, m_fileVersion, msg(), Portable::pclose(), Portable::popen(), Debug::print(), qPrint() , 以及 QCString::stripWhiteSpace().

被这些函数引用 FileDefImpl().

◆ addIncludedByDependency()

void FileDefImpl::addIncludedByDependency ( const FileDef fd,
const QCString incName,
bool  local,
bool  imported 
)
virtual

实现了 FileDef.

在文件 filedef.cpp1449 行定义.

1451 {
1452  //printf("FileDefImpl::addIncludedByDependency(%p,%s,%d)\n",fd,incName,local);
1453  QCString iName = fd ? fd->absFilePath() : incName;
1454  if (!iName.isEmpty() && m_includedByMap.find(iName.str())==m_includedByMap.end())
1455  {
1456  m_includedByList.emplace_back(fd,incName,local,imported);
1457  m_includedByMap.insert(std::make_pair(iName.str(),&m_includedByList.back()));
1458  }
1459 }

引用了 FileDef::absFilePath(), QCString::isEmpty(), m_includedByList, m_includedByMap , 以及 QCString::str().

◆ addIncludeDependency()

void FileDefImpl::addIncludeDependency ( const FileDef fd,
const QCString incName,
bool  local,
bool  imported 
)
virtual

实现了 FileDef.

在文件 filedef.cpp1391 行定义.

1392 {
1393  //printf("FileDefImpl::addIncludeDependency(%p,%s,%d)\n",fd,incName,local);
1394  QCString iName = fd ? fd->absFilePath() : incName;
1395  if (!iName.isEmpty() && m_includeMap.find(iName.str())==m_includeMap.end())
1396  {
1397  m_includeList.emplace_back(fd,incName,local,imported);
1398  m_includeMap.insert(std::make_pair(iName.str(),&m_includeList.back()));
1399  }
1400 }

引用了 FileDef::absFilePath(), QCString::isEmpty(), m_includeList, m_includeMap , 以及 QCString::str().

◆ addIncludedUsingDirectives()

void FileDefImpl::addIncludedUsingDirectives ( FileDefSet visitedFiles)
virtual

实现了 FileDef.

在文件 filedef.cpp1402 行定义.

1403 {
1404  if (visitedFiles.find(this)!=visitedFiles.end()) return; // file already processed
1405  visitedFiles.insert(this);
1406  //printf("( FileDefImpl::addIncludedUsingDirectives for file %s\n",qPrint(name()));
1407 
1408  if (!m_includeList.empty()) // file contains #includes
1409  {
1410  {
1411  for (const auto &ii : m_includeList) // foreach #include...
1412  {
1413  if (ii.fileDef) // ...that is a known file
1414  {
1415  // recurse into this file
1416  const_cast<FileDef*>(ii.fileDef)->addIncludedUsingDirectives(visitedFiles);
1417  }
1418  }
1419  }
1420  {
1421  // iterate through list from last to first
1422  for (auto ii_it = m_includeList.rbegin(); ii_it!=m_includeList.rend(); ++ii_it)
1423  {
1424  const auto &ii = *ii_it;
1425  if (ii.fileDef && ii.fileDef!=this)
1426  {
1427  // add using directives
1428  auto unl = ii.fileDef->getUsedNamespaces();
1429  for (auto it = unl.rbegin(); it!=unl.rend(); ++it)
1430  {
1431  const auto *nd = *it;
1432  m_usingDirList.prepend(nd->qualifiedName(),nd);
1433  }
1434  // add using declarations
1435  auto udl = ii.fileDef->getUsedClasses();
1436  for (auto it = udl.rbegin(); it!=udl.rend(); ++it)
1437  {
1438  const auto *cd = *it;
1439  m_usingDeclList.prepend(cd->qualifiedName(),cd);
1440  }
1441  }
1442  }
1443  }
1444  }
1445  //printf(") end FileDefImpl::addIncludedUsingDirectives for file %s\n",qPrint(name()));
1446 }

引用了 m_includeList, m_usingDeclList, m_usingDirList , 以及 LinkedRefMap< T, Hash, KeyEqual, Map >::prepend().

◆ addListReferences()

void FileDefImpl::addListReferences ( )
virtual

实现了 FileDef.

在文件 filedef.cpp1479 行定义.

1480 {
1481  {
1482  const RefItemVector &xrefItems = xrefListItems();
1483  addRefItem(xrefItems,
1486  getOutputFileBase(),name(),
1487  QCString(),
1488  0
1489  );
1490  }
1491  for (const auto &mg : m_memberGroups)
1492  {
1493  mg->addListReferences(this);
1494  }
1495  for (auto &ml : m_memberLists)
1496  {
1497  if (ml->listType()&MemberListType_documentationLists)
1498  {
1499  ml->addListReferences(this);
1500  }
1501  }
1502 }

引用了 addRefItem(), getOutputFileBase(), m_memberGroups, m_memberLists, MemberListType_documentationLists, name(), theTranslator, Translator::trFile(), TRUE , 以及 DefinitionMixin< FileDef >::xrefListItems().

◆ addMembersToMemberGroup()

void FileDefImpl::addMembersToMemberGroup ( )
virtual

实现了 FileDef.

在文件 filedef.cpp1217 行定义.

1218 {
1219  for (auto &ml : m_memberLists)
1220  {
1221  if (ml->listType()&MemberListType_declarationLists)
1222  {
1223  ::addMembersToMemberGroup(ml.get(),&m_memberGroups,this);
1224  }
1225  }
1226 
1227  // add members inside sections to their groups
1228  for (const auto &mg : m_memberGroups)
1229  {
1230  if (mg->allMembersInSameSection() && m_subGrouping)
1231  {
1232  //printf("----> addToDeclarationSection(%s)\n",qPrint(mg->header()));
1233  mg->addToDeclarationSection();
1234  }
1235  }
1236 }

引用了 m_memberGroups, m_memberLists, m_subGrouping , 以及 MemberListType_declarationLists.

◆ addMemberToList()

void FileDefImpl::addMemberToList ( MemberListType  lt,
MemberDef md 
)
private

在文件 filedef.cpp1601 行定义.

1602 {
1603  static bool sortBriefDocs = Config_getBool(SORT_BRIEF_DOCS);
1604  static bool sortMemberDocs = Config_getBool(SORT_MEMBER_DOCS);
1605  const auto &ml = m_memberLists.get(lt,MemberListContainer::File);
1606  ml->setNeedsSorting(
1607  ((ml->listType()&MemberListType_declarationLists) && sortBriefDocs) ||
1608  ((ml->listType()&MemberListType_documentationLists) && sortMemberDocs));
1609  ml->push_back(md);
1610  if (ml->listType()&MemberListType_declarationLists)
1611  {
1613  if (mdm)
1614  {
1615  mdm->setSectionList(this,ml.get());
1616  }
1617  }
1618 }

引用了 Config_getBool, File, MemberLists::get(), m_memberLists, MemberListType_declarationLists, MemberListType_documentationLists, MemberDefMutable::setSectionList() , 以及 toMemberDefMutable().

被这些函数引用 insertMember().

◆ addSourceRef()

void FileDefImpl::addSourceRef ( int  line,
const Definition d,
const MemberDef md 
)
virtual

实现了 FileDef.

在文件 filedef.cpp1347 行定义.

1348 {
1349  //printf("FileDefImpl::addSourceDef(%d,%p,%p)\n",line,d,md);
1350  if (d)
1351  {
1352  m_srcDefMap.insert(std::make_pair(line,d));
1353  if (md) m_srcMemberMap.insert(std::make_pair(line,md));
1354  //printf("Adding member %s with anchor %s at line %d to file %s\n",
1355  // md?qPrint(md->name()):"<none>",md?qPrint(md->anchor()):"<none>",line,qPrint(name()));
1356  }
1357 }

引用了 m_srcDefMap , 以及 m_srcMemberMap.

◆ addUsingDeclaration()

void FileDefImpl::addUsingDeclaration ( const ClassDef cd)
virtual

实现了 FileDef.

在文件 filedef.cpp1386 行定义.

1387 {
1388  m_usingDeclList.add(cd->qualifiedName(),cd);
1389 }

引用了 LinkedRefMap< T, Hash, KeyEqual, Map >::add(), m_usingDeclList , 以及 Definition::qualifiedName().

被这些函数引用 combineUsingRelations().

◆ addUsingDirective()

void FileDefImpl::addUsingDirective ( const NamespaceDef nd)
virtual

实现了 FileDef.

在文件 filedef.cpp1374 行定义.

1375 {
1376  m_usingDirList.add(nd->qualifiedName(),nd);
1377  //printf("%p: FileDefImpl::addUsingDirective: %s:%d\n",this,qPrint(name()),usingDirList->count());
1378 }

引用了 LinkedRefMap< T, Hash, KeyEqual, Map >::add(), m_usingDirList , 以及 Definition::qualifiedName().

被这些函数引用 combineUsingRelations().

◆ anchor()

virtual QCString FileDefImpl::anchor ( ) const
inlinevirtual

Returns the anchor within a page where this item can be found

实现了 FileDef.

在文件 filedef.cpp69 行定义.

69 { return QCString(); }

◆ codeSymbolType()

virtual CodeSymbolType FileDefImpl::codeSymbolType ( ) const
inlinevirtual

Used for syntax highlighting symbol class

实现了 Definition.

在文件 filedef.cpp63 行定义.

63 { return CodeSymbolType::Default; }

引用了 Default.

◆ combineUsingRelations()

void FileDefImpl::combineUsingRelations ( )
virtual

实现了 FileDef.

在文件 filedef.cpp1506 行定义.

1507 {
1509  NamespaceDefSet visitedNamespaces;
1510  for (auto &nd : usingDirList)
1511  {
1513  if (ndm)
1514  {
1515  ndm->combineUsingRelations(visitedNamespaces);
1516  }
1517  }
1518 
1519  for (auto &nd : usingDirList)
1520  {
1521  // add used namespaces of namespace nd to this namespace
1522  for (const auto &und : nd->getUsedNamespaces())
1523  {
1524  addUsingDirective(und);
1525  }
1526  // add used classes of namespace nd to this namespace
1527  for (const auto &ucd : nd->getUsedClasses())
1528  {
1529  addUsingDeclaration(ucd);
1530  }
1531  }
1532 }

引用了 addUsingDeclaration(), addUsingDirective(), NamespaceDefMutable::combineUsingRelations(), m_usingDirList , 以及 toNamespaceDefMutable().

◆ computeAnchors()

void FileDefImpl::computeAnchors ( )
virtual

Compute the HTML anchor names for all members in the class

实现了 FileDef.

在文件 filedef.cpp273 行定义.

274 {
276  if (ml) ml->setAnchors();
277 }

引用了 getMemberList(), MemberListType_allMembersList , 以及 MemberList::setAnchors().

◆ countMembers()

void FileDefImpl::countMembers ( )
virtual

实现了 FileDef.

在文件 filedef.cpp1743 行定义.

1744 {
1745  for (auto &ml : m_memberLists)
1746  {
1747  ml->countDecMembers();
1748  ml->countDocMembers();
1749  }
1750  for (const auto &mg : m_memberGroups)
1751  {
1752  mg->countDecMembers();
1753  mg->countDocMembers();
1754  }
1755 }

引用了 m_memberGroups , 以及 m_memberLists.

◆ definitionType()

virtual DefType FileDefImpl::definitionType ( ) const
inlinevirtual

Use this for dynamic inspection of the type of the derived class

实现了 FileDef.

在文件 filedef.cpp62 行定义.

62 { return TypeFile; }

引用了 Definition::TypeFile.

◆ displayName()

virtual QCString FileDefImpl::displayName ( bool  includeScope = TRUE) const
inlinevirtual

Returns the name of the definition as it appears in the output

实现了 FileDef.

在文件 filedef.cpp66 行定义.

66 { return name(); }

引用了 name().

◆ distributeMemberGroupDocumentation()

void FileDefImpl::distributeMemberGroupDocumentation ( )
virtual

实现了 FileDef.

在文件 filedef.cpp279 行定义.

280 {
281  //printf("FileDefImpl::distributeMemberGroupDocumentation()\n");
282  for (const auto &mg : m_memberGroups)
283  {
284  mg->distributeMemberGroupDocumentation();
285  }
286 }

引用了 m_memberGroups.

◆ docName()

virtual const QCString& FileDefImpl::docName ( ) const
inlinevirtual

Returns the name as it is used in the documentation

实现了 FileDef.

在文件 filedef.cpp75 行定义.

75 { return m_docname; }

引用了 m_docname.

◆ endMemberDeclarations()

void FileDefImpl::endMemberDeclarations ( OutputList ol)
private

在文件 filedef.cpp695 行定义.

696 {
697  ol.endMemberSections();
698 }

引用了 OutputList::endMemberSections().

被这些函数引用 writeDocumentation().

◆ endMemberDocumentation()

void FileDefImpl::endMemberDocumentation ( OutputList ol)
private

在文件 filedef.cpp709 行定义.

710 {
711  if (Config_getBool(SEPARATE_MEMBER_PAGES))
712  {
715  }
716 }

引用了 Config_getBool, OutputList::enable(), FALSE, OutputGenerator::Html , 以及 Doxygen::suppressDocWarnings.

被这些函数引用 writeDocumentation().

◆ fileName()

virtual QCString FileDefImpl::fileName ( ) const
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp67 行定义.

67 { return m_fileName; }

引用了 m_fileName.

◆ fileVersion()

QCString FileDefImpl::fileVersion ( ) const
virtual

实现了 FileDef.

在文件 filedef.cpp1728 行定义.

1729 {
1730  return m_fileVersion;
1731 }

引用了 m_fileVersion.

◆ findSectionsInDocumentation()

void FileDefImpl::findSectionsInDocumentation ( )
virtual

实现了 FileDef.

在文件 filedef.cpp288 行定义.

289 {
292  for (const auto &mg : m_memberGroups)
293  {
294  mg->findSectionsInDocumentation(this);
295  }
296 
297  for (auto &ml : m_memberLists)
298  {
299  if (ml->listType()&MemberListType_declarationLists)
300  {
301  ml->findSectionsInDocumentation(this);
302  }
303  }
304 }

引用了 DefinitionMixin< FileDef >::briefDescription(), DefinitionMixin< FileDef >::docFile(), docFindSections(), DefinitionMixin< FileDef >::documentation(), m_memberGroups, m_memberLists , 以及 MemberListType_declarationLists.

◆ generateSourceFile()

bool FileDefImpl::generateSourceFile ( ) const
virtual

实现了 FileDef.

在文件 filedef.cpp1467 行定义.

1468 {
1469  static bool sourceBrowser = Config_getBool(SOURCE_BROWSER);
1470  static bool verbatimHeaders = Config_getBool(VERBATIM_HEADERS);
1471  return !isReference() &&
1472  (sourceBrowser ||
1473  (verbatimHeaders && guessSection(name())==Entry::HEADER_SEC)
1474  ) &&
1476 }

引用了 Config_getBool, guessSection(), Entry::HEADER_SEC, isDocumentationFile(), DefinitionMixin< FileDef >::isReference() , 以及 name().

被这些函数引用 writeSourceHeader() , 以及 writeSourceLink().

◆ getAllIncludeFilesRecursively()

void FileDefImpl::getAllIncludeFilesRecursively ( StringVector incFiles) const
virtual

实现了 FileDef.

在文件 filedef.cpp1717 行定义.

1718 {
1719  StringUnorderedSet includes;
1720  ::getAllIncludeFilesRecursively(includes,this,incFiles);
1721 }

◆ getClasses()

virtual const ClassLinkedRefMap& FileDefImpl::getClasses ( ) const
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp97 行定义.

97 { return m_classes; }

引用了 m_classes.

◆ getConcepts()

virtual const ConceptLinkedRefMap& FileDefImpl::getConcepts ( ) const
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp96 行定义.

96 { return m_concepts; }

引用了 m_concepts.

◆ getDirDef()

virtual DirDef* FileDefImpl::getDirDef ( ) const
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp86 行定义.

86 { return m_dir; }

引用了 m_dir.

被这些函数引用 writeDocumentation() , 以及 writeSourceHeader().

◆ getMemberGroups()

virtual const MemberGroupList& FileDefImpl::getMemberGroups ( ) const
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp94 行定义.

94 { return m_memberGroups; }

引用了 m_memberGroups.

◆ getMemberList()

MemberList * FileDefImpl::getMemberList ( MemberListType  lt) const
virtual

实现了 FileDef.

在文件 filedef.cpp1659 行定义.

1660 {
1661  for (auto &ml : m_memberLists)
1662  {
1663  if (ml->listType()==lt)
1664  {
1665  return ml.get();
1666  }
1667  }
1668  return 0;
1669 }

引用了 m_memberLists.

被这些函数引用 computeAnchors(), insertMember(), numDecMembers(), numDocMembers(), writeDocumentation(), writeMemberDeclarations(), writeMemberDocumentation(), writeQuickMemberLinks(), writeSummaryLinks() , 以及 writeTagFile().

◆ getMemberLists()

virtual const MemberLists& FileDefImpl::getMemberLists ( ) const
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp93 行定义.

93 { return m_memberLists; }

引用了 m_memberLists.

◆ getNamespaces()

virtual const NamespaceLinkedRefMap& FileDefImpl::getNamespaces ( ) const
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp95 行定义.

95 { return m_namespaces; }

引用了 m_namespaces.

◆ getOutputFileBase()

QCString FileDefImpl::getOutputFileBase ( ) const
virtual

Returns the base file name (without extension) of this definition. as it is referenced to/written to disk.

实现了 FileDef.

在文件 filedef.cpp1590 行定义.

1591 {
1592  return m_outputDiskName;
1593 }

引用了 m_outputDiskName.

被这些函数引用 addListReferences(), writeDocumentation(), writeSourceHeader() , 以及 writeTagFile().

◆ getPath()

virtual QCString FileDefImpl::getPath ( ) const
inlinevirtual

Returns the absolute path of this file.

实现了 FileDef.

在文件 filedef.cpp80 行定义.

80 { return m_path; }

引用了 m_path.

被这些函数引用 writeTagFile().

◆ getSourceDefinition()

const Definition * FileDefImpl::getSourceDefinition ( int  lineNr) const
virtual

实现了 FileDef.

在文件 filedef.cpp1359 行定义.

1360 {
1361  auto it = m_srcDefMap.find(lineNr);
1362  //printf("%s::getSourceDefinition(%d)=%s\n",qPrint(name()),lineNr,it!=m_srcDefMap.end()?qPrint(it->second->name()):"none");
1363  return it!=m_srcDefMap.end() ? it->second : 0;
1364 }

引用了 m_srcDefMap.

◆ getSourceFileBase()

QCString FileDefImpl::getSourceFileBase ( ) const
virtual

Returns the name of the source listing of this definition.

实现了 FileDef.

在文件 filedef.cpp1578 行定义.

1579 {
1580  if (Htags::useHtags)
1581  {
1582  return Htags::path2URL(m_filePath);
1583  }
1584  else
1585  {
1586  return m_outputDiskName+"_source";
1587  }
1588 }

引用了 m_filePath, m_outputDiskName, Htags::path2URL() , 以及 Htags::useHtags.

被这些函数引用 includeName(), writeDetailedDescription() , 以及 writeSourceHeader().

◆ getSourceMember()

const MemberDef * FileDefImpl::getSourceMember ( int  lineNr) const
virtual

实现了 FileDef.

在文件 filedef.cpp1366 行定义.

1367 {
1368  auto it = m_srcMemberMap.find(lineNr);
1369  //printf("%s::getSourceMember(%d)=%s\n",qPrint(name()),lineNr,it!=m_srcMemberMap.end()?qPrint(it->second->name()):"none");
1370  return it!=m_srcMemberMap.end() ? it->second : 0;
1371 }

引用了 m_srcMemberMap.

◆ getUsedClasses()

virtual LinkedRefMap<const ClassDef> FileDefImpl::getUsedClasses ( ) const
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp88 行定义.

88 { return m_usingDeclList; }

引用了 m_usingDeclList.

◆ getUsedNamespaces()

LinkedRefMap< const NamespaceDef > FileDefImpl::getUsedNamespaces ( ) const
virtual

实现了 FileDef.

在文件 filedef.cpp1380 行定义.

1381 {
1382  //printf("%p: FileDefImpl::getUsedNamespace: %s:%d\n",this,qPrint(name()),usingDirList?usingDirList->count():0);
1383  return m_usingDirList;
1384 }

引用了 m_usingDirList.

◆ getVersion()

virtual QCString FileDefImpl::getVersion ( ) const
inlinevirtual

Returns version of this file.

实现了 FileDef.

在文件 filedef.cpp81 行定义.

81 { return m_fileVersion; }

引用了 m_fileVersion.

◆ hasDetailedDescription()

bool FileDefImpl::hasDetailedDescription ( ) const
virtual

实现了 FileDef.

在文件 filedef.cpp306 行定义.

307 {
308  static bool repeatBrief = Config_getBool(REPEAT_BRIEF);
309  static bool sourceBrowser = Config_getBool(SOURCE_BROWSER);
310  return ((!briefDescription().isEmpty() && repeatBrief) ||
311  !documentation().stripWhiteSpace().isEmpty() || // avail empty section
312  (sourceBrowser && getStartBodyLine()!=-1 && getBodyDef())
313  );
314 }

引用了 DefinitionMixin< FileDef >::briefDescription(), Config_getBool, DefinitionMixin< FileDef >::documentation(), DefinitionMixin< FileDef >::getBodyDef() , 以及 DefinitionMixin< FileDef >::getStartBodyLine().

被这些函数引用 writeDetailedDescription().

◆ includedByDependencyGraphFileName()

QCString FileDefImpl::includedByDependencyGraphFileName ( ) const
virtual

实现了 FileDef.

在文件 filedef.cpp1738 行定义.

1739 {
1740  return m_inclByDepFileName;
1741 }

引用了 m_inclByDepFileName.

◆ includedByFileList()

virtual const IncludeInfoList& FileDefImpl::includedByFileList ( ) const
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp90 行定义.

90 { return m_includedByList; }

引用了 m_includedByList.

◆ includeDependencyGraphFileName()

QCString FileDefImpl::includeDependencyGraphFileName ( ) const
virtual

实现了 FileDef.

在文件 filedef.cpp1733 行定义.

1734 {
1735  return m_inclDepFileName;
1736 }

引用了 m_inclDepFileName.

◆ includeFileList()

virtual const IncludeInfoList& FileDefImpl::includeFileList ( ) const
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp89 行定义.

89 { return m_includeList; }

引用了 m_includeList.

◆ includeName()

QCString FileDefImpl::includeName ( ) const
virtual

Returns the name of the verbatim copy of this file (if any).

实现了 FileDef.

在文件 filedef.cpp1596 行定义.

1597 {
1598  return getSourceFileBase();
1599 }

引用了 getSourceFileBase().

被这些函数引用 writeSourceLink().

◆ insertClass()

void FileDefImpl::insertClass ( const ClassDef cd)
virtual

Adds compound definition cd to the list of all compounds of this file

实现了 FileDef.

在文件 filedef.cpp1301 行定义.

1302 {
1303  if (cd->isHidden()) return;
1304 
1305  ClassLinkedRefMap &list = m_classes;
1306 
1307  if (Config_getBool(OPTIMIZE_OUTPUT_SLICE))
1308  {
1309  if (cd->compoundType()==ClassDef::Interface)
1310  {
1311  list = m_interfaces;
1312  }
1313  else if (cd->compoundType()==ClassDef::Struct)
1314  {
1315  list = m_structs;
1316  }
1317  else if (cd->compoundType()==ClassDef::Exception)
1318  {
1319  list = m_exceptions;
1320  }
1321  }
1322 
1323  list.add(cd->name(),cd);
1324 }

引用了 LinkedRefMap< T, Hash, KeyEqual, Map >::add(), ClassDef::compoundType(), Config_getBool, ClassDef::Exception, ClassDef::Interface, Definition::isHidden(), m_classes, m_exceptions, m_interfaces, m_structs, Definition::name() , 以及 ClassDef::Struct.

◆ insertConcept()

void FileDefImpl::insertConcept ( const ConceptDef cd)
virtual

实现了 FileDef.

在文件 filedef.cpp1326 行定义.

1327 {
1328  if (cd->isHidden()) return;
1329  m_concepts.add(cd->name(),cd);
1330 }

引用了 LinkedRefMap< T, Hash, KeyEqual, Map >::add(), Definition::isHidden(), m_concepts , 以及 Definition::name().

◆ insertMember()

void FileDefImpl::insertMember ( MemberDef md)
virtual

Adds member definition md to the list of all members of this file

实现了 FileDef.

在文件 filedef.cpp1239 行定义.

1240 {
1241  if (md->isHidden()) return;
1242  //printf("%s:FileDefImpl::insertMember(%s (=%p) list has %d elements)\n",
1243  // qPrint(name()),qPrint(md->name()),md,allMemberList.count());
1245  if (allMemberList && allMemberList->contains(md))
1246  {
1247  return;
1248  }
1249 
1250  if (allMemberList==0)
1251  {
1252  m_memberLists.emplace_back(std::make_unique<MemberList>(MemberListType_allMembersList,MemberListContainer::File));
1253  allMemberList = m_memberLists.back().get();
1254  }
1255  allMemberList->push_back(md);
1256  //::addFileMemberNameToIndex(md);
1257  switch (md->memberType())
1258  {
1259  case MemberType_Variable:
1260  case MemberType_Property:
1263  break;
1264  case MemberType_Function:
1267  break;
1268  case MemberType_Typedef:
1271  break;
1272  case MemberType_Sequence:
1275  break;
1276  case MemberType_Dictionary:
1279  break;
1283  break;
1284  case MemberType_EnumValue: // enum values are shown inside their enums
1285  break;
1286  case MemberType_Define:
1289  break;
1290  default:
1291  err("FileDefImpl::insertMembers(): "
1292  "member '%s' with class scope '%s' inserted in file scope '%s'!\n",
1293  qPrint(md->name()),
1294  md->getClassDef() ? qPrint(md->getClassDef()->name()) : "<global>",
1295  qPrint(name()));
1296  }
1297  //addMemberToGroup(md,groupId);
1298 }

引用了 addMemberToList(), MemberVector::contains(), err(), File, MemberLists::get(), MemberDef::getClassDef(), getMemberList(), Definition::isHidden(), m_memberLists, MemberListType_allMembersList, MemberListType_decDefineMembers, MemberListType_decDictionaryMembers, MemberListType_decEnumMembers, MemberListType_decFuncMembers, MemberListType_decSequenceMembers, MemberListType_decTypedefMembers, MemberListType_decVarMembers, MemberListType_docDefineMembers, MemberListType_docDictionaryMembers, MemberListType_docEnumMembers, MemberListType_docFuncMembers, MemberListType_docSequenceMembers, MemberListType_docTypedefMembers, MemberListType_docVarMembers, MemberDef::memberType(), MemberType_Define, MemberType_Dictionary, MemberType_Enumeration, MemberType_EnumValue, MemberType_Function, MemberType_Property, MemberType_Sequence, MemberType_Typedef, MemberType_Variable, name(), Definition::name(), MemberVector::push_back() , 以及 qPrint().

◆ insertNamespace()

void FileDefImpl::insertNamespace ( const NamespaceDef nd)
virtual

Adds namespace definition nd to the list of all compounds of this file

实现了 FileDef.

在文件 filedef.cpp1333 行定义.

1334 {
1335  if (nd->isHidden()) return;
1336  m_namespaces.add(nd->name(),nd);
1337 }

引用了 LinkedRefMap< T, Hash, KeyEqual, Map >::add(), Definition::isHidden(), m_namespaces , 以及 Definition::name().

◆ isDocumentationFile()

bool FileDefImpl::isDocumentationFile ( ) const
virtual

实现了 FileDef.

在文件 filedef.cpp1534 行定义.

1535 {
1536  return name().right(4)==".doc" ||
1537  name().right(4)==".txt" ||
1538  name().right(4)==".dox" ||
1539  name().right(3)==".md" ||
1540  name().right(9)==".markdown" ||
1542 }

引用了 getFileNameExtension(), getLanguageFromFileName(), name(), QCString::right() , 以及 SrcLangExt_Markdown.

被这些函数引用 generateSourceFile() , 以及 writeSourceHeader().

◆ isIncluded()

bool FileDefImpl::isIncluded ( const QCString name) const
virtual

实现了 FileDef.

在文件 filedef.cpp1461 行定义.

1462 {
1463  if (name.isEmpty()) return FALSE;
1464  return m_includeMap.find(name.str())!=m_includeMap.end();
1465 }

引用了 FALSE, QCString::isEmpty(), m_includeMap, name() , 以及 QCString::str().

◆ isLinkable()

virtual bool FileDefImpl::isLinkable ( ) const
inlinevirtual

Returns TRUE iff it is possible to link to this item. This can be a link to another project imported via a tag file.

实现了 FileDef.

在文件 filedef.cpp83 行定义.

83 { return isLinkableInProject() || isReference(); }

引用了 isLinkableInProject() , 以及 DefinitionMixin< FileDef >::isReference().

被这些函数引用 writeSourceHeader().

◆ isLinkableInProject()

bool FileDefImpl::isLinkableInProject ( ) const
virtual

Returns TRUE iff it is possible to link to this item within this project.

实现了 FileDef.

在文件 filedef.cpp1695 行定义.

1696 {
1697  static bool showFiles = Config_getBool(SHOW_FILES);
1698  return hasDocumentation() && !isReference() && (showFiles || isLinkableViaGroup());
1699 }

引用了 Config_getBool, DefinitionMixin< FileDef >::hasDocumentation(), DefinitionMixin< FileDef >::isLinkableViaGroup() , 以及 DefinitionMixin< FileDef >::isReference().

被这些函数引用 isLinkable().

◆ isSource()

virtual bool FileDefImpl::isSource ( ) const
inlinevirtual

Returns TRUE if this file is a source file.

实现了 FileDef.

在文件 filedef.cpp76 行定义.

76 { return m_isSource; }

引用了 m_isSource.

◆ name()

QCString FileDefImpl::name ( ) const
virtual

Returns the unique file name (this may include part of the path).

实现了 FileDef.

在文件 filedef.cpp1339 行定义.

1340 {
1341  if (Config_getBool(FULL_PATH_NAMES))
1342  return m_fileName;
1343  else
1344  return DefinitionMixin::name();
1345 }

引用了 Config_getBool, m_fileName , 以及 DefinitionMixin< Base >::name().

被这些函数引用 addListReferences(), displayName(), FileDefImpl(), generateSourceFile(), insertMember(), isDocumentationFile(), isIncluded(), setDiskName(), title(), writeDetailedDescription(), writeDocumentation(), writeIncludedByGraph(), writeIncludeGraph(), writeMemberDocumentation(), writeMemberPages(), writeSourceHeader() , 以及 writeTagFile().

◆ numDecMembers()

int FileDefImpl::numDecMembers ( ) const
virtual

实现了 FileDef.

在文件 filedef.cpp1763 行定义.

1764 {
1766  return ml ? ml->numDecMembers() : 0;
1767 }

引用了 getMemberList(), MemberListType_allMembersList , 以及 MemberList::numDecMembers().

◆ numDocMembers()

int FileDefImpl::numDocMembers ( ) const
virtual

实现了 FileDef.

在文件 filedef.cpp1757 行定义.

1758 {
1760  return ml ? ml->numDocMembers() : 0;
1761 }

引用了 getMemberList(), MemberListType_allMembersList , 以及 MemberList::numDocMembers().

◆ packageDef()

virtual PackageDef* FileDefImpl::packageDef ( ) const
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp85 行定义.

85 { return m_package; }

引用了 m_package.

◆ parseSource()

void FileDefImpl::parseSource ( ClangTUParser clangParser)
virtual

实现了 FileDef.

在文件 filedef.cpp1192 行定义.

1193 {
1194  static bool filterSourceFiles = Config_getBool(FILTER_SOURCE_FILES);
1195  DevNullCodeDocInterface devNullIntf;
1196 #if USE_LIBCLANG
1197  if (Doxygen::clangAssistedParsing && clangParser &&
1199  {
1200  clangParser->switchToFile(this);
1201  clangParser->writeSources(devNullIntf,this);
1202  }
1203  else
1204 #endif
1205  {
1207  intf->resetCodeParserState();
1208  intf->parseCode(
1209  devNullIntf,QCString(),
1210  fileToString(absFilePath(),filterSourceFiles,TRUE),
1211  getLanguage(),
1212  FALSE,QCString(),this
1213  );
1214  }
1215 }

引用了 absFilePath(), Doxygen::clangAssistedParsing, Config_getBool, FALSE, fileToString(), ParserManager::getCodeParser(), DefinitionMixin< FileDef >::getDefFileExtension(), DefinitionMixin< FileDef >::getLanguage(), Doxygen::parserManager, SrcLangExt_Cpp, SrcLangExt_ObjC, ClangTUParser::switchToFile(), TRUE , 以及 ClangTUParser::writeSources().

◆ setDirDef()

virtual void FileDefImpl::setDirDef ( DirDef dd)
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp122 行定义.

122 { m_dir=dd; }

引用了 m_dir.

◆ setDiskName()

void FileDefImpl::setDiskName ( const QCString name)
virtual

实现了 FileDef.

在文件 filedef.cpp256 行定义.

257 {
258  if (isReference())
259  {
261  m_inclDepFileName = name+"_incl";
262  m_inclByDepFileName = name+"_dep_incl";
263  }
264  else
265  {
269  }
270 }

引用了 convertNameToFile(), DefinitionMixin< FileDef >::isReference(), m_inclByDepFileName, m_inclDepFileName, m_outputDiskName , 以及 name().

被这些函数引用 FileDefImpl().

◆ setPackageDef()

virtual void FileDefImpl::setPackageDef ( PackageDef *  pd)
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp121 行定义.

121 { m_package=pd; }

引用了 m_package.

◆ sortMemberLists()

void FileDefImpl::sortMemberLists ( )
virtual

实现了 FileDef.

在文件 filedef.cpp1620 行定义.

1621 {
1622  for (auto &ml : m_memberLists)
1623  {
1624  if (ml->needsSorting()) { ml->sort(); ml->setNeedsSorting(FALSE); }
1625  }
1626 
1627  for (const auto &mg : m_memberGroups)
1628  {
1629  MemberList &mlg = const_cast<MemberList&>(mg->members());
1630  if (mlg.needsSorting()) { mlg.sort(); mlg.setNeedsSorting(FALSE); }
1631  }
1632 
1633  std::sort(m_includedByList.begin(),m_includedByList.end(),
1634  [](const auto &fi1,const auto &fi2) { return fi1.includeName < fi2.includeName; });
1635 
1636  if (Config_getBool(SORT_BRIEF_DOCS))
1637  {
1638  auto classComp = [](const ClassLinkedRefMap::Ptr &c1,const ClassLinkedRefMap::Ptr &c2)
1639  {
1640  return Config_getBool(SORT_BY_SCOPE_NAME) ?
1641  qstricmp(c1->name(), c2->name())<0 :
1642  qstricmp(c1->className(), c2->className())<0;
1643  };
1644 
1645  std::sort(m_classes.begin(), m_classes.end(), classComp);
1646  std::sort(m_interfaces.begin(),m_interfaces.end(),classComp);
1647  std::sort(m_structs.begin(), m_structs.end(), classComp);
1648  std::sort(m_exceptions.begin(),m_exceptions.end(),classComp);
1649 
1650  auto namespaceComp = [](const NamespaceLinkedRefMap::Ptr &n1,const NamespaceLinkedRefMap::Ptr &n2)
1651  {
1652  return qstricmp(n1->name(),n2->name())<0;
1653  };
1654 
1655  std::sort(m_namespaces.begin(),m_namespaces.end(),namespaceComp);
1656  }
1657 }

引用了 LinkedRefMap< T, Hash, KeyEqual, Map >::begin(), ClassDef::className(), Config_getBool, LinkedRefMap< T, Hash, KeyEqual, Map >::end(), FALSE, m_classes, m_exceptions, m_includedByList, m_interfaces, m_memberGroups, m_memberLists, m_namespaces, m_structs, Definition::name(), MemberList::needsSorting(), qstricmp(), MemberList::setNeedsSorting() , 以及 MemberVector::sort().

◆ startMemberDeclarations()

void FileDefImpl::startMemberDeclarations ( OutputList ol)
private

在文件 filedef.cpp690 行定义.

691 {
692  ol.startMemberSections();
693 }

引用了 OutputList::startMemberSections().

被这些函数引用 writeDocumentation().

◆ startMemberDocumentation()

void FileDefImpl::startMemberDocumentation ( OutputList ol)
private

在文件 filedef.cpp700 行定义.

701 {
702  if (Config_getBool(SEPARATE_MEMBER_PAGES))
703  {
706  }
707 }

引用了 Config_getBool, OutputList::disable(), OutputGenerator::Html, Doxygen::suppressDocWarnings , 以及 TRUE.

被这些函数引用 writeDocumentation().

◆ subGrouping()

virtual bool FileDefImpl::subGrouping ( ) const
inlinevirtual

实现了 FileDef.

在文件 filedef.cpp101 行定义.

101 { return m_subGrouping; }

引用了 m_subGrouping.

◆ title()

◆ writeAuthorSection()

◆ writeBriefDescription()

void FileDefImpl::writeBriefDescription ( OutputList ol)
private

在文件 filedef.cpp477 行定义.

478 {
479  if (hasBriefDescription())
480  {
481  std::unique_ptr<IDocParser> parser { createDocParser() };
482  std::unique_ptr<DocRoot> rootNode { validatingParseDoc(*parser.get(),
483  briefFile(),briefLine(),this,0,
485  QCString(),TRUE,FALSE,Config_getBool(MARKDOWN_SUPPORT)) };
486 
487  if (rootNode && !rootNode->isEmpty())
488  {
489  ol.startParagraph();
490  ol.pushGeneratorState();
492  ol.writeString(" - ");
493  ol.popGeneratorState();
494  ol.writeDoc(rootNode.get(),this,0);
495  ol.pushGeneratorState();
497  ol.writeString(" \n");
499 
500  if (Config_getBool(REPEAT_BRIEF) ||
501  !documentation().isEmpty()
502  )
503  {
505  ol.startTextLink(QCString(),"details");
507  ol.endTextLink();
508  }
509  ol.popGeneratorState();
510  ol.endParagraph();
511  }
512  }
513  ol.writeSynopsis();
514 }

引用了 DefinitionMixin< FileDef >::briefDescription(), DefinitionMixin< FileDef >::briefFile(), DefinitionMixin< FileDef >::briefLine(), Config_getBool, createDocParser(), OutputList::disable(), OutputList::disableAllBut(), DefinitionMixin< FileDef >::documentation(), OutputList::enable(), OutputList::endParagraph(), OutputList::endTextLink(), FALSE, DefinitionMixin< FileDef >::hasBriefDescription(), OutputGenerator::Html, OutputGenerator::Man, OutputList::parseText(), OutputList::popGeneratorState(), OutputList::pushGeneratorState(), OutputGenerator::RTF, OutputList::startParagraph(), OutputList::startTextLink(), theTranslator, Translator::trMore(), TRUE, validatingParseDoc(), OutputList::writeDoc(), OutputList::writeString() , 以及 OutputList::writeSynopsis().

被这些函数引用 writeDocumentation().

◆ writeClassDeclarations()

void FileDefImpl::writeClassDeclarations ( OutputList ol,
const QCString title,
const ClassLinkedRefMap list 
)
private

在文件 filedef.cpp665 行定义.

666 {
667  // write list of classes
668  list.writeDeclaration(ol,0,title,FALSE);
669 }

引用了 FALSE, title() , 以及 ClassLinkedRefMap::writeDeclaration().

被这些函数引用 writeDocumentation().

◆ writeClassesToTagFile()

void FileDefImpl::writeClassesToTagFile ( TextStream t,
const ClassLinkedRefMap list 
)
private

在文件 filedef.cpp516 行定义.

517 {
518  for (const auto &cd : list)
519  {
520  if (cd->isLinkableInProject())
521  {
522  tagFile << " <class kind=\"" << cd->compoundTypeString() <<
523  "\">" << convertToXML(cd->name()) << "</class>\n";
524  }
525  }
526 }

引用了 convertToXML().

被这些函数引用 writeTagFile().

◆ writeConcepts()

void FileDefImpl::writeConcepts ( OutputList ol,
const QCString title 
)
private

在文件 filedef.cpp671 行定义.

672 {
673  // write list of classes
675 }

引用了 FALSE, m_concepts, title() , 以及 ConceptLinkedRefMap::writeDeclaration().

被这些函数引用 writeDocumentation().

◆ writeDetailedDescription()

void FileDefImpl::writeDetailedDescription ( OutputList ol,
const QCString title 
)
private

在文件 filedef.cpp414 行定义.

415 {
417  {
418  ol.pushGeneratorState();
420  ol.writeRuler();
421  ol.popGeneratorState();
422  ol.pushGeneratorState();
424  ol.writeAnchor(QCString(),"details");
425  ol.popGeneratorState();
426  ol.startGroupHeader();
427  ol.parseText(title);
428  ol.endGroupHeader();
429 
430  ol.startTextBlock();
431  if (!briefDescription().isEmpty() && Config_getBool(REPEAT_BRIEF))
432  {
434  QCString(),FALSE,FALSE,Config_getBool(MARKDOWN_SUPPORT));
435  }
436  if (!briefDescription().isEmpty() && Config_getBool(REPEAT_BRIEF) &&
437  !documentation().isEmpty())
438  {
439  ol.pushGeneratorState();
442  // ol.newParagraph(); // FIXME:PARA
443  ol.enableAll();
446  ol.writeString("\n\n");
447  ol.popGeneratorState();
448  }
449  if (!documentation().isEmpty())
450  {
451  ol.generateDoc(docFile(),docLine(),this,0,documentation()+"\n",TRUE,FALSE,
452  QCString(),FALSE,FALSE,Config_getBool(MARKDOWN_SUPPORT));
453  }
454  //printf("Writing source ref for file %s\n",qPrint(name()));
455  if (Config_getBool(SOURCE_BROWSER))
456  {
457  ol.startParagraph("definition");
459  int fileMarkerPos = refText.find("@0");
460  if (fileMarkerPos!=-1) // should always pass this.
461  {
462  ol.parseText(refText.left(fileMarkerPos)); //text left from marker 1
464  ol.parseText(refText.right(
465  refText.length()-fileMarkerPos-2)); // text right from marker 2
466  }
467  else
468  {
469  err("translation error: invalid marker in trDefinedInSourceFile()\n");
470  }
471  ol.endParagraph();
472  }
473  ol.endTextBlock();
474  }
475 }

引用了 DefinitionMixin< FileDef >::briefDescription(), DefinitionMixin< FileDef >::briefFile(), DefinitionMixin< FileDef >::briefLine(), Config_getBool, OutputList::disable(), OutputList::disableAllBut(), DefinitionMixin< FileDef >::docFile(), DefinitionMixin< FileDef >::docLine(), DefinitionMixin< FileDef >::documentation(), OutputList::enable(), OutputList::enableAll(), OutputList::endGroupHeader(), OutputList::endParagraph(), OutputList::endTextBlock(), err(), FALSE, QCString::find(), OutputList::generateDoc(), getSourceFileBase(), hasDetailedDescription(), OutputGenerator::Html, OutputGenerator::Latex, QCString::left(), QCString::length(), OutputGenerator::Man, name(), OutputList::parseText(), OutputList::popGeneratorState(), OutputList::pushGeneratorState(), QCString::right(), OutputGenerator::RTF, OutputList::startGroupHeader(), OutputList::startParagraph(), OutputList::startTextBlock(), theTranslator, title(), Translator::trDefinedInSourceFile(), TRUE, OutputList::writeAnchor(), OutputList::writeObjectLink(), OutputList::writeRuler() , 以及 OutputList::writeString().

被这些函数引用 writeDocumentation().

◆ writeDocumentation()

void FileDefImpl::writeDocumentation ( OutputList ol)
virtual

Write the documentation page for this file to the file of output generators ol.

实现了 FileDef.

在文件 filedef.cpp814 行定义.

815 {
816  static bool generateTreeView = Config_getBool(GENERATE_TREEVIEW);
817  //funcList->countDecMembers();
818 
819  //QCString fn = name();
820  //if (Config_getBool(FULL_PATH_NAMES))
821  //{
822  // fn.prepend(stripFromPath(getPath()));
823  //}
824 
825  //printf("WriteDocumentation diskname=%s\n",qPrint(diskname));
826 
827  QCString versionTitle;
828  if (!m_fileVersion.isEmpty())
829  {
830  versionTitle=("("+m_fileVersion+")");
831  }
832  QCString title = m_docname+versionTitle;
834 
835  if (getDirDef())
836  {
837  startFile(ol,getOutputFileBase(),name(),pageTitle,HLI_FileVisible,!generateTreeView);
838  if (!generateTreeView)
839  {
841  ol.endQuickIndices();
842  }
843  QCString pageTitleShort=theTranslator->trFileReference(name());
844  startTitle(ol,getOutputFileBase(),this);
845  ol.pushGeneratorState();
847  ol.parseText(pageTitleShort); // Html only
848  ol.enableAll();
850  ol.parseText(pageTitle); // other output formats
851  ol.popGeneratorState();
852  addGroupListToTitle(ol,this);
854  }
855  else
856  {
857  startFile(ol,getOutputFileBase(),name(),pageTitle,HLI_FileVisible,!generateTreeView);
858  if (!generateTreeView)
859  {
860  ol.endQuickIndices();
861  }
862  startTitle(ol,getOutputFileBase(),this);
863  ol.parseText(pageTitle);
864  addGroupListToTitle(ol,this);
866  }
867 
868  ol.startContents();
869 
870  if (!m_fileVersion.isEmpty())
871  {
873  ol.startProjectNumber();
874  ol.docify(versionTitle);
875  ol.endProjectNumber();
876  ol.enableAll();
877  }
878 
879  //---------------------------------------- start flexible part -------------------------------
880 
881  SrcLangExt lang = getLanguage();
882  for (const auto &lde : LayoutDocManager::instance().docEntries(LayoutDocManager::File))
883  {
884  switch (lde->kind())
885  {
888  break;
891  break;
893  writeIncludeFiles(ol);
894  break;
896  writeIncludeGraph(ol);
897  break;
900  break;
902  writeSourceLink(ol);
903  break;
905  {
906  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
907  writeClassDeclarations(ol,ls->title(lang),m_classes);
908  }
909  break;
911  {
912  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
914  }
915  break;
917  {
918  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
919  writeClassDeclarations(ol,ls->title(lang),m_structs);
920  }
921  break;
923  {
924  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
926  }
927  break;
929  {
930  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
931  writeConcepts(ol,ls->title(lang));
932  }
933  break;
935  {
936  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
937  writeNamespaceDeclarations(ol,ls->title(lang),false);
938  }
939  break;
941  {
942  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
943  writeNamespaceDeclarations(ol,ls->title(lang),true);
944  }
945  break;
947  writeMemberGroups(ol);
948  break;
950  {
951  const LayoutDocEntryMemberDecl *lmd = (const LayoutDocEntryMemberDecl*)lde.get();
952  writeMemberDeclarations(ol,lmd->type,lmd->title(lang));
953  }
954  break;
957  break;
959  {
960  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
961  writeDetailedDescription(ol,ls->title(lang));
962  }
963  break;
966  break;
968  writeInlineClasses(ol);
969  break;
971  {
972  const LayoutDocEntryMemberDef *lmd = (const LayoutDocEntryMemberDef*)lde.get();
973  writeMemberDocumentation(ol,lmd->type,lmd->title(lang));
974  }
975  break;
978  break;
980  writeAuthorSection(ol);
981  break;
1010  err("Internal inconsistency: member %d should not be part of "
1011  "LayoutDocManager::File entry list\n",lde->kind());
1012  break;
1013  }
1014  }
1015 
1016  //---------------------------------------- end flexible part -------------------------------
1017 
1018  ol.endContents();
1019 
1020  endFileWithNavPath(this,ol);
1021 
1022  if (Config_getBool(SEPARATE_MEMBER_PAGES))
1023  {
1025  if (ml) ml->sort();
1026  writeMemberPages(ol);
1027  }
1028 }

引用了 addGroupListToTitle(), LayoutDocEntry::AuthorSection, LayoutDocEntry::BriefDesc, LayoutDocEntry::ClassAllMembersLink, LayoutDocEntry::ClassCollaborationGraph, LayoutDocEntry::ClassIncludes, LayoutDocEntry::ClassInheritanceGraph, LayoutDocEntry::ClassInlineClasses, LayoutDocEntry::ClassNestedClasses, LayoutDocEntry::ClassUsedFiles, LayoutDocEntry::ConceptDefinition, Config_getBool, LayoutDocEntry::DetailedDesc, LayoutDocEntry::DirFiles, LayoutDocEntry::DirGraph, LayoutDocEntry::DirSubDirs, OutputList::disable(), OutputList::disableAllBut(), OutputList::docify(), OutputList::enableAll(), OutputList::endContents(), endFileWithNavPath(), endMemberDeclarations(), endMemberDocumentation(), OutputList::endProjectNumber(), OutputList::endQuickIndices(), endTitle(), err(), LayoutDocManager::File, LayoutDocEntry::FileClasses, LayoutDocEntry::FileConcepts, LayoutDocEntry::FileConstantGroups, LayoutDocEntry::FileExceptions, LayoutDocEntry::FileIncludedByGraph, LayoutDocEntry::FileIncludeGraph, LayoutDocEntry::FileIncludes, LayoutDocEntry::FileInlineClasses, LayoutDocEntry::FileInterfaces, LayoutDocEntry::FileNamespaces, LayoutDocEntry::FileSourceLink, LayoutDocEntry::FileStructs, getDirDef(), DefinitionMixin< FileDef >::getLanguage(), getMemberList(), getOutputFileBase(), LayoutDocEntry::GroupClasses, LayoutDocEntry::GroupConcepts, LayoutDocEntry::GroupDirs, LayoutDocEntry::GroupFiles, LayoutDocEntry::GroupGraph, LayoutDocEntry::GroupInlineClasses, LayoutDocEntry::GroupNamespaces, LayoutDocEntry::GroupNestedGroups, LayoutDocEntry::GroupPageDocs, HLI_FileVisible, OutputGenerator::Html, LayoutDocManager::instance(), QCString::isEmpty(), m_classes, m_docname, m_exceptions, m_fileVersion, m_interfaces, m_structs, LayoutDocEntry::MemberDecl, LayoutDocEntry::MemberDeclEnd, LayoutDocEntry::MemberDeclStart, LayoutDocEntry::MemberDef, LayoutDocEntry::MemberDefEnd, LayoutDocEntry::MemberDefStart, LayoutDocEntry::MemberGroups, MemberListType_allMembersList, name(), LayoutDocEntry::NamespaceClasses, LayoutDocEntry::NamespaceConcepts, LayoutDocEntry::NamespaceExceptions, LayoutDocEntry::NamespaceInlineClasses, LayoutDocEntry::NamespaceInterfaces, LayoutDocEntry::NamespaceNestedConstantGroups, LayoutDocEntry::NamespaceNestedNamespaces, LayoutDocEntry::NamespaceStructs, OutputList::parseText(), OutputList::popGeneratorState(), OutputList::pushGeneratorState(), MemberVector::sort(), OutputList::startContents(), startFile(), startMemberDeclarations(), startMemberDocumentation(), OutputList::startProjectNumber(), startTitle(), theTranslator, LayoutDocEntrySection::title(), title(), LayoutDocEntryMemberDecl::title(), LayoutDocEntryMemberDef::title(), Translator::trFileReference(), LayoutDocEntryMemberDecl::type, LayoutDocEntryMemberDef::type, writeAuthorSection(), writeBriefDescription(), writeClassDeclarations(), writeConcepts(), writeDetailedDescription(), writeIncludedByGraph(), writeIncludeFiles(), writeIncludeGraph(), writeInlineClasses(), writeMemberDeclarations(), writeMemberDocumentation(), writeMemberGroups(), writeMemberPages(), writeNamespaceDeclarations(), DefinitionMutable::writeNavigationPath() , 以及 writeSourceLink().

◆ writeIncludedByGraph()

void FileDefImpl::writeIncludedByGraph ( OutputList ol)
private

在文件 filedef.cpp617 行定义.

618 {
619  if (Config_getBool(HAVE_DOT) /*&& Config_getBool(INCLUDED_BY_GRAPH)*/)
620  {
621  //printf("Graph for file %s\n",qPrint(name()));
622  DotInclDepGraph incDepGraph(this,TRUE);
623  if (incDepGraph.isTooBig())
624  {
625  warn_uncond("Included by graph for '%s' not generated, too many nodes (%d), threshold is %d. Consider increasing DOT_GRAPH_MAX_NODES.\n",
626  qPrint(name()), incDepGraph.numNodes(), Config_getInt(DOT_GRAPH_MAX_NODES));
627  }
628  else if (!incDepGraph.isTrivial())
629  {
630  ol.startTextBlock();
632  ol.startInclDepGraph();
634  ol.endInclDepGraph(incDepGraph);
635  ol.enableAll();
636  ol.endTextBlock(TRUE);
637  }
638  //incDepGraph.writeGraph(Config_getString(HTML_OUTPUT),fd->getOutputFileBase());
639  }
640 }

引用了 Config_getBool, Config_getInt, OutputList::disable(), OutputList::enableAll(), OutputList::endInclDepGraph(), OutputList::endTextBlock(), DotInclDepGraph::isTooBig(), DotInclDepGraph::isTrivial(), OutputGenerator::Man, name(), DotInclDepGraph::numNodes(), OutputList::parseText(), qPrint(), OutputList::startInclDepGraph(), OutputList::startTextBlock(), theTranslator, Translator::trInclByDepGraph(), TRUE , 以及 warn_uncond().

被这些函数引用 writeDocumentation().

◆ writeIncludeFiles()

void FileDefImpl::writeIncludeFiles ( OutputList ol)
private

在文件 filedef.cpp528 行定义.

529 {
530  if (!m_includeList.empty())
531  {
532  ol.startTextBlock(TRUE);
533  for (const auto &ii : m_includeList)
534  {
535  const FileDef *fd=ii.fileDef;
536  bool isIDLorJava = FALSE;
537  if (fd)
538  {
539  SrcLangExt lang = fd->getLanguage();
540  isIDLorJava = lang==SrcLangExt_IDL || lang==SrcLangExt_Java;
541  }
542  ol.startTypewriter();
543  if (isIDLorJava) // IDL/Java include
544  {
545  ol.docify("import ");
546  }
547  else if (ii.imported) // Objective-C include
548  {
549  ol.docify("#import ");
550  }
551  else // C/C++ include
552  {
553  ol.docify("#include ");
554  }
555  if (ii.local || isIDLorJava)
556  ol.docify("\"");
557  else
558  ol.docify("<");
560  ol.docify(ii.includeName);
561  ol.enableAll();
563 
564  // Here we use the include file name as it appears in the file.
565  // we could also we the name as it is used within doxygen,
566  // then we should have used fd->docName() instead of ii->includeName
567  if (fd && fd->isLinkable())
568  {
569  ol.writeObjectLink(fd->getReference(),
570  fd->generateSourceFile() ? fd->includeName() : fd->getOutputFileBase(),
571  QCString(),ii.includeName);
572  }
573  else
574  {
575  ol.docify(ii.includeName);
576  }
577 
578  ol.enableAll();
579  if (ii.local || isIDLorJava)
580  ol.docify("\"");
581  else
582  ol.docify(">");
583  if (isIDLorJava)
584  ol.docify(";");
585  ol.endTypewriter();
586  ol.lineBreak();
587  }
588  ol.endTextBlock();
589  }
590 }

引用了 OutputList::disable(), OutputList::disableAllBut(), OutputList::docify(), OutputList::enableAll(), OutputList::endTextBlock(), OutputList::endTypewriter(), FALSE, FileDef::generateSourceFile(), Definition::getLanguage(), FileDef::getOutputFileBase(), Definition::getReference(), OutputGenerator::Html, FileDef::includeName(), FileDef::isLinkable(), OutputList::lineBreak(), m_includeList, SrcLangExt_IDL, SrcLangExt_Java, OutputList::startTextBlock(), OutputList::startTypewriter(), TRUE , 以及 OutputList::writeObjectLink().

被这些函数引用 writeDocumentation().

◆ writeIncludeGraph()

void FileDefImpl::writeIncludeGraph ( OutputList ol)
private

在文件 filedef.cpp592 行定义.

593 {
594  if (Config_getBool(HAVE_DOT) /*&& Config_getBool(INCLUDE_GRAPH)*/)
595  {
596  //printf("Graph for file %s\n",qPrint(name()));
597  DotInclDepGraph incDepGraph(this,FALSE);
598  if (incDepGraph.isTooBig())
599  {
600  warn_uncond("Include graph for '%s' not generated, too many nodes (%d), threshold is %d. Consider increasing DOT_GRAPH_MAX_NODES.\n",
601  qPrint(name()), incDepGraph.numNodes(), Config_getInt(DOT_GRAPH_MAX_NODES));
602  }
603  else if (!incDepGraph.isTrivial())
604  {
605  ol.startTextBlock();
607  ol.startInclDepGraph();
609  ol.endInclDepGraph(incDepGraph);
610  ol.enableAll();
611  ol.endTextBlock(TRUE);
612  }
613  //incDepGraph.writeGraph(Config_getString(HTML_OUTPUT),fd->getOutputFileBase());
614  }
615 }

引用了 Config_getBool, Config_getInt, OutputList::disable(), OutputList::enableAll(), OutputList::endInclDepGraph(), OutputList::endTextBlock(), FALSE, DotInclDepGraph::isTooBig(), DotInclDepGraph::isTrivial(), OutputGenerator::Man, name(), DotInclDepGraph::numNodes(), OutputList::parseText(), qPrint(), OutputList::startInclDepGraph(), OutputList::startTextBlock(), theTranslator, Translator::trInclDepGraph(), TRUE , 以及 warn_uncond().

被这些函数引用 writeDocumentation().

◆ writeInlineClasses()

void FileDefImpl::writeInlineClasses ( OutputList ol)
private

在文件 filedef.cpp677 行定义.

678 {
679  // temporarily undo the disabling could be done by startMemberDocumentation()
680  // as a result of setting SEPARATE_MEMBER_PAGES to YES; see bug730512
681  bool isEnabled = ol.isEnabled(OutputGenerator::Html);
683 
684  m_classes.writeDocumentation(ol,this);
685 
686  // restore the initial state if needed
687  if (!isEnabled) ol.disable(OutputGenerator::Html);
688 }

引用了 OutputList::disable(), OutputList::enable(), OutputGenerator::Html, OutputList::isEnabled(), m_classes , 以及 ClassLinkedRefMap::writeDocumentation().

被这些函数引用 writeDocumentation().

◆ writeMemberDeclarations()

void FileDefImpl::writeMemberDeclarations ( OutputList ol,
MemberListType  lt,
const QCString title 
)
private

在文件 filedef.cpp1671 行定义.

1672 {
1673  static bool optVhdl = Config_getBool(OPTIMIZE_OUTPUT_VHDL);
1674  MemberList * ml = getMemberList(lt);
1675  if (ml)
1676  {
1677  if (optVhdl) // use specific declarations function
1678  {
1679 
1680  VhdlDocGen::writeVhdlDeclarations(ml,ol,0,0,this,0);
1681  }
1682  else
1683  {
1684  ml->writeDeclarations(ol,0,0,this,0,title,QCString());
1685  }
1686  }
1687 }

引用了 Config_getBool, getMemberList(), title(), MemberList::writeDeclarations() , 以及 VhdlDocGen::writeVhdlDeclarations().

被这些函数引用 writeDocumentation().

◆ writeMemberDocumentation()

void FileDefImpl::writeMemberDocumentation ( OutputList ol,
MemberListType  lt,
const QCString title 
)
private

在文件 filedef.cpp1689 行定义.

1690 {
1691  MemberList * ml = getMemberList(lt);
1692  if (ml) ml->writeDocumentation(ol,name(),this,title);
1693 }

引用了 getMemberList(), name(), title() , 以及 MemberList::writeDocumentation().

被这些函数引用 writeDocumentation().

◆ writeMemberGroups()

void FileDefImpl::writeMemberGroups ( OutputList ol)
private

在文件 filedef.cpp718 行定义.

719 {
720  /* write user defined member groups */
721  for (const auto &mg : m_memberGroups)
722  {
723  if ((!mg->allMembersInSameSection() || !m_subGrouping)
724  && mg->header()!="[NOHEADER]")
725  {
726  mg->writeDeclarations(ol,0,0,this,0);
727  }
728  }
729 }

引用了 m_memberGroups , 以及 m_subGrouping.

被这些函数引用 writeDocumentation().

◆ writeMemberPages()

void FileDefImpl::writeMemberPages ( OutputList ol)
virtual

实现了 FileDef.

在文件 filedef.cpp1030 行定义.

1031 {
1032  ol.pushGeneratorState();
1034 
1035  for (const auto &ml : m_memberLists)
1036  {
1037  if (ml->listType()&MemberListType_documentationLists)
1038  {
1039  ml->writeDocumentationPage(ol,name(),this);
1040  }
1041  }
1042 
1043  ol.popGeneratorState();
1044 }

引用了 OutputList::disableAllBut(), OutputGenerator::Html, m_memberLists, MemberListType_documentationLists, name(), OutputList::popGeneratorState() , 以及 OutputList::pushGeneratorState().

被这些函数引用 writeDocumentation().

◆ writeNamespaceDeclarations()

void FileDefImpl::writeNamespaceDeclarations ( OutputList ol,
const QCString title,
bool  isConstantGroup 
)
private

在文件 filedef.cpp658 行定义.

660 {
661  // write list of namespaces
662  m_namespaces.writeDeclaration(ol,title,isConstantGroup);
663 }

引用了 m_namespaces, title() , 以及 NamespaceLinkedRefMap::writeDeclaration().

被这些函数引用 writeDocumentation().

◆ writeQuickMemberLinks()

void FileDefImpl::writeQuickMemberLinks ( OutputList ol,
const MemberDef currentMd 
) const
virtual

重载 DefinitionMixin< FileDef > .

在文件 filedef.cpp1046 行定义.

1047 {
1048  static bool createSubDirs=Config_getBool(CREATE_SUBDIRS);
1049 
1050  ol.writeString(" <div class=\"navtab\">\n");
1051  ol.writeString(" <table>\n");
1052 
1054  if (allMemberList)
1055  {
1056  for (const auto &md : *allMemberList)
1057  {
1058  if (md->getFileDef()==this && md->getNamespaceDef()==0 && md->isLinkable() && !md->isEnumValue())
1059  {
1060  if (md->isLinkableInProject())
1061  {
1062  if (md==currentMd) // selected item => highlight
1063  {
1064  ol.writeString(" <tr><td class=\"navtabHL\">");
1065  }
1066  else
1067  {
1068  ol.writeString(" <tr><td class=\"navtab\">");
1069  }
1070  ol.writeString("<a class=\"navtab\" ");
1071  ol.writeString("href=\"");
1072  if (createSubDirs) ol.writeString("../../");
1073  ol.writeString(addHtmlExtensionIfMissing(md->getOutputFileBase())+"#"+md->anchor());
1074  ol.writeString("\">");
1075  ol.writeString(convertToHtml(md->localName()));
1076  ol.writeString("</a>");
1077  ol.writeString("</td></tr>\n");
1078  }
1079  }
1080  }
1081  }
1082 
1083  ol.writeString(" </table>\n");
1084  ol.writeString(" </div>\n");
1085 }

引用了 addHtmlExtensionIfMissing(), Config_getBool, convertToHtml(), createSubDirs(), getMemberList(), MemberListType_allMembersList , 以及 OutputList::writeString().

◆ writeSourceBody()

void FileDefImpl::writeSourceBody ( OutputList ol,
ClangTUParser clangParser 
)
virtual

实现了 FileDef.

在文件 filedef.cpp1134 行定义.

1135 {
1136  bool filterSourceFiles = Config_getBool(FILTER_SOURCE_FILES);
1137  DevNullCodeDocInterface devNullIntf;
1138 #if USE_LIBCLANG
1139  if (Doxygen::clangAssistedParsing && clangParser &&
1141  {
1142  ol.startCodeFragment("DoxyCode");
1143  clangParser->switchToFile(this);
1144  clangParser->writeSources(ol,this);
1145  ol.endCodeFragment("DoxyCode");
1146  }
1147  else
1148 #endif
1149  {
1151  intf->resetCodeParserState();
1152  ol.startCodeFragment("DoxyCode");
1153  bool needs2PassParsing =
1154  Doxygen::parseSourcesNeeded && // we need to parse (filtered) sources for cross-references
1155  !filterSourceFiles && // but user wants to show sources as-is
1156  !getFileFilter(absFilePath(),TRUE).isEmpty(); // and there is a filter used while parsing
1157 
1158  if (needs2PassParsing)
1159  {
1160  // parse code for cross-references only (see bug707641)
1161  intf->parseCode(devNullIntf,QCString(),
1163  getLanguage(),
1164  FALSE,QCString(),this
1165  );
1166  }
1167  intf->parseCode(ol,QCString(),
1168  fileToString(absFilePath(),filterSourceFiles,TRUE),
1169  getLanguage(), // lang
1170  FALSE, // isExampleBlock
1171  QCString(), // exampleName
1172  this, // fileDef
1173  -1, // startLine
1174  -1, // endLine
1175  FALSE, // inlineFragment
1176  0, // memberDef
1177  TRUE, // showLineNumbers
1178  0, // searchCtx
1179  !needs2PassParsing // collectXRefs
1180  );
1181  ol.endCodeFragment("DoxyCode");
1182  }
1183 }

引用了 absFilePath(), Doxygen::clangAssistedParsing, Config_getBool, OutputList::endCodeFragment(), FALSE, fileToString(), ParserManager::getCodeParser(), DefinitionMixin< FileDef >::getDefFileExtension(), getFileFilter(), DefinitionMixin< FileDef >::getLanguage(), QCString::isEmpty(), Doxygen::parserManager, Doxygen::parseSourcesNeeded, SrcLangExt_Cpp, SrcLangExt_ObjC, OutputList::startCodeFragment(), ClangTUParser::switchToFile(), TRUE , 以及 ClangTUParser::writeSources().

◆ writeSourceFooter()

void FileDefImpl::writeSourceFooter ( OutputList ol)
virtual

实现了 FileDef.

在文件 filedef.cpp1185 行定义.

1186 {
1187  ol.endContents();
1188  endFileWithNavPath(this,ol);
1189  ol.enableAll();
1190 }

引用了 OutputList::enableAll(), OutputList::endContents() , 以及 endFileWithNavPath().

◆ writeSourceHeader()

void FileDefImpl::writeSourceHeader ( OutputList ol)
virtual

Write a source listing of this file to the output

实现了 FileDef.

在文件 filedef.cpp1088 行定义.

1089 {
1090  bool generateTreeView = Config_getBool(GENERATE_TREEVIEW);
1092  if (!m_fileVersion.isEmpty())
1093  {
1094  title+=(" ("+m_fileVersion+")");
1095  }
1096  QCString pageTitle = theTranslator->trSourceFile(title);
1098 
1099  bool isDocFile = isDocumentationFile();
1100  bool genSourceFile = !isDocFile && generateSourceFile();
1101  if (getDirDef())
1102  {
1104  !generateTreeView,
1105  !isDocFile && genSourceFile ? QCString() : getOutputFileBase());
1106  if (!generateTreeView)
1107  {
1109  ol.endQuickIndices();
1110  }
1112  ol.parseText(name());
1114  }
1115  else
1116  {
1118  !isDocFile && genSourceFile ? QCString() : getOutputFileBase());
1120  ol.parseText(title);
1122  }
1123 
1124  ol.startContents();
1125 
1126  if (isLinkable())
1127  {
1130  ol.endTextLink();
1131  }
1132 }

引用了 Config_getBool, OutputList::disable(), OutputList::endQuickIndices(), OutputList::endTextLink(), endTitle(), FALSE, generateSourceFile(), getDirDef(), getOutputFileBase(), getSourceFileBase(), HLI_FileVisible, isDocumentationFile(), QCString::isEmpty(), isLinkable(), m_docname, m_fileVersion, OutputGenerator::Man, name(), OutputList::parseText(), OutputList::startContents(), startFile(), OutputList::startTextLink(), startTitle(), theTranslator, title(), Translator::trGotoDocumentation(), Translator::trSourceFile() , 以及 DefinitionMutable::writeNavigationPath().

◆ writeSourceLink()

void FileDefImpl::writeSourceLink ( OutputList ol)
private

在文件 filedef.cpp643 行定义.

644 {
645  //printf("%s: generateSourceFile()=%d\n",qPrint(name()),generateSourceFile());
646  if (generateSourceFile())
647  {
649  ol.startParagraph();
652  ol.endTextLink();
653  ol.endParagraph();
654  ol.enableAll();
655  }
656 }

引用了 OutputList::disableAllBut(), OutputList::enableAll(), OutputList::endParagraph(), OutputList::endTextLink(), generateSourceFile(), OutputGenerator::Html, includeName(), OutputList::parseText(), OutputList::startParagraph(), OutputList::startTextLink(), theTranslator , 以及 Translator::trGotoSourceCode().

被这些函数引用 writeDocumentation().

◆ writeSummaryLinks()

void FileDefImpl::writeSummaryLinks ( OutputList ol) const
virtual

重载 DefinitionMixin< FileDef > .

在文件 filedef.cpp743 行定义.

744 {
745  ol.pushGeneratorState();
747  bool first=TRUE;
748  SrcLangExt lang=getLanguage();
749  for (const auto &lde : LayoutDocManager::instance().docEntries(LayoutDocManager::File))
750  {
751  if (lde->kind()==LayoutDocEntry::FileClasses && m_classes.declVisible())
752  {
753  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
754  QCString label = "nested-classes";
755  ol.writeSummaryLink(QCString(),label,ls->title(lang),first);
756  first=FALSE;
757  }
758  else if (lde->kind()==LayoutDocEntry::FileInterfaces && m_interfaces.declVisible())
759  {
760  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
761  QCString label = "interfaces";
762  ol.writeSummaryLink(QCString(),label,ls->title(lang),first);
763  first=FALSE;
764  }
765  else if (lde->kind()==LayoutDocEntry::FileStructs && m_structs.declVisible())
766  {
767  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
768  QCString label = "structs";
769  ol.writeSummaryLink(QCString(),label,ls->title(lang),first);
770  first=FALSE;
771  }
772  else if (lde->kind()==LayoutDocEntry::FileExceptions && m_exceptions.declVisible())
773  {
774  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
775  QCString label = "exceptions";
776  ol.writeSummaryLink(QCString(),label,ls->title(lang),first);
777  first=FALSE;
778  }
779  else if (lde->kind()==LayoutDocEntry::FileNamespaces && m_namespaces.declVisible(false))
780  {
781  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
782  QCString label = "namespaces";
783  ol.writeSummaryLink(QCString(),label,ls->title(lang),first);
784  first=FALSE;
785  }
786  else if (lde->kind()==LayoutDocEntry::FileConcepts && m_concepts.declVisible())
787  {
788  const LayoutDocEntrySection *ls = (const LayoutDocEntrySection*)lde.get();
789  QCString label = "concepts";
790  ol.writeSummaryLink(QCString(),label,ls->title(lang),first);
791  first=FALSE;
792  }
793  else if (lde->kind()==LayoutDocEntry::MemberDecl)
794  {
795  const LayoutDocEntryMemberDecl *lmd = (const LayoutDocEntryMemberDecl*)lde.get();
796  MemberList * ml = getMemberList(lmd->type);
797  if (ml && ml->declVisible())
798  {
800  first=FALSE;
801  }
802  }
803  }
804  if (!first)
805  {
806  ol.writeString(" </div>\n");
807  }
808  ol.popGeneratorState();
809 }

引用了 ClassLinkedRefMap::declVisible(), NamespaceLinkedRefMap::declVisible(), ConceptLinkedRefMap::declVisible(), MemberList::declVisible(), OutputList::disableAllBut(), FALSE, LayoutDocManager::File, LayoutDocEntry::FileClasses, LayoutDocEntry::FileConcepts, LayoutDocEntry::FileExceptions, LayoutDocEntry::FileInterfaces, LayoutDocEntry::FileNamespaces, LayoutDocEntry::FileStructs, DefinitionMixin< FileDef >::getLanguage(), getMemberList(), OutputGenerator::Html, LayoutDocManager::instance(), MemberList::listType(), MemberList::listTypeAsString(), m_classes, m_concepts, m_exceptions, m_interfaces, m_namespaces, m_structs, LayoutDocEntry::MemberDecl, OutputList::popGeneratorState(), OutputList::pushGeneratorState(), LayoutDocEntrySection::title(), LayoutDocEntryMemberDecl::title(), TRUE, LayoutDocEntryMemberDecl::type, OutputList::writeString() , 以及 OutputList::writeSummaryLink().

◆ writeTagFile()

void FileDefImpl::writeTagFile ( TextStream t)
virtual

实现了 FileDef.

在文件 filedef.cpp316 行定义.

317 {
318  tagFile << " <compound kind=\"file\">\n";
319  tagFile << " <name>" << convertToXML(name()) << "</name>\n";
320  tagFile << " <path>" << convertToXML(getPath()) << "</path>\n";
321  tagFile << " <filename>" << addHtmlExtensionIfMissing(getOutputFileBase()) << "</filename>\n";
322  for (const auto &ii : m_includeList)
323  {
324  const FileDef *fd=ii.fileDef;
325  if (fd && fd->isLinkable() && !fd->isReference())
326  {
327  bool isIDLorJava = FALSE;
328  SrcLangExt lang = fd->getLanguage();
329  isIDLorJava = lang==SrcLangExt_IDL || lang==SrcLangExt_Java;
330  const char *locStr = (ii.local || isIDLorJava) ? "yes" : "no";
331  const char *impStr = (ii.imported || isIDLorJava) ? "yes" : "no";
332  tagFile << " <includes id=\""
333  << convertToXML(fd->getOutputFileBase()) << "\" "
334  << "name=\"" << convertToXML(fd->name()) << "\" "
335  << "local=\"" << locStr << "\" "
336  << "imported=\"" << impStr << "\">"
337  << convertToXML(ii.includeName)
338  << "</includes>\n";
339  }
340  }
341  for (const auto &lde : LayoutDocManager::instance().docEntries(LayoutDocManager::File))
342  {
343  switch (lde->kind())
344  {
346  {
348  }
349  break;
351  {
353  }
354  break;
356  {
358  }
359  break;
361  {
363  }
364  break;
366  {
367  for (const auto *nd : m_concepts)
368  {
369  if (nd->isLinkableInProject())
370  {
371  tagFile << " <concept>" << convertToXML(nd->name()) << "</concept>\n";
372  }
373  }
374  }
375  break;
377  {
378  for (const auto *nd : m_namespaces)
379  {
380  if (nd->isLinkableInProject())
381  {
382  tagFile << " <namespace>" << convertToXML(nd->name()) << "</namespace>\n";
383  }
384  }
385  }
386  break;
388  {
389  const LayoutDocEntryMemberDecl *lmd = (const LayoutDocEntryMemberDecl*)lde.get();
390  MemberList * ml = getMemberList(lmd->type);
391  if (ml)
392  {
393  ml->writeTagFile(tagFile);
394  }
395  }
396  break;
398  {
399  for (const auto &mg : m_memberGroups)
400  {
401  mg->writeTagFile(tagFile);
402  }
403  }
404  break;
405  default:
406  break;
407  }
408  }
409 
410  writeDocAnchorsToTagFile(tagFile);
411  tagFile << " </compound>\n";
412 }

引用了 addHtmlExtensionIfMissing(), convertToXML(), FALSE, LayoutDocManager::File, LayoutDocEntry::FileClasses, LayoutDocEntry::FileConcepts, LayoutDocEntry::FileExceptions, LayoutDocEntry::FileInterfaces, LayoutDocEntry::FileNamespaces, LayoutDocEntry::FileStructs, Definition::getLanguage(), getMemberList(), getOutputFileBase(), FileDef::getOutputFileBase(), getPath(), LayoutDocManager::instance(), FileDef::isLinkable(), Definition::isReference(), m_classes, m_concepts, m_exceptions, m_includeList, m_interfaces, m_memberGroups, m_namespaces, m_structs, LayoutDocEntry::MemberDecl, LayoutDocEntry::MemberGroups, name(), FileDef::name(), SrcLangExt_IDL, SrcLangExt_Java, LayoutDocEntryMemberDecl::type, writeClassesToTagFile(), DefinitionMixin< FileDef >::writeDocAnchorsToTagFile() , 以及 MemberList::writeTagFile().

类成员变量说明

◆ m_classes

ClassLinkedRefMap FileDefImpl::m_classes
private

◆ m_concepts

ConceptLinkedRefMap FileDefImpl::m_concepts
private

在文件 filedef.cpp186 行定义.

被这些函数引用 getConcepts(), insertConcept(), writeConcepts(), writeSummaryLinks() , 以及 writeTagFile().

◆ m_dir

DirDef* FileDefImpl::m_dir
private

在文件 filedef.cpp178 行定义.

被这些函数引用 FileDefImpl(), getDirDef() , 以及 setDirDef().

◆ m_docname

QCString FileDefImpl::m_docname
private

在文件 filedef.cpp172 行定义.

被这些函数引用 docName(), FileDefImpl(), writeDocumentation() , 以及 writeSourceHeader().

◆ m_exceptions

ClassLinkedRefMap FileDefImpl::m_exceptions
private

在文件 filedef.cpp185 行定义.

被这些函数引用 insertClass(), sortMemberLists(), writeDocumentation(), writeSummaryLinks() , 以及 writeTagFile().

◆ m_fileName

QCString FileDefImpl::m_fileName
private

在文件 filedef.cpp171 行定义.

被这些函数引用 FileDefImpl(), fileName() , 以及 name().

◆ m_filePath

QCString FileDefImpl::m_filePath
private

在文件 filedef.cpp167 行定义.

被这些函数引用 absFilePath(), acquireFileVersion(), FileDefImpl() , 以及 getSourceFileBase().

◆ m_fileVersion

QCString FileDefImpl::m_fileVersion
private

在文件 filedef.cpp176 行定义.

被这些函数引用 acquireFileVersion(), fileVersion(), getVersion(), writeDocumentation() , 以及 writeSourceHeader().

◆ m_inclByDepFileName

QCString FileDefImpl::m_inclByDepFileName
private

在文件 filedef.cpp169 行定义.

被这些函数引用 includedByDependencyGraphFileName() , 以及 setDiskName().

◆ m_inclDepFileName

QCString FileDefImpl::m_inclDepFileName
private

在文件 filedef.cpp168 行定义.

被这些函数引用 includeDependencyGraphFileName() , 以及 setDiskName().

◆ m_includedByList

IncludeInfoList FileDefImpl::m_includedByList
private

在文件 filedef.cpp163 行定义.

被这些函数引用 addIncludedByDependency(), includedByFileList() , 以及 sortMemberLists().

◆ m_includedByMap

IncludeInfoMap FileDefImpl::m_includedByMap
private

在文件 filedef.cpp162 行定义.

被这些函数引用 addIncludedByDependency().

◆ m_includeList

IncludeInfoList FileDefImpl::m_includeList
private

◆ m_includeMap

IncludeInfoMap FileDefImpl::m_includeMap
private

在文件 filedef.cpp160 行定义.

被这些函数引用 addIncludeDependency() , 以及 isIncluded().

◆ m_interfaces

ClassLinkedRefMap FileDefImpl::m_interfaces
private

在文件 filedef.cpp183 行定义.

被这些函数引用 insertClass(), sortMemberLists(), writeDocumentation(), writeSummaryLinks() , 以及 writeTagFile().

◆ m_isSource

bool FileDefImpl::m_isSource
private

在文件 filedef.cpp175 行定义.

被这些函数引用 FileDefImpl() , 以及 isSource().

◆ m_memberGroups

◆ m_memberLists

◆ m_namespaces

NamespaceLinkedRefMap FileDefImpl::m_namespaces
private

◆ m_outputDiskName

QCString FileDefImpl::m_outputDiskName
private

在文件 filedef.cpp170 行定义.

被这些函数引用 getOutputFileBase(), getSourceFileBase() , 以及 setDiskName().

◆ m_package

PackageDef* FileDefImpl::m_package
private

在文件 filedef.cpp177 行定义.

被这些函数引用 FileDefImpl(), packageDef() , 以及 setPackageDef().

◆ m_path

QCString FileDefImpl::m_path
private

在文件 filedef.cpp166 行定义.

被这些函数引用 FileDefImpl() , 以及 getPath().

◆ m_srcDefMap

DefinitionLineMap FileDefImpl::m_srcDefMap
private

在文件 filedef.cpp173 行定义.

被这些函数引用 addSourceRef() , 以及 getSourceDefinition().

◆ m_srcMemberMap

MemberDefLineMap FileDefImpl::m_srcMemberMap
private

在文件 filedef.cpp174 行定义.

被这些函数引用 addSourceRef() , 以及 getSourceMember().

◆ m_structs

ClassLinkedRefMap FileDefImpl::m_structs
private

在文件 filedef.cpp184 行定义.

被这些函数引用 insertClass(), sortMemberLists(), writeDocumentation(), writeSummaryLinks() , 以及 writeTagFile().

◆ m_subGrouping

bool FileDefImpl::m_subGrouping
private

在文件 filedef.cpp187 行定义.

被这些函数引用 addMembersToMemberGroup(), FileDefImpl(), subGrouping() , 以及 writeMemberGroups().

◆ m_usingDeclList

LinkedRefMap<const ClassDef> FileDefImpl::m_usingDeclList
private

在文件 filedef.cpp165 行定义.

被这些函数引用 addIncludedUsingDirectives(), addUsingDeclaration() , 以及 getUsedClasses().

◆ m_usingDirList

LinkedRefMap<const NamespaceDef> FileDefImpl::m_usingDirList
private

该类的文档由以下文件生成:
FileDefImpl::writeMemberPages
virtual void writeMemberPages(OutputList &ol)
Definition: filedef.cpp:1030
DefinitionMixin< FileDef >::briefFile
virtual QCString briefFile() const
Definition: definitionimpl.h:171
LayoutDocEntry::GroupPageDocs
@ GroupPageDocs
Definition: layout.h:65
Debug::ExtCmd
@ ExtCmd
Definition: debug.h:36
LinkedRefMap::add
bool add(const char *k, T *obj)
Adds an object reference to the ordered vector if it was not added already.
Definition: linkedmap.h:284
FileDefImpl::m_namespaces
NamespaceLinkedRefMap m_namespaces
Definition: filedef.cpp:181
OutputList::disableAllBut
void disableAllBut(OutputGenerator::OutputType o)
Definition: outputlist.cpp:76
DefinitionMixin< FileDef >::isReference
virtual bool isReference() const
Definition: definitionimpl.h:183
FileDefImpl::m_memberLists
MemberLists m_memberLists
Definition: filedef.cpp:179
startTitle
void startTitle(OutputList &ol, const QCString &fileName, const DefinitionMutable *def)
Definition: index.cpp:219
FileDefImpl::m_srcMemberMap
MemberDefLineMap m_srcMemberMap
Definition: filedef.cpp:174
FileDefImpl::m_srcDefMap
DefinitionLineMap m_srcDefMap
Definition: filedef.cpp:173
FileDefImpl::m_usingDeclList
LinkedRefMap< const ClassDef > m_usingDeclList
Definition: filedef.cpp:165
OutputList::endGroupHeader
void endGroupHeader(int extraLevels=0)
Definition: outputlist.h:171
Translator::trDefinedInSourceFile
virtual QCString trDefinedInSourceFile()=0
LayoutDocEntryMemberDecl::type
MemberListType type
Definition: layout.h:101
MemberList::numDecMembers
int numDecMembers() const
Definition: memberlist.h:90
LayoutDocEntryMemberDecl
Represents of a member declaration list with configurable title and subtitle.
Definition: layout.h:94
LayoutDocEntry::NamespaceNestedNamespaces
@ NamespaceNestedNamespaces
Definition: layout.h:52
LinkedRefMap< const NamespaceDef >
Portable::popen
FILE * popen(const QCString &name, const QCString &type)
Definition: portable.cpp:452
MemberType_Variable
@ MemberType_Variable
Definition: types.h:278
Htags::path2URL
static QCString path2URL(const QCString &path)
Definition: htags.cpp:159
MemberListType_docDictionaryMembers
@ MemberListType_docDictionaryMembers
Definition: types.h:193
ConceptLinkedRefMap::writeDeclaration
void writeDeclaration(OutputList &ol, const QCString &header, bool localNames) const
Definition: conceptdef.cpp:662
endTitle
void endTitle(OutputList &ol, const QCString &fileName, const QCString &name)
Definition: index.cpp:228
toMemberDefMutable
MemberDefMutable * toMemberDefMutable(Definition *d)
Definition: memberdef.cpp:6125
ClangTUParser::switchToFile
void switchToFile(const FileDef *fd)
Switches to another file within the translation unit started with start().
Definition: clangparser.cpp:912
FileDef::generateSourceFile
virtual bool generateSourceFile() const =0
LayoutDocEntry::GroupConcepts
@ GroupConcepts
Definition: layout.h:63
FileDefImpl::writeMemberGroups
void writeMemberGroups(OutputList &ol)
Definition: filedef.cpp:718
MemberListType_docEnumMembers
@ MemberListType_docEnumMembers
Definition: types.h:167
LayoutDocEntry::GroupFiles
@ GroupFiles
Definition: layout.h:64
DefinitionMixin< FileDef >::xrefListItems
virtual const RefItemVector & xrefListItems() const
Definition: definitionimpl.h:192
FileDefImpl::m_memberGroups
MemberGroupList m_memberGroups
Definition: filedef.cpp:180
LayoutDocEntry::NamespaceInlineClasses
@ NamespaceInlineClasses
Definition: layout.h:54
NamespaceDef
An abstract interface of a namespace symbol.
Definition: namespacedef.h:54
MemberType_EnumValue
@ MemberType_EnumValue
Definition: types.h:281
LayoutDocEntry::MemberDef
@ MemberDef
Definition: layout.h:38
LayoutDocEntry::FileClasses
@ FileClasses
Definition: layout.h:57
ClassLinkedRefMap::writeDeclaration
void writeDeclaration(OutputList &ol, const ClassDef::CompoundType *filter, const QCString &header, bool localNames) const
Definition: classlist.cpp:53
OutputList::docify
void docify(const QCString &s)
Definition: outputlist.h:137
FileDefImpl::m_isSource
bool m_isSource
Definition: filedef.cpp:175
LayoutDocEntry::ConceptDefinition
@ ConceptDefinition
Definition: layout.h:49
DefinitionMixin< FileDef >::writeDocAnchorsToTagFile
virtual void writeDocAnchorsToTagFile(TextStream &fs) const
Definition: definitionimpl.h:268
FileDefImpl::writeIncludedByGraph
void writeIncludedByGraph(OutputList &ol)
Definition: filedef.cpp:617
FileDefImpl::addUsingDeclaration
virtual void addUsingDeclaration(const ClassDef *cd)
Definition: filedef.cpp:1386
FileDefImpl::m_package
PackageDef * m_package
Definition: filedef.cpp:177
QCString::length
uint length() const
Returns the length of the string, not counting the 0-terminator.
Definition: qcstring.h:147
FileDefImpl::getDirDef
virtual DirDef * getDirDef() const
Definition: filedef.cpp:86
FileDefImpl::m_concepts
ConceptLinkedRefMap m_concepts
Definition: filedef.cpp:186
LayoutDocManager::File
@ File
Definition: layout.h:203
FileDefImpl::writeIncludeFiles
void writeIncludeFiles(OutputList &ol)
Definition: filedef.cpp:528
Htags::useHtags
static bool useHtags
Definition: htags.h:23
MemberLists::get
const std::unique_ptr< MemberList > & get(MemberListType lt, MemberListContainer con)
Definition: memberlist.h:142
FileDefImpl::m_filePath
QCString m_filePath
Definition: filedef.cpp:167
DefinitionMixin< FileDef >::docFile
virtual QCString docFile() const
Definition: definitionimpl.h:164
FileDefImpl::writeNamespaceDeclarations
void writeNamespaceDeclarations(OutputList &ol, const QCString &title, bool isConstantGroup)
Definition: filedef.cpp:658
FileDefImpl::m_usingDirList
LinkedRefMap< const NamespaceDef > m_usingDirList
Definition: filedef.cpp:164
FileDefImpl::addIncludedUsingDirectives
virtual void addIncludedUsingDirectives(FileDefSet &visitedFiles)
Definition: filedef.cpp:1402
QCString::isEmpty
bool isEmpty() const
Returns TRUE iff the string is empty
Definition: qcstring.h:144
MemberListType_allMembersList
@ MemberListType_allMembersList
Definition: types.h:147
FileDefImpl::m_dir
DirDef * m_dir
Definition: filedef.cpp:178
FileDefImpl::m_docname
QCString m_docname
Definition: filedef.cpp:172
OutputList::startMemberSections
void startMemberSections()
Definition: outputlist.h:177
OutputList::writeString
void writeString(const QCString &text)
Definition: outputlist.h:111
LayoutDocEntryMemberDef::title
QCString title(SrcLangExt lang) const
Definition: layout.cpp:1680
VhdlDocGen::writeVhdlDeclarations
static void writeVhdlDeclarations(const MemberList *, OutputList &, const GroupDef *, const ClassDef *, const FileDef *, const NamespaceDef *)
Definition: vhdldocgen.cpp:1539
MemberVector::sort
void sort()
Definition: memberlist.h:58
LayoutDocEntry::ClassInheritanceGraph
@ ClassInheritanceGraph
Definition: layout.h:44
ClassDef::Interface
@ Interface
Definition: classdef.h:110
MemberVector::push_back
void push_back(const MemberDef *md)
Definition: memberlist.h:42
OutputList::endProjectNumber
void endProjectNumber()
Definition: outputlist.h:84
SrcLangExt
SrcLangExt
Language as given by extension
Definition: types.h:41
LayoutDocEntry::MemberDeclStart
@ MemberDeclStart
Definition: layout.h:37
MemberListType_docSequenceMembers
@ MemberListType_docSequenceMembers
Definition: types.h:191
ClassLinkedRefMap::writeDocumentation
void writeDocumentation(OutputList &ol, const Definition *container=0) const
Definition: classlist.cpp:74
FileDefImpl::m_exceptions
ClassLinkedRefMap m_exceptions
Definition: filedef.cpp:185
FileDefImpl::m_fileVersion
QCString m_fileVersion
Definition: filedef.cpp:176
MemberType_Enumeration
@ MemberType_Enumeration
Definition: types.h:280
QCString::str
std::string str() const
Definition: qcstring.h:442
MemberType_Typedef
@ MemberType_Typedef
Definition: types.h:279
Definition::isHidden
virtual bool isHidden() const =0
LayoutDocEntry::NamespaceClasses
@ NamespaceClasses
Definition: layout.h:53
MemberListType_docDefineMembers
@ MemberListType_docDefineMembers
Definition: types.h:164
LayoutDocEntry::GroupClasses
@ GroupClasses
Definition: layout.h:63
DefinitionMixin< FileDef >::getLanguage
virtual SrcLangExt getLanguage() const
Definition: definitionimpl.h:189
MemberDefMutable::setSectionList
virtual void setSectionList(const Definition *container, const MemberList *sl)=0
FileDefImpl::getAllIncludeFilesRecursively
virtual void getAllIncludeFilesRecursively(StringVector &incFiles) const
Definition: filedef.cpp:1717
MemberListType_decDictionaryMembers
@ MemberListType_decDictionaryMembers
Definition: types.h:192
Doxygen::parseSourcesNeeded
static bool parseSourcesNeeded
Definition: doxygen.h:104
err
void err(const char *fmt,...)
Definition: message.cpp:203
SrcLangExt_Java
@ SrcLangExt_Java
Definition: types.h:45
FileDef::isLinkable
virtual bool isLinkable() const =0
DefinitionMixin::name
virtual QCString name() const
Definition: definitionimpl.h:155
QCString::find
int find(char c, int index=0, bool cs=TRUE) const
Definition: qcstring.cpp:38
LayoutDocEntry::ClassIncludes
@ ClassIncludes
Definition: layout.h:43
LayoutDocEntry::FileNamespaces
@ FileNamespaces
Definition: layout.h:57
LayoutDocEntryMemberDef::type
MemberListType type
Definition: layout.h:116
MemberDefMutable
Definition: memberdef.h:296
FileDefImpl::writeClassesToTagFile
void writeClassesToTagFile(TextStream &t, const ClassLinkedRefMap &list)
Definition: filedef.cpp:516
FileDefImpl::writeAuthorSection
void writeAuthorSection(OutputList &ol)
Definition: filedef.cpp:731
LayoutDocEntry::FileConcepts
@ FileConcepts
Definition: layout.h:57
FileDefImpl::m_fileName
QCString m_fileName
Definition: filedef.cpp:171
FileDefImpl::addMembersToMemberGroup
virtual void addMembersToMemberGroup()
Definition: filedef.cpp:1217
DefinitionMixin< FileDef >::briefLine
virtual int briefLine() const
Definition: definitionimpl.h:167
OutputList::endTypewriter
void endTypewriter()
Definition: outputlist.h:167
endFileWithNavPath
void endFileWithNavPath(const Definition *d, OutputList &ol)
Definition: index.cpp:274
LayoutDocEntry::MemberDefEnd
@ MemberDefEnd
Definition: layout.h:38
LayoutDocEntry::DirSubDirs
@ DirSubDirs
Definition: layout.h:68
LinkedRefMap::prepend
bool prepend(const char *k, T *obj)
Prepends an object reference to the ordered vector if it was not added already.
Definition: linkedmap.h:317
DefinitionMixin< FileDef >::hasBriefDescription
virtual bool hasBriefDescription() const
Definition: definitionimpl.h:199
OutputList::writeDoc
void writeDoc(DocRoot *root, const Definition *ctx, const MemberDef *md, int id=0)
Definition: outputlist.cpp:169
MemberList::declVisible
bool declVisible() const
Definition: memberlist.cpp:279
DefinitionMutable::writeNavigationPath
virtual void writeNavigationPath(OutputList &ol) const =0
Definition::getLanguage
virtual SrcLangExt getLanguage() const =0
Returns the programming language this definition was written in.
FileDefImpl::getSourceFileBase
virtual QCString getSourceFileBase() const
Definition: filedef.cpp:1578
FileDefImpl::m_subGrouping
bool m_subGrouping
Definition: filedef.cpp:187
LayoutDocEntry::NamespaceNestedConstantGroups
@ NamespaceNestedConstantGroups
Definition: layout.h:52
OutputList::startTypewriter
void startTypewriter()
Definition: outputlist.h:165
FileDefImpl::m_inclByDepFileName
QCString m_inclByDepFileName
Definition: filedef.cpp:169
FileDefImpl::m_inclDepFileName
QCString m_inclDepFileName
Definition: filedef.cpp:168
LayoutDocEntry::GroupInlineClasses
@ GroupInlineClasses
Definition: layout.h:63
OutputList::writeSummaryLink
void writeSummaryLink(const QCString &file, const QCString &anchor, const QCString &title, bool first)
Definition: outputlist.h:359
OutputList::endTextBlock
void endTextBlock(bool paraBreak=FALSE)
Definition: outputlist.h:411
MemberListType_declarationLists
@ MemberListType_declarationLists
Definition: types.h:104
OutputGenerator::RTF
@ RTF
Definition: outputgen.h:333
StringUnorderedSet
std::unordered_set< std::string > StringUnorderedSet
Definition: containers.h:28
MemberListType_decSequenceMembers
@ MemberListType_decSequenceMembers
Definition: types.h:190
Translator::trSourceFile
virtual QCString trSourceFile(QCString &filename)=0
FileDefImpl::addMemberToList
void addMemberToList(MemberListType lt, MemberDef *md)
Definition: filedef.cpp:1601
ConceptLinkedRefMap::declVisible
bool declVisible() const
Definition: conceptdef.cpp:648
LayoutDocEntry::ClassCollaborationGraph
@ ClassCollaborationGraph
Definition: layout.h:45
LayoutDocEntryMemberDecl::title
QCString title(SrcLangExt lang) const
Definition: layout.cpp:1668
FileDefImpl::m_path
QCString m_path
Definition: filedef.cpp:166
toNamespaceDefMutable
NamespaceDefMutable * toNamespaceDefMutable(Definition *d)
Definition: namespacedef.cpp:1579
FileDef::includeName
virtual QCString includeName() const =0
NamespaceDefMutable::combineUsingRelations
virtual void combineUsingRelations(NamespaceDefSet &visitedNamespace)=0
MemberList::listTypeAsString
static QCString listTypeAsString(MemberListType type)
Definition: memberlist.cpp:882
SrcLangExt_ObjC
@ SrcLangExt_ObjC
Definition: types.h:49
Definition::qualifiedName
virtual QCString qualifiedName() const =0
LayoutDocEntry::FileStructs
@ FileStructs
Definition: layout.h:57
LayoutDocEntryMemberDef
Represents of a member definition list with configurable title.
Definition: layout.h:110
OutputList::endQuickIndices
void endQuickIndices()
Definition: outputlist.h:349
addHtmlExtensionIfMissing
QCString addHtmlExtensionIfMissing(const QCString &fName)
Definition: util.cpp:5275
MemberType_Function
@ MemberType_Function
Definition: types.h:277
MemberList::writeTagFile
void writeTagFile(TextStream &)
Definition: memberlist.cpp:940
LayoutDocEntry::FileIncludes
@ FileIncludes
Definition: layout.h:58
warn_uncond
void warn_uncond(const char *fmt,...)
Definition: message.cpp:194
OutputGenerator::Latex
@ Latex
Definition: outputgen.h:333
DefinitionMixin< FileDef >::briefDescription
virtual QCString briefDescription(bool abbreviate=FALSE) const
Definition: definitionimpl.h:165
FileDefImpl::name
virtual QCString name() const
Definition: filedef.cpp:1339
MemberListType_decVarMembers
@ MemberListType_decVarMembers
Definition: types.h:154
Doxygen::clangAssistedParsing
static bool clangAssistedParsing
Definition: doxygen.h:119
QCString::stripWhiteSpace
QCString stripWhiteSpace() const
returns a copy of this string with leading and trailing whitespace removed
Definition: qcstring.h:243
Config_getInt
#define Config_getInt(name)
Definition: config.h:34
OutputList::startTextBlock
void startTextBlock(bool dense=FALSE)
Definition: outputlist.h:409
OutputList::disable
void disable(OutputGenerator::OutputType o)
Definition: outputlist.cpp:100
Entry::SOURCE_SEC
@ SOURCE_SEC
Definition: entry.h:88
FileDefImpl::writeConcepts
void writeConcepts(OutputList &ol, const QCString &title)
Definition: filedef.cpp:671
QCString::left
QCString left(size_t len) const
Definition: qcstring.h:212
FileDef::name
virtual QCString name() const =0
MemberList::listType
MemberListType listType() const
Definition: memberlist.h:86
LayoutDocEntrySection
Definition: layout.h:84
LayoutDocEntry::MemberDeclEnd
@ MemberDeclEnd
Definition: layout.h:37
Doxygen::parserManager
static ParserManager * parserManager
Definition: doxygen.h:111
FileDefImpl::m_outputDiskName
QCString m_outputDiskName
Definition: filedef.cpp:170
OutputList::writeAnchor
void writeAnchor(const QCString &fileName, const QCString &name)
Definition: outputlist.h:239
FileDefImpl::startMemberDeclarations
void startMemberDeclarations(OutputList &ol)
Definition: filedef.cpp:690
Translator::trMore
virtual QCString trMore()=0
DefinitionMixin< FileDef >::getStartBodyLine
virtual int getStartBodyLine() const
Definition: definitionimpl.h:186
Definition::TypeFile
@ TypeFile
Definition: definition.h:88
OutputList::endContents
void endContents()
Definition: outputlist.h:363
Debug::print
static void print(DebugMask mask, int prio, const char *fmt,...)
Definition: debug.cpp:57
MemberList::numDocMembers
int numDocMembers() const
Definition: memberlist.h:92
ClangTUParser::writeSources
void writeSources(CodeOutputInterface &ol, const FileDef *fd)
writes the syntax highlighted source code for a file
OutputList::endInclDepGraph
void endInclDepGraph(DotInclDepGraph &g)
Definition: outputlist.h:393
LayoutDocEntry::MemberDefStart
@ MemberDefStart
Definition: layout.h:38
FileDefImpl::m_includedByList
IncludeInfoList m_includedByList
Definition: filedef.cpp:163
qstricmp
int qstricmp(const char *str1, const char *str2)
Definition: qcstring.cpp:433
LayoutDocEntry::DirFiles
@ DirFiles
Definition: layout.h:68
OutputList::lineBreak
void lineBreak(const QCString &style=QCString())
Definition: outputlist.h:300
theTranslator
Translator * theTranslator
Definition: language.cpp:156
Definition::isReference
virtual bool isReference() const =0
Definition::name
virtual QCString name() const =0
SrcLangExt_Cpp
@ SrcLangExt_Cpp
Definition: types.h:50
DefinitionMixin< FileDef >::isLinkableViaGroup
virtual bool isLinkableViaGroup() const
Definition: definitionimpl.h:191
FileDefImpl::endMemberDocumentation
void endMemberDocumentation(OutputList &ol)
Definition: filedef.cpp:709
LayoutDocEntry::NamespaceExceptions
@ NamespaceExceptions
Definition: layout.h:53
OutputList::writeRuler
void writeRuler()
Definition: outputlist.h:237
FileDefImpl::writeClassDeclarations
void writeClassDeclarations(OutputList &ol, const QCString &title, const ClassLinkedRefMap &list)
Definition: filedef.cpp:665
LayoutDocEntry::FileConstantGroups
@ FileConstantGroups
Definition: layout.h:57
MemberDef::getClassDef
virtual const ClassDef * getClassDef() const =0
Portable::pclose
int pclose(FILE *stream)
Definition: portable.cpp:461
Translator::trGeneratedAutomatically
virtual QCString trGeneratedAutomatically(const QCString &s)=0
FileDefImpl::absFilePath
virtual QCString absFilePath() const
Definition: filedef.cpp:74
validatingParseDoc
DocRoot * validatingParseDoc(IDocParser &parserIntf, const QCString &fileName, int startLine, const Definition *ctx, const MemberDef *md, const QCString &input, bool indexWords, bool isExample, const QCString &exampleName, bool singleLine, bool linkFromIndex, bool markdownSupport)
Definition: docparser.cpp:7495
FileDefImpl::m_includedByMap
IncludeInfoMap m_includedByMap
Definition: filedef.cpp:162
MemberListType_docFuncMembers
@ MemberListType_docFuncMembers
Definition: types.h:168
FileDefImpl::generateSourceFile
virtual bool generateSourceFile() const
Definition: filedef.cpp:1467
LayoutDocEntry::GroupGraph
@ GroupGraph
Definition: layout.h:65
LayoutDocEntry::NamespaceStructs
@ NamespaceStructs
Definition: layout.h:53
FileDefImpl::startMemberDocumentation
void startMemberDocumentation(OutputList &ol)
Definition: filedef.cpp:700
OutputList::endParagraph
void endParagraph()
Definition: outputlist.h:109
startFile
void startFile(OutputList &ol, const QCString &name, const QCString &manName, const QCString &title, HighlightedItem hli, bool additionalIndices, const QCString &altSidebarName)
Definition: index.cpp:235
FileDefImpl::addUsingDirective
virtual void addUsingDirective(const NamespaceDef *nd)
Definition: filedef.cpp:1374
fileToString
QCString fileToString(const QCString &name, bool filter, bool isSourceCode)
Definition: util.cpp:1394
FileDefImpl::m_includeList
IncludeInfoList m_includeList
Definition: filedef.cpp:161
ParserManager::getCodeParser
std::unique_ptr< CodeParserInterface > getCodeParser(const QCString &extension)
Gets the interface to the parser associated with a given extension.
Definition: parserintf.h:217
getLanguageFromFileName
SrcLangExt getLanguageFromFileName(const QCString &fileName, SrcLangExt defLang)
Definition: util.cpp:5574
TRUE
#define TRUE
Definition: qcstring.h:36
OutputList::startProjectNumber
void startProjectNumber()
Definition: outputlist.h:82
FileDefImpl::isDocumentationFile
virtual bool isDocumentationFile() const
Definition: filedef.cpp:1534
MemberList::needsSorting
bool needsSorting() const
Definition: memberlist.h:94
LayoutDocEntry::GroupNestedGroups
@ GroupNestedGroups
Definition: layout.h:64
FileDefImpl::endMemberDeclarations
void endMemberDeclarations(OutputList &ol)
Definition: filedef.cpp:695
MemberList::writeDeclarations
void writeDeclarations(OutputList &ol, const ClassDef *cd, const NamespaceDef *nd, const FileDef *fd, const GroupDef *gd, const QCString &title, const QCString &subtitle, bool showEnumValues=FALSE, bool showInline=FALSE, const ClassDef *inheritedFrom=0, MemberListType lt=MemberListType_pubMethods) const
Writes the list of members to the output.
Definition: memberlist.cpp:526
ClassDef::Struct
@ Struct
Definition: classdef.h:108
OutputGenerator::Html
@ Html
Definition: outputgen.h:333
FileDefImpl::writeMemberDocumentation
void writeMemberDocumentation(OutputList &ol, MemberListType lt, const QCString &title)
Definition: filedef.cpp:1689
OutputList::enableAll
void enableAll()
Definition: outputlist.cpp:84
OutputList::isEnabled
bool isEnabled(OutputGenerator::OutputType o)
Definition: outputlist.cpp:116
MemberListType_decEnumMembers
@ MemberListType_decEnumMembers
Definition: types.h:152
LinkedRefMap::begin
iterator begin()
Definition: linkedmap.h:366
addRefItem
void addRefItem(const RefItemVector &sli, const QCString &key, const QCString &prefix, const QCString &name, const QCString &title, const QCString &args, const Definition *scope)
Definition: util.cpp:4880
DefinitionMixin< FileDef >::docLine
virtual int docLine() const
Definition: definitionimpl.h:163
OutputList::startContents
void startContents()
Definition: outputlist.h:361
FileDefImpl::writeMemberDeclarations
void writeMemberDeclarations(OutputList &ol, MemberListType lt, const QCString &title)
Definition: filedef.cpp:1671
OutputList::startGroupHeader
void startGroupHeader(int extraLevels=0)
Definition: outputlist.h:169
MemberType_Property
@ MemberType_Property
Definition: types.h:286
MemberListType_decDefineMembers
@ MemberListType_decDefineMembers
Definition: types.h:149
OutputList::endMemberSections
void endMemberSections()
Definition: outputlist.h:179
OutputList::popGeneratorState
void popGeneratorState()
Definition: outputlist.cpp:134
OutputList::startTextLink
void startTextLink(const QCString &file, const QCString &anchor)
Definition: outputlist.h:152
MemberType_Dictionary
@ MemberType_Dictionary
Definition: types.h:291
ClassDef::compoundType
virtual CompoundType compoundType() const =0
Returns the type of compound this is, i.e.
HLI_FileVisible
@ HLI_FileVisible
Definition: index.h:174
docFindSections
void docFindSections(const QCString &input, const Definition *d, const QCString &fileName)
Definition: docparser.cpp:7681
FileDefImpl::writeDetailedDescription
void writeDetailedDescription(OutputList &ol, const QCString &title)
Definition: filedef.cpp:414
MemberListType_decFuncMembers
@ MemberListType_decFuncMembers
Definition: types.h:153
OutputList::startCodeFragment
void startCodeFragment(const QCString &style)
Definition: outputlist.h:241
Definition::getReference
virtual QCString getReference() const =0
DefinitionMixin< FileDef >::documentation
virtual QCString documentation() const
Definition: definitionimpl.h:162
MemberListContainer::File
@ File
FileDefImpl::m_classes
ClassLinkedRefMap m_classes
Definition: filedef.cpp:182
DefinitionMixin< FileDef >::DefinitionMixin
DefinitionMixin(const QCString &defFileName, int defLine, int defColumn, const QCString &name, const char *b=0, const char *d=0, bool isSymbol=TRUE)
Definition: definitionimpl.h:146
FileDefImpl::writeIncludeGraph
void writeIncludeGraph(OutputList &ol)
Definition: filedef.cpp:592
RefItemVector
std::vector< RefItem * > RefItemVector
Definition: reflist.h:132
MemberList::setAnchors
void setAnchors()
Definition: memberlist.cpp:975
LayoutDocEntry::ClassAllMembersLink
@ ClassAllMembersLink
Definition: layout.h:45
FileDefImpl::writeBriefDescription
void writeBriefDescription(OutputList &ol)
Definition: filedef.cpp:477
FileDefImpl::writeSourceLink
void writeSourceLink(OutputList &ol)
Definition: filedef.cpp:643
Config_getBool
#define Config_getBool(name)
Definition: config.h:33
LayoutDocEntry::GroupDirs
@ GroupDirs
Definition: layout.h:64
Translator::trFile
virtual QCString trFile(bool first_capital, bool singular)=0
MemberList::writeDocumentation
void writeDocumentation(OutputList &ol, const QCString &scopeName, const Definition *container, const QCString &title, bool showEnumValues=FALSE, bool showInline=FALSE) const
Definition: memberlist.cpp:658
LayoutDocEntry::DetailedDesc
@ DetailedDesc
Definition: layout.h:39
FileDefImpl::m_includeMap
IncludeInfoMap m_includeMap
Definition: filedef.cpp:160
msg
void msg(const char *fmt,...)
Definition: message.cpp:53
MemberListType_documentationLists
@ MemberListType_documentationLists
Definition: types.h:105
MemberListType_docVarMembers
@ MemberListType_docVarMembers
Definition: types.h:169
LayoutDocManager::instance
static LayoutDocManager & instance()
Returns a reference to this singleton.
Definition: layout.cpp:1574
FileDefImpl::setDiskName
virtual void setDiskName(const QCString &name)
Definition: filedef.cpp:256
LayoutDocEntry::FileInterfaces
@ FileInterfaces
Definition: layout.h:57
DefinitionMixin< FileDef >::hasDocumentation
virtual bool hasDocumentation() const
Definition: definitionimpl.h:176
DefinitionMixin< FileDef >::getBodyDef
virtual const FileDef * getBodyDef() const
Definition: definitionimpl.h:188
OutputList::writeSynopsis
void writeSynopsis()
Definition: outputlist.h:337
MemberListType_decTypedefMembers
@ MemberListType_decTypedefMembers
Definition: types.h:151
OutputList::parseText
void parseText(const QCString &textStr)
Definition: outputlist.cpp:179
FileDef::absFilePath
virtual QCString absFilePath() const =0
NamespaceLinkedRefMap::declVisible
bool declVisible(bool isContantGroup) const
Definition: namespacedef.cpp:1284
MemberType_Sequence
@ MemberType_Sequence
Definition: types.h:290
qPrint
const char * qPrint(const char *s)
Definition: qcstring.h:589
SrcLangExt_IDL
@ SrcLangExt_IDL
Definition: types.h:44
LayoutDocEntry::MemberGroups
@ MemberGroups
Definition: layout.h:36
Config_getString
#define Config_getString(name)
Definition: config.h:32
LayoutDocEntry::ClassInlineClasses
@ ClassInlineClasses
Definition: layout.h:43
LinkedRefMap::end
iterator end()
Definition: linkedmap.h:367
OutputList::startInclDepGraph
void startInclDepGraph()
Definition: outputlist.h:391
OutputList::generateDoc
void generateDoc(const QCString &fileName, int startLine, const Definition *ctx, const MemberDef *md, const QCString &docStr, bool indexWords, bool isExample, const QCString &exampleName, bool singleLine, bool linkFromIndex, bool markdownSupport)
Definition: outputlist.cpp:142
addGroupListToTitle
void addGroupListToTitle(OutputList &ol, const Definition *d)
Definition: util.cpp:4929
MemberVector::contains
bool contains(const MemberDef *md)
Definition: memberlist.h:71
FileDefImpl::getPath
virtual QCString getPath() const
Definition: filedef.cpp:80
convertNameToFile
QCString convertNameToFile(const QCString &name, bool allowDots, bool allowUnderscore)
Definition: util.cpp:3604
FileDefImpl::hasDetailedDescription
virtual bool hasDetailedDescription() const
Definition: filedef.cpp:306
ClassLinkedRefMap::declVisible
bool declVisible(const ClassDef::CompoundType *filter=0) const
Definition: classlist.cpp:29
SrcLangExt_Markdown
@ SrcLangExt_Markdown
Definition: types.h:57
OutputList::pushGeneratorState
void pushGeneratorState()
Definition: outputlist.cpp:126
getFileNameExtension
QCString getFileNameExtension(const QCString &fn)
Definition: util.cpp:5621
Translator::trInclByDepGraph
virtual QCString trInclByDepGraph()=0
convertToXML
QCString convertToXML(const QCString &s, bool keepEntities)
Definition: util.cpp:3948
MemberList::setNeedsSorting
void setNeedsSorting(bool b)
Definition: memberlist.cpp:877
NamespaceDefMutable
Definition: namespacedef.h:106
FileDef
A model of a file symbol.
Definition: filedef.h:73
FileDefImpl::isLinkableInProject
virtual bool isLinkableInProject() const
Definition: filedef.cpp:1695
Translator::trInclDepGraph
virtual QCString trInclDepGraph(const QCString &fName)=0
DefinitionMixin< FileDef >::setReference
virtual void setReference(const QCString &r)
Definition: definitionimpl.h:214
MemberType_Define
@ MemberType_Define
Definition: types.h:276
LayoutDocEntry::BriefDesc
@ BriefDesc
Definition: layout.h:39
Entry::HEADER_SEC
@ HEADER_SEC
Definition: entry.h:89
DotInclDepGraph
Representation of an include dependency graph
Definition: dotincldepgraph.h:30
LayoutDocEntry::NamespaceConcepts
@ NamespaceConcepts
Definition: layout.h:53
FileDefImpl::includeName
virtual QCString includeName() const
Definition: filedef.cpp:1596
stripFromPath
static QCString stripFromPath(const QCString &path, const StringVector &l)
Definition: util.cpp:292
FileDefImpl::acquireFileVersion
void acquireFileVersion()
Definition: filedef.cpp:1544
LayoutDocEntry::DirGraph
@ DirGraph
Definition: layout.h:68
CodeSymbolType::Default
@ Default
LayoutDocEntry::FileIncludeGraph
@ FileIncludeGraph
Definition: layout.h:58
Translator::trGotoDocumentation
virtual QCString trGotoDocumentation()=0
LayoutDocEntry::FileIncludedByGraph
@ FileIncludedByGraph
Definition: layout.h:59
Doxygen::suppressDocWarnings
static bool suppressDocWarnings
Definition: doxygen.h:112
OutputList::writeObjectLink
void writeObjectLink(const QCString &ref, const QCString &file, const QCString &anchor, const QCString &name)
Definition: outputlist.h:141
FileDefImpl::getOutputFileBase
virtual QCString getOutputFileBase() const
Definition: filedef.cpp:1590
FileDefImpl::m_structs
ClassLinkedRefMap m_structs
Definition: filedef.cpp:184
DevNullCodeDocInterface
Class implementing CodeOutputInterface by throwing away everything.
Definition: filedef.cpp:199
LayoutDocEntry::ClassUsedFiles
@ ClassUsedFiles
Definition: layout.h:46
LayoutDocEntry::FileSourceLink
@ FileSourceLink
Definition: layout.h:59
LinkedRefMap< const ClassDef >::Ptr
const ClassDef * Ptr
Definition: linkedmap.h:234
DefinitionMixin< FileDef >::getDefFileExtension
virtual QCString getDefFileExtension() const
Definition: definitionimpl.h:173
FileDefImpl::isLinkable
virtual bool isLinkable() const
Definition: filedef.cpp:83
ClassDef::Exception
@ Exception
Definition: classdef.h:113
FileDefImpl::m_interfaces
ClassLinkedRefMap m_interfaces
Definition: filedef.cpp:183
LayoutDocEntry::ClassNestedClasses
@ ClassNestedClasses
Definition: layout.h:44
FileDefImpl::writeInlineClasses
void writeInlineClasses(OutputList &ol)
Definition: filedef.cpp:677
FileDef::getOutputFileBase
virtual QCString getOutputFileBase() const =0
guessSection
int guessSection(const QCString &name)
Definition: util.cpp:331
createSubDirs
void createSubDirs(const Dir &d)
Definition: util.cpp:3677
getFileFilter
QCString getFileFilter(const QCString &name, bool isSourceCode)
Definition: util.cpp:1315
Translator::trFileReference
virtual QCString trFileReference(const QCString &fileName)=0
Translator::trGotoSourceCode
virtual QCString trGotoSourceCode()=0
LayoutDocEntry::FileExceptions
@ FileExceptions
Definition: layout.h:57
OutputList::enable
void enable(OutputGenerator::OutputType o)
Definition: outputlist.cpp:108
NamespaceLinkedRefMap::writeDeclaration
void writeDeclaration(OutputList &ol, const QCString &title, bool isConstantGroup=false, bool localName=FALSE)
Definition: namespacedef.cpp:1314
NamespaceDefSet
std::set< const NamespaceDef * > NamespaceDefSet
Definition: namespacedef.h:39
LayoutDocEntry::NamespaceInterfaces
@ NamespaceInterfaces
Definition: layout.h:53
DefinitionMixin< FileDef >::setLanguage
virtual void setLanguage(SrcLangExt lang)
Definition: definitionimpl.h:242
MemberList
A list of MemberDef objects as shown in documentation sections.
Definition: memberlist.h:81
LayoutDocEntry::FileInlineClasses
@ FileInlineClasses
Definition: layout.h:60
LayoutDocEntry::GroupNamespaces
@ GroupNamespaces
Definition: layout.h:63
ClassLinkedRefMap
Definition: classlist.h:30
FileDefImpl::title
virtual QCString title() const
Definition: filedef.cpp:1723
QCString::right
QCString right(size_t len) const
Definition: qcstring.h:217
OutputList::endCodeFragment
void endCodeFragment(const QCString &style)
Definition: outputlist.h:243
QCString::prepend
QCString & prepend(const char *s)
Definition: qcstring.h:339
MemberListType_docTypedefMembers
@ MemberListType_docTypedefMembers
Definition: types.h:166
FileDefImpl::getMemberList
virtual MemberList * getMemberList(MemberListType lt) const
Definition: filedef.cpp:1659
OutputList::endTextLink
void endTextLink()
Definition: outputlist.h:154
MemberDef::memberType
virtual MemberType memberType() const =0
convertToHtml
QCString convertToHtml(const QCString &s, bool keepEntities)
Definition: util.cpp:4063
LayoutDocEntry::MemberDecl
@ MemberDecl
Definition: layout.h:37
OutputList::startParagraph
void startParagraph(const QCString &classDef=QCString())
Definition: outputlist.h:107
LayoutDocEntry::AuthorSection
@ AuthorSection
Definition: layout.h:40
LayoutDocEntrySection::title
QCString title(SrcLangExt lang) const
Definition: layout.cpp:1661
createDocParser
std::unique_ptr< IDocParser > createDocParser()
Definition: docparser.cpp:179
FALSE
#define FALSE
Definition: qcstring.h:33
Translator::trAuthor
virtual QCString trAuthor(bool first_capital, bool singular)=0
OutputGenerator::Man
@ Man
Definition: outputgen.h:333
QCString
This is an alternative implementation of QCString.
Definition: qcstring.h:108