My Project
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Enumerations | Functions | Variables
index.h File Reference
#include <qlist.h>
#include <qcstring.h>

Go to the source code of this file.

Classes

class  IndexIntf
 Abstract interface for index generators. More...
 
class  IndexList
 A list of index interfaces. More...
 

Enumerations

enum  IndexSections {
  isTitlePageStart, isTitlePageAuthor, isMainPage, isModuleIndex,
  isDirIndex, isNamespaceIndex, isClassHierarchyIndex, isCompoundIndex,
  isFileIndex, isPageIndex, isModuleDocumentation, isDirDocumentation,
  isNamespaceDocumentation, isClassDocumentation, isFileDocumentation, isExampleDocumentation,
  isPageDocumentation, isPageDocumentation2, isEndIndex
}
 
enum  HighlightedItem {
  HLI_None =0, HLI_Main, HLI_Modules, HLI_Namespaces,
  HLI_Hierarchy, HLI_Classes, HLI_Annotated, HLI_Files,
  HLI_NamespaceMembers, HLI_Functions, HLI_Globals, HLI_Pages,
  HLI_Examples, HLI_Search, HLI_UserGroup, HLI_ClassVisible,
  HLI_NamespaceVisible, HLI_FileVisible
}
 
enum  ClassMemberHighlight {
  CMHL_All = 0, CMHL_Functions, CMHL_Variables, CMHL_Typedefs,
  CMHL_Enums, CMHL_EnumValues, CMHL_Properties, CMHL_Events,
  CMHL_Related, CMHL_Total = CMHL_Related+1
}
 
enum  FileMemberHighlight {
  FMHL_All = 0, FMHL_Functions, FMHL_Variables, FMHL_Typedefs,
  FMHL_Enums, FMHL_EnumValues, FMHL_Defines, FMHL_Total = FMHL_Defines+1
}
 
enum  NamespaceMemberHighlight {
  NMHL_All = 0, NMHL_Functions, NMHL_Variables, NMHL_Typedefs,
  NMHL_Enums, NMHL_EnumValues, NMHL_Total = NMHL_EnumValues+1
}
 
enum  ClassHighlight {
  CHL_All = 0, CHL_Classes, CHL_Structs, CHL_Unions,
  CHL_Interfaces, CHL_Protocols, CHL_Categories, CHL_Exceptions,
  CHL_Total = CHL_Exceptions+1
}
 

Functions

void writeGraphInfo (OutputList &ol)
 
void writeIndexHierarchy (OutputList &ol)
 
void countDataStructures ()
 
void startTitle (OutputList &ol, const char *fileName, Definition *def=0)
 
void endTitle (OutputList &ol, const char *fileName, const char *name)
 
void startFile (OutputList &ol, const char *name, const char *manName, const char *title, HighlightedItem hli=HLI_None, bool additionalIndices=FALSE, const char *altSidebarName=0)
 
void endFile (OutputList &ol, bool skipNavIndex=FALSE, bool skipEndContents=FALSE, const QCString &navPath=QCString())
 
void endFileWithNavPath (Definition *d, OutputList &ol)
 
void initClassMemberIndices ()
 
void initFileMemberIndices ()
 
void initNamespaceMemberIndices ()
 
void addClassMemberNameToIndex (MemberDef *md)
 
void addFileMemberNameToIndex (MemberDef *md)
 
void addNamespaceMemberNameToIndex (MemberDef *md)
 
QCString fixSpaces (const QCString &s)
 

Variables

int annotatedClasses
 
int hierarchyClasses
 
int documentedFiles
 
int documentedGroups
 
int documentedNamespaces
 
int indexedPages
 
int documentedClassMembers [CMHL_Total]
 
int documentedFileMembers [FMHL_Total]
 
int documentedNamespaceMembers [NMHL_Total]
 
int documentedDirs
 
int documentedHtmlFiles
 
int documentedPages
 

Enumeration Type Documentation

Enumerator
CHL_All 
CHL_Classes 
CHL_Structs 
CHL_Unions 
CHL_Interfaces 
CHL_Protocols 
CHL_Categories 
CHL_Exceptions 
CHL_Total 

Definition at line 241 of file index.h.

Enumerator
CMHL_All 
CMHL_Functions 
CMHL_Variables 
CMHL_Typedefs 
CMHL_Enums 
CMHL_EnumValues 
CMHL_Properties 
CMHL_Events 
CMHL_Related 
CMHL_Total 

Definition at line 204 of file index.h.

Enumerator
FMHL_All 
FMHL_Functions 
FMHL_Variables 
FMHL_Typedefs 
FMHL_Enums 
FMHL_EnumValues 
FMHL_Defines 
FMHL_Total 

Definition at line 218 of file index.h.

Enumerator
HLI_None 
HLI_Main 
HLI_Modules 
HLI_Namespaces 
HLI_Hierarchy 
HLI_Classes 
HLI_Annotated 
HLI_Files 
HLI_NamespaceMembers 
HLI_Functions 
HLI_Globals 
HLI_Pages 
HLI_Examples 
HLI_Search 
HLI_UserGroup 
HLI_ClassVisible 
HLI_NamespaceVisible 
HLI_FileVisible 

Definition at line 180 of file index.h.

Enumerator
isTitlePageStart 
isTitlePageAuthor 
isMainPage 
isModuleIndex 
isDirIndex 
isNamespaceIndex 
isClassHierarchyIndex 
isCompoundIndex 
isFileIndex 
isPageIndex 
isModuleDocumentation 
isDirDocumentation 
isNamespaceDocumentation 
isClassDocumentation 
isFileDocumentation 
isExampleDocumentation 
isPageDocumentation 
isPageDocumentation2 
isEndIndex 

Definition at line 157 of file index.h.

Enumerator
NMHL_All 
NMHL_Functions 
NMHL_Variables 
NMHL_Typedefs 
NMHL_Enums 
NMHL_EnumValues 
NMHL_Total 

Definition at line 230 of file index.h.

Function Documentation

void addClassMemberNameToIndex ( MemberDef md)

Definition at line 2265 of file index.cpp.

References LetterToIndexMap< T >::append(), CMHL_All, CMHL_Enums, CMHL_EnumValues, CMHL_Events, CMHL_Functions, CMHL_Properties, CMHL_Related, CMHL_Typedefs, CMHL_Variables, Config_getBool, documentedClassMembers, MemberDef::getClassDef(), MemberDef::getEnumScope(), getPrefixIndex(), getUtf8CodeToLower(), MemberDef::isEnumerate(), MemberDef::isEnumValue(), MemberDef::isEvent(), MemberDef::isForeign(), MemberDef::isFriend(), MemberDef::isFunction(), ClassDef::isLinkableInProject(), MemberDef::isLinkableInProject(), MemberDef::isProperty(), MemberDef::isRelated(), MemberDef::isSignal(), MemberDef::isSlot(), MemberDef::isStrong(), MemberDef::isTypedef(), MemberDef::isVariable(), Definition::name(), ClassDef::templateMaster(), and MemberDef::typeString().

Referenced by addMembersToIndex().

{
static bool hideFriendCompounds = Config_getBool(HIDE_FRIEND_COMPOUNDS);
ClassDef *cd=0;
if (md->isLinkableInProject() &&
(cd=md->getClassDef()) &&
cd->templateMaster()==0)
{
QCString n = md->name();
int index = getPrefixIndex(n);
uint letter = getUtf8CodeToLower(n,index);
if (!n.isEmpty())
{
bool isFriendToHide = hideFriendCompounds &&
(QCString(md->typeString())=="friend class" ||
QCString(md->typeString())=="friend struct" ||
QCString(md->typeString())=="friend union");
if (!(md->isFriend() && isFriendToHide) &&
(!md->isEnumValue() || (md->getEnumScope() && !md->getEnumScope()->isStrong()))
)
{
g_memberIndexLetterUsed[CMHL_All].append(letter,md);
}
if (md->isFunction() || md->isSlot() || md->isSignal())
{
}
else if (md->isVariable())
{
}
else if (md->isTypedef())
{
}
else if (md->isEnumerate())
{
g_memberIndexLetterUsed[CMHL_Enums].append(letter,md);
}
else if (md->isEnumValue() && md->getEnumScope() && !md->getEnumScope()->isStrong())
{
}
else if (md->isProperty())
{
}
else if (md->isEvent())
{
}
else if (md->isRelated() || md->isForeign() ||
(md->isFriend() && !isFriendToHide))
{
}
}
}
}
void addFileMemberNameToIndex ( MemberDef md)

Definition at line 2407 of file index.cpp.

References LetterToIndexMap< T >::append(), documentedFileMembers, FMHL_All, FMHL_Defines, FMHL_Enums, FMHL_EnumValues, FMHL_Functions, FMHL_Typedefs, FMHL_Variables, MemberDef::getEnumScope(), MemberDef::getFileDef(), getPrefixIndex(), getUtf8CodeToLower(), MemberDef::isDefine(), MemberDef::isEnumerate(), MemberDef::isEnumValue(), MemberDef::isFunction(), FileDef::isLinkableInProject(), MemberDef::isLinkableInProject(), MemberDef::isStrong(), MemberDef::isTypedef(), MemberDef::isVariable(), and Definition::name().

Referenced by addMembersToIndex().

{
FileDef *fd=md->getFileDef();
if (fd && fd->isLinkableInProject() && md->isLinkableInProject())
{
QCString n = md->name();
int index = getPrefixIndex(n);
uint letter = getUtf8CodeToLower(n,index);
if (!n.isEmpty())
{
if (!md->isEnumValue() || (md->getEnumScope() && !md->getEnumScope()->isStrong()))
{
g_fileIndexLetterUsed[FMHL_All].append(letter,md);
}
if (md->isFunction())
{
}
else if (md->isVariable())
{
}
else if (md->isTypedef())
{
}
else if (md->isEnumerate())
{
g_fileIndexLetterUsed[FMHL_Enums].append(letter,md);
}
else if (md->isEnumValue() && md->getEnumScope() && !md->getEnumScope()->isStrong())
{
}
else if (md->isDefine())
{
g_fileIndexLetterUsed[FMHL_Defines].append(letter,md);
}
}
}
}
void addNamespaceMemberNameToIndex ( MemberDef md)

Definition at line 2350 of file index.cpp.

References LetterToIndexMap< T >::append(), documentedNamespaceMembers, MemberDef::getEnumScope(), MemberDef::getNamespaceDef(), getPrefixIndex(), getUtf8CodeToLower(), MemberDef::isEnumerate(), MemberDef::isEnumValue(), MemberDef::isFunction(), NamespaceDef::isLinkableInProject(), MemberDef::isLinkableInProject(), MemberDef::isStrong(), MemberDef::isTypedef(), MemberDef::isVariable(), Definition::name(), NMHL_All, NMHL_Enums, NMHL_EnumValues, NMHL_Functions, NMHL_Typedefs, and NMHL_Variables.

Referenced by addMembersToIndex().

{
if (nd && nd->isLinkableInProject() && md->isLinkableInProject())
{
QCString n = md->name();
int index = getPrefixIndex(n);
uint letter = getUtf8CodeToLower(n,index);
if (!n.isEmpty())
{
if (!md->isEnumValue() || (md->getEnumScope() && !md->getEnumScope()->isStrong()))
{
}
if (md->isFunction())
{
}
else if (md->isVariable())
{
}
else if (md->isTypedef())
{
}
else if (md->isEnumerate())
{
}
else if (md->isEnumValue() && md->getEnumScope() && !md->getEnumScope()->isStrong())
{
}
}
}
}
void countDataStructures ( )
void endFile ( OutputList ol,
bool  skipNavIndex = FALSE,
bool  skipEndContents = FALSE,
const QCString &  navPath = QCString() 
)
void endFileWithNavPath ( Definition d,
OutputList ol 
)
void endTitle ( OutputList ol,
const char *  fileName,
const char *  name 
)
QCString fixSpaces ( const QCString &  s)
void initClassMemberIndices ( )

Definition at line 2255 of file index.cpp.

References SIntDict< T >::clear(), CMHL_Total, and documentedClassMembers.

Referenced by initDoxygen().

{
int j=0;
for (j=0;j<CMHL_Total;j++)
{
}
}
void initFileMemberIndices ( )

Definition at line 2397 of file index.cpp.

References SIntDict< T >::clear(), documentedFileMembers, and NMHL_Total.

Referenced by initDoxygen().

{
int j=0;
for (j=0;j<NMHL_Total;j++)
{
}
}
void initNamespaceMemberIndices ( )

Definition at line 2340 of file index.cpp.

References SIntDict< T >::clear(), documentedNamespaceMembers, and NMHL_Total.

Referenced by initDoxygen().

{
int j=0;
for (j=0;j<NMHL_Total;j++)
{
}
}
void startFile ( OutputList ol,
const char *  name,
const char *  manName,
const char *  title,
HighlightedItem  hli = HLI_None,
bool  additionalIndices = FALSE,
const char *  altSidebarName = 0 
)
void startTitle ( OutputList ol,
const char *  fileName,
Definition def = 0 
)
void writeGraphInfo ( OutputList ol)

Definition at line 3251 of file index.cpp.

References Config_getBool, Config_getString, OutputList::disableAllBut(), endFile(), endTitle(), OutputList::generateDoc(), generateGraphLegend(), getDotImageExtension(), OutputGenerator::Html, OutputList::parseText(), OutputList::popGeneratorState(), OutputList::pushGeneratorState(), OutputList::startContents(), startFile(), startTitle(), theTranslator, Translator::trLegendDocs(), and Translator::trLegendTitle().

Referenced by generateOutput().

{
if (!Config_getBool(HAVE_DOT) || !Config_getBool(GENERATE_HTML)) return;
bool &stripCommentsStateRef = Config_getBool(STRIP_CODE_COMMENTS);
bool oldStripCommentsState = stripCommentsStateRef;
bool &createSubdirs = Config_getBool(CREATE_SUBDIRS);
bool oldCreateSubdirs = createSubdirs;
// temporarily disable the stripping of comments for our own code example!
stripCommentsStateRef = FALSE;
// temporarily disable create subdirs for linking to our example
createSubdirs = FALSE;
startFile(ol,"graph_legend",0,theTranslator->trLegendTitle().data());
startTitle(ol,0);
endTitle(ol,0,0);
QCString legendDocs = theTranslator->trLegendDocs();
int s = legendDocs.find("<center>");
int e = legendDocs.find("</center>");
QCString imgExt = getDotImageExtension();
if (imgExt=="svg" && s!=-1 && e!=-1)
{
legendDocs = legendDocs.left(s+8) + "[!-- SVG 0 --]\n" + legendDocs.mid(e);
//printf("legendDocs=%s\n",legendDocs.data());
}
FileDef fd("","graph_legend");
ol.generateDoc("graph_legend",1,&fd,0,legendDocs,FALSE,FALSE);
// restore config settings
stripCommentsStateRef = oldStripCommentsState;
createSubdirs = oldCreateSubdirs;
endFile(ol);
}
void writeIndexHierarchy ( OutputList ol)

Variable Documentation

int annotatedClasses
int documentedClassMembers[CMHL_Total]
int documentedDirs

Definition at line 67 of file index.cpp.

Referenced by countDataStructures().

int documentedFileMembers[FMHL_Total]
int documentedFiles

Definition at line 58 of file index.cpp.

Referenced by countDataStructures(), writeFileIndex(), and writeIndex().

int documentedGroups

Definition at line 59 of file index.cpp.

Referenced by countDataStructures(), quickLinkVisible(), writeGroupIndex(), and writeIndex().

int documentedHtmlFiles
int documentedNamespaceMembers[NMHL_Total]
int documentedNamespaces
int documentedPages

Definition at line 66 of file index.cpp.

Referenced by countDataStructures(), generatePageDocs(), and writeIndex().

int hierarchyClasses
int indexedPages

Definition at line 61 of file index.cpp.

Referenced by countDataStructures(), quickLinkVisible(), and writePageIndex().