Skip to main content

The LatexGenerator Class Reference

Generator for LaTeX output. More...

Declaration

class LatexGenerator { ... }

Included Headers

#include <src/latexgen.h>

Base classes

classOutputGenerator

Base class for shared implementation for all output generators. More...

classOutputGenIntf

Abstract interface for output generators. More...

Public Constructors Index

LatexGenerator ()
LatexGenerator (const LatexGenerator &)
LatexGenerator (LatexGenerator &&)=delete

Public Destructor Index

~LatexGenerator ()

Public Operators Index

LatexGenerator &operator= (const LatexGenerator &)
LatexGenerator &operator= (LatexGenerator &&)=delete

Public Member Functions Index

voidclearBuffer ()
voidsetCurrentDoc (const Definition *, const QCString &, bool)
voidaddWord (const QCString &, bool)
OutputTypetype () const override
std::unique_ptr< OutputGenIntf >clone () override
voidaddCodeGen (OutputCodeList &list) override
voidcleanup () override
voidwriteDoc (const IDocNodeAST *node, const Definition *ctx, const MemberDef *, int id) override
voidstartFile (const QCString &name, const QCString &manName, const QCString &title, int id, int hierarchyLevel) override
voidendFile () override
voidwriteSearchInfo () override
voidwriteFooter (const QCString &) override
voidstartPageDoc (const QCString &) override
voidendPageDoc () override
voidstartIndexSection (IndexSection) override
voidendIndexSection (IndexSection) override
voidwritePageLink (const QCString &, bool) override
voidstartProjectNumber () override
voidendProjectNumber () override
voidwriteStyleInfo (int part) override
voidstartTitleHead (const QCString &) override
voidendTitleHead (const QCString &, const QCString &name) override
voidstartParagraph (const QCString &classDef) override
voidendParagraph () override
voidwriteString (const QCString &text) override
voidstartIndexListItem () override
voidendIndexListItem () override
voidstartIndexList () override
voidendIndexList () override
voidstartIndexKey () override
voidendIndexKey () override
voidstartIndexValue (bool) override
voidendIndexValue (const QCString &, bool) override
voidstartItemList () override
voidendItemList () override
voidstartIndexItem (const QCString &ref, const QCString &file) override
voidendIndexItem (const QCString &ref, const QCString &file) override
voiddocify (const QCString &text) override
voidwriteObjectLink (const QCString &ref, const QCString &file, const QCString &anchor, const QCString &name) override
voidstartTextLink (const QCString &, const QCString &) override
voidendTextLink () override
voidstartTypewriter () override
voidendTypewriter () override
voidstartGroupHeader (const QCString &, int) override
voidendGroupHeader (int) override
voidstartItemListItem () override
voidendItemListItem () override
voidstartMemberSections () override
voidendMemberSections () override
voidstartHeaderSection () override
voidendHeaderSection () override
voidstartMemberHeader (const QCString &, int) override
voidendMemberHeader () override
voidstartMemberSubtitle () override
voidendMemberSubtitle () override
voidstartMemberDocList () override
voidendMemberDocList () override
voidstartMemberList () override
voidendMemberList () override
voidstartInlineHeader () override
voidendInlineHeader () override
voidstartAnonTypeScope (int) override
voidendAnonTypeScope (int) override
voidstartMemberItem (const QCString &, MemberItemType, const QCString &) override
voidendMemberItem (MemberItemType) override
voidstartMemberTemplateParams () override
voidendMemberTemplateParams (const QCString &, const QCString &) override
voidstartCompoundTemplateParams () override
voidendCompoundTemplateParams () override
voidstartMemberGroupHeader (const QCString &, bool) override
voidendMemberGroupHeader () override
voidstartMemberGroupDocs () override
voidendMemberGroupDocs () override
voidstartMemberGroup () override
voidendMemberGroup (bool) override
voidinsertMemberAlign (bool) override
voidinsertMemberAlignLeft (MemberItemType, bool) override
voidwriteRuler () override
voidwriteAnchor (const QCString &fileName, const QCString &name) override
voidstartEmphasis () override
voidendEmphasis () override
voidstartBold () override
voidendBold () override
voidlineBreak (const QCString &style=QCString()) override
voidstartMemberDoc (const QCString &, const QCString &, const QCString &, const QCString &, int, int, bool) override
voidendMemberDoc (bool) override
voidstartDoxyAnchor (const QCString &, const QCString &, const QCString &, const QCString &, const QCString &) override
voidendDoxyAnchor (const QCString &, const QCString &) override
voidaddLabel (const QCString &, const QCString &) override
voidwriteChar (char c) override
voidwriteLatexSpacing () override
voidwriteStartAnnoItem (const QCString &type, const QCString &file, const QCString &path, const QCString &name) override
voidstartCenter () override
voidendCenter () override
voidstartSmall () override
voidendSmall () override
voidstartMemberDescription (const QCString &, const QCString &, bool) override
voidendMemberDescription () override
voidstartMemberDeclaration () override
voidendMemberDeclaration (const QCString &, const QCString &) override
voidwriteInheritedSectionTitle (const QCString &, const QCString &, const QCString &, const QCString &, const QCString &, const QCString &) override
voidstartExamples () override
voidendExamples () override
voidstartDescForItem () override
voidendDescForItem () override
voidstartSection (const QCString &, const QCString &, SectionType) override
voidendSection (const QCString &, SectionType) override
voidaddIndexItem (const QCString &, const QCString &) override
voidstartIndent () override
voidendIndent () override
voidwriteSynopsis () override
voidstartClassDiagram () override
voidendClassDiagram (const ClassDiagram &, const QCString &, const QCString &) override
voidstartPageRef () override
voidendPageRef (const QCString &, const QCString &) override
voidstartQuickIndices () override
voidendQuickIndices () override
voidwriteSplitBar (const QCString &, const QCString &) override
voidwriteNavigationPath (const QCString &) override
voidwriteLogo () override
voidwriteQuickLinks (HighlightedItem, const QCString &, bool) override
voidwriteSummaryLink (const QCString &, const QCString &, const QCString &, bool) override
voidwritePageOutline () override
voidstartContents () override
voidendContents () override
voidwriteNonBreakableSpace (int) override
voidstartDescTable (const QCString &title, const bool hasInits) override
voidendDescTable () override
voidstartDescTableRow () override
voidendDescTableRow () override
voidstartDescTableTitle () override
voidendDescTableTitle () override
voidstartDescTableInit () override
voidendDescTableInit () override
voidstartDescTableData () override
voidendDescTableData () override
voidlastIndexPage () override
voidstartDotGraph () override
voidendDotGraph (DotClassGraph &) override
voidstartInclDepGraph () override
voidendInclDepGraph (DotInclDepGraph &) override
voidstartCallGraph () override
voidstartGroupCollaboration () override
voidendGroupCollaboration (DotGroupCollaboration &g) override
voidendCallGraph (DotCallGraph &) override
voidstartDirDepGraph () override
voidendDirDepGraph (DotDirDeps &g) override
voidwriteGraphicalHierarchy (DotGfxHierarchyTable &) override
voidstartTextBlock (bool) override
voidendTextBlock (bool) override
voidstartMemberDocPrefixItem () override
voidendMemberDocPrefixItem () override
voidstartMemberDocName (bool) override
voidendMemberDocName () override
voidstartParameterType (bool, const QCString &) override
voidendParameterType () override
voidstartParameterName (bool) override
voidendParameterName () override
voidstartParameterExtra () override
voidendParameterExtra (bool last, bool one, bool bracket) override
voidstartParameterDefVal (const char *s) override
voidendParameterDefVal () override
voidstartParameterList (bool) override
voidendParameterList () override
voidexceptionEntry (const QCString &, bool) override
voidstartConstraintList (const QCString &) override
voidstartConstraintParam () override
voidendConstraintParam () override
voidstartConstraintType () override
voidendConstraintType () override
voidstartConstraintDocs () override
voidendConstraintDocs () override
voidendConstraintList () override
voidstartMemberDocSimple (bool) override
voidendMemberDocSimple (bool) override
voidstartInlineMemberType () override
voidendInlineMemberType () override
voidstartInlineMemberName () override
voidendInlineMemberName () override
voidstartInlineMemberDoc () override
voidendInlineMemberDoc () override
voidstartLabels () override
voidwriteLabel (const QCString &l, bool isLast) override
voidendLabels () override
voidstartLocalToc (int level) override
voidendLocalToc () override
voidstartTocEntry (const SectionInfo *) override
voidendTocEntry (const SectionInfo *) override
voidstartPlainFile (const QCString &name) override
voidendPlainFile () override

Private Member Functions Index

voidstartTitle ()
voidendTitle ()

Private Member Attributes Index

boolm_firstDescItem = true
boolm_disableLinks = false
QCStringm_relPath
intm_indent = 0
boolm_templateMemberItem = false
std::unique_ptr< OutputCodeList >m_codeList
LatexCodeGenerator *m_codeGen
boolm_insideTableEnv = false
intm_hierarchyLevel = 0

Public Static Functions Index

static voidinit ()
static voidwriteStyleSheetFile (TextStream &t)
static voidwriteHeaderFile (TextStream &t)
static voidwriteFooterFile (TextStream &t)

Description

Generator for LaTeX output.

Definition at line 93 of file latexgen.h.

Public Constructors

LatexGenerator()

LatexGenerator::LatexGenerator ()

Declaration at line 96 of file latexgen.h, definition at line 319 of file latexgen.cpp.

References Config_getString, m_codeGen, m_codeList, OutputGenerator::m_t and OutputGenerator::OutputGenerator.

Referenced by LatexGenerator, LatexGenerator, operator= and operator=.

LatexGenerator()

LatexGenerator()

LatexGenerator::LatexGenerator (LatexGenerator &&)
delete

Definition at line 99 of file latexgen.h.

Reference LatexGenerator.

Public Destructor

~LatexGenerator()

LatexGenerator::~LatexGenerator ()

Definition at line 101 of file latexgen.h.

Public Operators

operator=()

LatexGenerator & LatexGenerator::operator= (const LatexGenerator & og)

Declaration at line 98 of file latexgen.h, definition at line 339 of file latexgen.cpp.

340{
341 if (this!=&og)
342 {
343 m_dir = og.m_dir;
344 m_codeList = std::make_unique<OutputCodeList>(*og.m_codeList);
346 m_codeGen->setTextStream(&m_t);
350 m_indent = og.m_indent;
353 }
354 return *this;
355}

References Latex, LatexGenerator, m_codeGen, m_codeList, OutputGenerator::m_dir, m_disableLinks, m_firstDescItem, m_hierarchyLevel, m_indent, m_relPath, OutputGenerator::m_t and m_templateMemberItem.

operator=()

LatexGenerator & LatexGenerator::operator= (LatexGenerator &&)
delete

Definition at line 100 of file latexgen.h.

Reference LatexGenerator.

Public Member Functions

addCodeGen()

void LatexGenerator::addCodeGen (OutputCodeList & list)
virtual

Declaration at line 116 of file latexgen.h, definition at line 359 of file latexgen.cpp.

References OutputCodeList::add and m_codeGen.

addIndexItem()

void LatexGenerator::addIndexItem (const QCString & s1, const QCString & s2)
virtual

Declaration at line 229 of file latexgen.h, definition at line 1695 of file latexgen.cpp.

1696{
1697 if (!s1.isEmpty())
1698 {
1699 m_t << "\\index{";
1701 m_t << "@{";
1703 m_t << "}";
1704 if (!s2.isEmpty())
1705 {
1706 m_t << "!";
1708 m_t << "@{";
1710 m_t << "}";
1711 }
1712 m_t << "}";
1713 }
1714}

References QCString::isEmpty, latexEscapeIndexChars, latexEscapeLabelName and OutputGenerator::m_t.

addLabel()

void LatexGenerator::addLabel (const QCString & fName, const QCString & anchor)
virtual

Declaration at line 208 of file latexgen.h, definition at line 1661 of file latexgen.cpp.

1661void LatexGenerator::addLabel(const QCString &fName, const QCString &anchor)
1662{
1663 m_t << "\\label{";
1664 if (!fName.isEmpty()) m_t << stripPath(fName);
1665 if (!anchor.isEmpty()) m_t << "_" << anchor;
1666 if (m_insideTableEnv) m_t << "}";
1667 m_t << "} \n";
1668}

References QCString::isEmpty, m_insideTableEnv, OutputGenerator::m_t and stripPath.

addWord()

void LatexGenerator::addWord (const QCString &, bool)
inline

Definition at line 110 of file latexgen.h.

110 void addWord(const QCString &,bool) {}

cleanup()

void LatexGenerator::cleanup ()
virtual

Declaration at line 117 of file latexgen.h, definition at line 676 of file latexgen.cpp.

677{
678 QCString dname = Config_getString(LATEX_OUTPUT);
679 Dir d(dname.str());
680 clearSubDirs(d);
681}

References clearSubDirs, Config_getString and QCString::str.

clearBuffer()

void LatexGenerator::clearBuffer ()

Definition at line 107 of file latexgen.h.

clone()

std::unique_ptr< OutputGenIntf > LatexGenerator::clone ()
inline virtual

Definition at line 115 of file latexgen.h.

115 std::unique_ptr<OutputGenIntf> clone() override { return std::make_unique<LatexGenerator>(*this); }

docify()

void LatexGenerator::docify (const QCString & text)
virtual

Declaration at line 151 of file latexgen.h, definition at line 1764 of file latexgen.cpp.

1765{
1767 m_codeGen->insideTabbing(), // insideTabbing
1768 false, // insidePre
1769 false, // insideItem
1770 m_codeGen->usedTableLevel()>0, // insideTable
1771 false // keepSpaces
1772 );
1773}

References filterLatexString, m_codeGen and OutputGenerator::m_t.

Referenced by startConstraintList, startExamples, startMemberDocSimple, startParameterDefVal, startParameterType, writeChar and writeStartAnnoItem.

endAnonTypeScope()

void LatexGenerator::endAnonTypeScope (int indent)
virtual

Declaration at line 179 of file latexgen.h, definition at line 1807 of file latexgen.cpp.

1808{
1809 if (indent==0)
1810 {
1811 m_t << "\n" << "\\end{tabbing}";
1812 m_codeGen->setInsideTabbing(false);
1813 }
1814 m_indent=indent;
1815}

References m_codeGen, m_indent and OutputGenerator::m_t.

endBold()

void LatexGenerator::endBold ()
inline virtual

Definition at line 202 of file latexgen.h.

202 void endBold() override { m_t << "}"; }

Reference OutputGenerator::m_t.

endCallGraph()

void LatexGenerator::endCallGraph (DotCallGraph & g)
virtual

endCenter()

void LatexGenerator::endCenter ()
inline virtual

Definition at line 214 of file latexgen.h.

214 void endCenter() override { m_t << "\\end{center}\n"; }

Reference OutputGenerator::m_t.

endClassDiagram()

void LatexGenerator::endClassDiagram (const ClassDiagram & d, const QCString & fileName, const QCString &)
virtual

Declaration at line 234 of file latexgen.h, definition at line 1789 of file latexgen.cpp.

1790 const QCString &fileName,const QCString &)
1791{
1793}

References OutputGenerator::dir, OutputGenerator::fileName, OutputGenerator::m_t and ClassDiagram::writeFigure.

endCompoundTemplateParams()

void LatexGenerator::endCompoundTemplateParams ()
inline virtual

Definition at line 185 of file latexgen.h.

185 void endCompoundTemplateParams() override { m_t << "}\n"; }

Reference OutputGenerator::m_t.

endConstraintDocs()

void LatexGenerator::endConstraintDocs ()
virtual

Declaration at line 298 of file latexgen.h, definition at line 2184 of file latexgen.cpp.

endConstraintList()

void LatexGenerator::endConstraintList ()
virtual

Declaration at line 299 of file latexgen.h, definition at line 2188 of file latexgen.cpp.

2189{
2190 m_t << "\\end{description}\n";
2191 m_t << "\\end{Desc}\n";
2192}

Reference OutputGenerator::m_t.

endConstraintParam()

void LatexGenerator::endConstraintParam ()
virtual

Declaration at line 294 of file latexgen.h, definition at line 2166 of file latexgen.cpp.

endConstraintType()

void LatexGenerator::endConstraintType ()
virtual

Declaration at line 296 of file latexgen.h, definition at line 2175 of file latexgen.cpp.

2176{
2177 m_t << "}]";
2178}

Reference OutputGenerator::m_t.

endContents()

void LatexGenerator::endContents ()
inline virtual

Definition at line 246 of file latexgen.h.

246 void endContents() override {}

endDescForItem()

void LatexGenerator::endDescForItem ()
inline virtual

Definition at line 226 of file latexgen.h.

226 void endDescForItem() override {}

endDescTable()

void LatexGenerator::endDescTable ()
virtual

Declaration at line 250 of file latexgen.h, definition at line 1913 of file latexgen.cpp.

1914{
1915 m_codeGen->decUsedTableLevel();
1916 m_t << "\\end{DoxyEnumFields}\n";
1917}

References m_codeGen and OutputGenerator::m_t.

endDescTableData()

void LatexGenerator::endDescTableData ()
virtual

Declaration at line 258 of file latexgen.h, definition at line 1953 of file latexgen.cpp.

1954{
1955 m_t << "\\\\\n\\hline\n\n";
1956}

Reference OutputGenerator::m_t.

endDescTableInit()

void LatexGenerator::endDescTableInit ()
virtual

Declaration at line 256 of file latexgen.h, definition at line 1944 of file latexgen.cpp.

endDescTableRow()

void LatexGenerator::endDescTableRow ()
virtual

Declaration at line 252 of file latexgen.h, definition at line 1926 of file latexgen.cpp.

endDescTableTitle()

void LatexGenerator::endDescTableTitle ()
virtual

Declaration at line 254 of file latexgen.h, definition at line 1935 of file latexgen.cpp.

endDirDepGraph()

void LatexGenerator::endDirDepGraph (DotDirDeps & g)
virtual

endDotGraph()

void LatexGenerator::endDotGraph (DotClassGraph & g)
virtual

endDoxyAnchor()

void LatexGenerator::endDoxyAnchor (const QCString &, const QCString &)
virtual

Declaration at line 207 of file latexgen.h, definition at line 1657 of file latexgen.cpp.

1657void LatexGenerator::endDoxyAnchor(const QCString &/* fName */,const QCString &/* anchor */)
1658{
1659}

endEmphasis()

void LatexGenerator::endEmphasis ()
inline virtual

Definition at line 200 of file latexgen.h.

200 void endEmphasis() override { m_t << "}"; }

Reference OutputGenerator::m_t.

endExamples()

void LatexGenerator::endExamples ()
virtual

Declaration at line 224 of file latexgen.h, definition at line 2076 of file latexgen.cpp.

2077{
2078 m_t << "\\end{Desc}\n";
2079}

Reference OutputGenerator::m_t.

endFile()

void LatexGenerator::endFile ()
virtual

Declaration at line 120 of file latexgen.h, definition at line 720 of file latexgen.cpp.

721{
723 m_codeGen->setSourceFileName("");
724}

References endPlainFile and m_codeGen.

endGroupCollaboration()

endGroupHeader()

void LatexGenerator::endGroupHeader (int)
virtual

Declaration at line 160 of file latexgen.h, definition at line 1538 of file latexgen.cpp.

1539{
1541 m_t << "}\n";
1542}

References FALSE, m_disableLinks and OutputGenerator::m_t.

endHeaderSection()

void LatexGenerator::endHeaderSection ()
inline virtual

Definition at line 167 of file latexgen.h.

167 void endHeaderSection() override {}

endInclDepGraph()

void LatexGenerator::endInclDepGraph (DotInclDepGraph & g)
virtual

endIndent()

void LatexGenerator::endIndent ()
inline virtual

Definition at line 231 of file latexgen.h.

231 void endIndent() override {}

endIndexItem()

void LatexGenerator::endIndexItem (const QCString & ref, const QCString & file)
virtual

Declaration at line 150 of file latexgen.h, definition at line 1333 of file latexgen.cpp.

1334{
1335 if (ref.isEmpty() && !fn.isEmpty())
1336 {
1337 m_t << "}{\\pageref{" << stripPath(fn) << "}}{}\n";
1338 }
1339}

References QCString::isEmpty, OutputGenerator::m_t and stripPath.

endIndexKey()

void LatexGenerator::endIndexKey ()
virtual

Declaration at line 144 of file latexgen.h, definition at line 1355 of file latexgen.cpp.

1356{
1357}

endIndexList()

void LatexGenerator::endIndexList ()
inline virtual

Definition at line 142 of file latexgen.h.

142 void endIndexList() override { m_t << "\\end{DoxyCompactList}\n"; }

Reference OutputGenerator::m_t.

endIndexListItem()

void LatexGenerator::endIndexListItem ()
inline virtual

Definition at line 140 of file latexgen.h.

140 void endIndexListItem() override {}

endIndexSection()

void LatexGenerator::endIndexSection (IndexSection is)
virtual

Declaration at line 128 of file latexgen.h, definition at line 1078 of file latexgen.cpp.

1079{
1080 switch (is)
1081 {
1083 break;
1085 break;
1087 {
1089 {
1090 writePageLink(Doxygen::mainPage->getOutputFileBase(), FALSE);
1091 }
1092 }
1093 break;
1095 m_t << "}\n\\input{modules}\n";
1096 break;
1098 m_t << "}\n\\input{topics}\n";
1099 break;
1101 m_t << "}\n\\input{dirs}\n";
1102 break;
1104 m_t << "}\n\\input{namespaces}\n";
1105 break;
1107 m_t << "}\n\\input{concepts}\n";
1108 break;
1110 m_t << "}\n\\input{hierarchy}\n";
1111 break;
1113 m_t << "}\n\\input{annotated}\n";
1114 break;
1116 m_t << "}\n\\input{files}\n";
1117 break;
1119 m_t << "}\n\\input{pages}\n";
1120 break;
1122 {
1123 m_t << "}\n";
1124 for (const auto &gd : *Doxygen::groupLinkedMap)
1125 {
1126 if (!gd->isReference() && !gd->isASubGroup())
1127 {
1128 writePageLink(gd->getOutputFileBase(), FALSE);
1129 }
1130 }
1131 }
1132 break;
1134 {
1135 m_t << "}\n";
1136 for (const auto &mod : ModuleManager::instance().modules())
1137 {
1138 if (!mod->isReference() && mod->isPrimaryInterface())
1139 {
1140 writePageLink(mod->getOutputFileBase(), FALSE);
1141 }
1142 }
1143 }
1144 break;
1146 {
1147 bool found=FALSE;
1148 for (const auto &dd : *Doxygen::dirLinkedMap)
1149 {
1150 if (dd->isLinkableInProject())
1151 {
1152 if (!found)
1153 {
1154 m_t << "}\n";
1155 found = TRUE;
1156 }
1157 m_t << "\\input{" << dd->getOutputFileBase() << "}\n";
1158 }
1159 }
1160 }
1161 break;
1163 {
1164 bool found=FALSE;
1165 for (const auto &nd : *Doxygen::namespaceLinkedMap)
1166 {
1167 if (nd->isLinkableInProject() && !nd->isAlias())
1168 {
1169 if (!found)
1170 {
1171 m_t << "}\n";
1172 found=true;
1173 }
1174 m_t << "\\input{" << nd->getOutputFileBase() << "}\n";
1175 }
1176 }
1177 }
1178 break;
1180 {
1181 bool found=FALSE;
1182 for (const auto &cd : *Doxygen::conceptLinkedMap)
1183 {
1184 if (cd->isLinkableInProject() && !cd->isAlias())
1185 {
1186 if (!found)
1187 {
1188 m_t << "}\n";
1189 found=true;
1190 }
1191 m_t << "\\input{" << cd->getOutputFileBase() << "}\n";
1192 }
1193 }
1194 }
1195 break;
1197 {
1198 bool found=FALSE;
1199 for (const auto &cd : *Doxygen::classLinkedMap)
1200 {
1201 if (cd->isLinkableInProject() &&
1202 !cd->isImplicitTemplateInstance() &&
1203 !cd->isEmbeddedInOuterScope() &&
1204 !cd->isAlias()
1205 )
1206 {
1207 if (!found)
1208 {
1209 m_t << "}\n"; // end doxysection or chapter title
1210 found=TRUE;
1211 }
1212 m_t << "\\input{" << cd->getOutputFileBase() << "}\n";
1213 }
1214 }
1215 }
1216 break;
1218 {
1219 bool isFirst=TRUE;
1220 for (const auto &fn : *Doxygen::inputNameLinkedMap)
1221 {
1222 for (const auto &fd : *fn)
1223 {
1224 if (fd->isLinkableInProject())
1225 {
1226 if (isFirst)
1227 {
1228 m_t << "}\n"; // end doxysection or chapter title
1229 }
1230 isFirst=FALSE;
1231 m_t << "\\input{" << fd->getOutputFileBase() << "}\n";
1232 }
1233 if (fd->generateSourceFile())
1234 {
1235 if (isFirst)
1236 {
1237 m_t << "}\n"; // end doxysection or chapter title
1238 }
1239 isFirst=FALSE;
1240 m_t << "\\input{" << fd->getSourceFileBase() << "}\n";
1241 }
1242 }
1243 }
1244 }
1245 break;
1247 {
1248 m_t << "}\n";
1249 for (const auto &pd : *Doxygen::exampleLinkedMap)
1250 {
1251 m_t << "\\input{" << pd->getOutputFileBase() << "}\n";
1252 }
1253 }
1254 break;
1256 {
1257 for (const auto &pd : *Doxygen::pageLinkedMap)
1258 {
1259 if (!pd->getGroupDef() && !pd->isReference() && !pd->hasParentPage()
1260 && pd->name() != "citelist" && Doxygen::mainPage.get() != pd.get())
1261 {
1262 writePageLink(pd->getOutputFileBase(), FALSE);
1263 }
1264 }
1265 }
1266 break;
1268 break;
1271 break;
1272 }
1273}

References Doxygen::classLinkedMap, Doxygen::conceptLinkedMap, Config_getString, convertToLaTeX, Doxygen::dirLinkedMap, Doxygen::exampleLinkedMap, FALSE, g_footer, g_footer_file, Doxygen::groupLinkedMap, Doxygen::inputNameLinkedMap, ModuleManager::instance, isClassDocumentation, isClassHierarchyIndex, isCompoundIndex, isConceptDocumentation, isConceptIndex, isDirDocumentation, isDirIndex, isEndIndex, isExampleDocumentation, isFileDocumentation, isFileIndex, isMainPage, isModuleDocumentation, isModuleIndex, isNamespaceDocumentation, isNamespaceIndex, isPageDocumentation, isPageDocumentation2, isPageIndex, isTitlePageAuthor, isTitlePageStart, isTopicDocumentation, isTopicIndex, m_codeGen, OutputGenerator::m_t, Doxygen::mainPage, Doxygen::namespaceLinkedMap, Doxygen::pageLinkedMap, substituteLatexKeywords, TRUE and writePageLink.

endIndexValue()

void LatexGenerator::endIndexValue (const QCString & name, bool)
virtual

Declaration at line 146 of file latexgen.h, definition at line 1365 of file latexgen.cpp.

1365void LatexGenerator::endIndexValue(const QCString &name,bool /*hasBrief*/)
1366{
1367 //if (hasBrief) m_t << ")";
1368 m_t << "}{\\pageref{" << stripPath(name) << "}}{}\n";
1369}

References OutputGenerator::m_t and stripPath.

endInlineHeader()

void LatexGenerator::endInlineHeader ()
virtual

Declaration at line 177 of file latexgen.h, definition at line 2206 of file latexgen.cpp.

2207{
2208 m_t << "}\n";
2209}

Reference OutputGenerator::m_t.

endInlineMemberDoc()

void LatexGenerator::endInlineMemberDoc ()
virtual

Declaration at line 308 of file latexgen.h, definition at line 2280 of file latexgen.cpp.

2281{
2282 m_t << "\\\\\n\\hline\n\n";
2283}

Reference OutputGenerator::m_t.

endInlineMemberName()

void LatexGenerator::endInlineMemberName ()
virtual

Declaration at line 306 of file latexgen.h, definition at line 2270 of file latexgen.cpp.

2271{
2272 m_t << "&\n";
2273 m_codeGen->setInsideTabbing(false);
2274}

References m_codeGen and OutputGenerator::m_t.

endInlineMemberType()

void LatexGenerator::endInlineMemberType ()
virtual

Declaration at line 304 of file latexgen.h, definition at line 2259 of file latexgen.cpp.

2260{
2261 m_t << "&\n";
2262 m_codeGen->setInsideTabbing(false);
2263}

References m_codeGen and OutputGenerator::m_t.

endItemList()

void LatexGenerator::endItemList ()
inline virtual

Definition at line 148 of file latexgen.h.

148 void endItemList() override { m_t << "\\end{DoxyCompactItemize}\n"; }

Reference OutputGenerator::m_t.

endItemListItem()

void LatexGenerator::endItemListItem ()
inline virtual

Definition at line 162 of file latexgen.h.

162 void endItemListItem() override {}

endLabels()

void LatexGenerator::endLabels ()
virtual

Declaration at line 312 of file latexgen.h, definition at line 2296 of file latexgen.cpp.

2297{
2298}

endLocalToc()

void LatexGenerator::endLocalToc ()
inline virtual

Definition at line 315 of file latexgen.h.

315 void endLocalToc() override {}

endMemberDeclaration()

void LatexGenerator::endMemberDeclaration (const QCString &, const QCString &)
inline virtual

Definition at line 220 of file latexgen.h.

220 void endMemberDeclaration(const QCString &,const QCString &) override {}

endMemberDescription()

void LatexGenerator::endMemberDescription ()
virtual

Declaration at line 218 of file latexgen.h, definition at line 1866 of file latexgen.cpp.

1867{
1868 if (!m_codeGen->insideTabbing())
1869 {
1870 //m_t << "\\item\\end{DoxyCompactList}";
1871 m_t << "\\end{DoxyCompactList}";
1872 }
1873 else
1874 {
1875 m_t << "}\\\\\n";
1876 }
1877}

References m_codeGen and OutputGenerator::m_t.

endMemberDoc()

void LatexGenerator::endMemberDoc (bool)
virtual

Declaration at line 205 of file latexgen.h, definition at line 1634 of file latexgen.cpp.

1635{
1637 m_t << "}\n\n";
1638 //if (Config_getBool(COMPACT_LATEX)) m_t << "\\hfill";
1639}

References FALSE, m_disableLinks and OutputGenerator::m_t.

endMemberDocList()

void LatexGenerator::endMemberDocList ()
inline virtual

Definition at line 173 of file latexgen.h.

173 void endMemberDocList() override {}

endMemberDocName()

void LatexGenerator::endMemberDocName ()
inline virtual

Definition at line 279 of file latexgen.h.

279 void endMemberDocName() override {}

endMemberDocPrefixItem()

void LatexGenerator::endMemberDocPrefixItem ()
inline virtual

Definition at line 277 of file latexgen.h.

277 void endMemberDocPrefixItem() override { m_t << "\\\\\n"; }

Reference OutputGenerator::m_t.

endMemberDocSimple()

void LatexGenerator::endMemberDocSimple (bool isEnum)
virtual

Declaration at line 302 of file latexgen.h, definition at line 2240 of file latexgen.cpp.

2241{
2242 m_insideTableEnv=false;
2243 m_codeGen->decUsedTableLevel();
2244 if (isEnum)
2245 {
2246 m_t << "\\end{DoxyEnumFields}\n";
2247 }
2248 else
2249 {
2250 m_t << "\\end{DoxyFields}\n";
2251 }
2252}

References m_codeGen, m_insideTableEnv and OutputGenerator::m_t.

endMemberGroup()

void LatexGenerator::endMemberGroup (bool hasHeader)
virtual

Declaration at line 192 of file latexgen.h, definition at line 2017 of file latexgen.cpp.

2018{
2019 if (hasHeader)m_t << "\\end{Indent}";
2020 m_t << "\n";
2021}

Reference OutputGenerator::m_t.

endMemberGroupDocs()

void LatexGenerator::endMemberGroupDocs ()
virtual

Declaration at line 190 of file latexgen.h, definition at line 2008 of file latexgen.cpp.

2009{
2010 m_t << "}";
2011}

Reference OutputGenerator::m_t.

endMemberGroupHeader()

void LatexGenerator::endMemberGroupHeader ()
virtual

Declaration at line 188 of file latexgen.h, definition at line 1996 of file latexgen.cpp.

1997{
1998 // changed back to rev 756 due to bug 660501
1999 m_t << "}\\par\n";
2000 //m_t << "}\n";
2001}

Reference OutputGenerator::m_t.

endMemberHeader()

void LatexGenerator::endMemberHeader ()
virtual

Declaration at line 169 of file latexgen.h, definition at line 1556 of file latexgen.cpp.

1557{
1559 m_t << "}\n";
1560}

References FALSE, m_disableLinks and OutputGenerator::m_t.

endMemberItem()

void LatexGenerator::endMemberItem (MemberItemType)
virtual

Declaration at line 181 of file latexgen.h, definition at line 1843 of file latexgen.cpp.

1844{
1845 if (m_codeGen->insideTabbing())
1846 {
1847 m_t << "\\\\";
1848 }
1850 m_t << "\n";
1851}

References FALSE, m_codeGen, OutputGenerator::m_t and m_templateMemberItem.

endMemberList()

void LatexGenerator::endMemberList ()
virtual

Declaration at line 175 of file latexgen.h, definition at line 1971 of file latexgen.cpp.

1972{
1973 //printf("LatexGenerator::endMemberList(%d)\n",m_codeGen->InsideTabbing());
1974 if (!m_codeGen->insideTabbing())
1975 {
1976 m_t << "\\end{DoxyCompactItemize}\n";
1977 }
1978}

References m_codeGen and OutputGenerator::m_t.

endMemberSections()

void LatexGenerator::endMemberSections ()
inline virtual

Definition at line 165 of file latexgen.h.

165 void endMemberSections() override {}

endMemberSubtitle()

void LatexGenerator::endMemberSubtitle ()
inline virtual

Definition at line 171 of file latexgen.h.

171 void endMemberSubtitle() override {}

endMemberTemplateParams()

void LatexGenerator::endMemberTemplateParams (const QCString &, const QCString &)
virtual

Declaration at line 183 of file latexgen.h, definition at line 1825 of file latexgen.cpp.

1826{
1828 {
1829 m_t << "}\\\\";
1830 }
1831}

References OutputGenerator::m_t and m_templateMemberItem.

endPageDoc()

void LatexGenerator::endPageDoc ()
inline virtual

Definition at line 126 of file latexgen.h.

126 void endPageDoc() override {}

endPageRef()

void LatexGenerator::endPageRef (const QCString & clname, const QCString & anchor)
virtual

Declaration at line 236 of file latexgen.h, definition at line 1454 of file latexgen.cpp.

1454void LatexGenerator::endPageRef(const QCString &clname, const QCString &anchor)
1455{
1456 m_t << "}{";
1457 if (!clname.isEmpty()) m_t << clname;
1458 if (!anchor.isEmpty()) m_t << "_" << anchor;
1459 m_t << "}";
1460}

References QCString::isEmpty and OutputGenerator::m_t.

endParagraph()

void LatexGenerator::endParagraph ()
virtual

Declaration at line 137 of file latexgen.h, definition at line 1314 of file latexgen.cpp.

1315{
1316 m_t << "\n" << "\n";
1317}

Reference OutputGenerator::m_t.

endParameterDefVal()

void LatexGenerator::endParameterDefVal ()
inline virtual

Definition at line 287 of file latexgen.h.

287 void endParameterDefVal() override { endTypewriter(); }

Reference endTypewriter.

endParameterExtra()

void LatexGenerator::endParameterExtra (bool last, bool one, bool bracket)
virtual

Declaration at line 285 of file latexgen.h, definition at line 2118 of file latexgen.cpp.

2118void LatexGenerator::endParameterExtra(bool last,bool /*emptyList*/,bool closeBracket)
2119{
2120 m_t << "}";
2121 if (last)
2122 {
2123 m_t << "\\end{DoxyParamCaption}";
2124 if (closeBracket) m_t << ")";
2125 }
2126}

Reference OutputGenerator::m_t.

endParameterList()

void LatexGenerator::endParameterList ()
virtual

Declaration at line 289 of file latexgen.h, definition at line 2088 of file latexgen.cpp.

endParameterName()

void LatexGenerator::endParameterName ()
virtual

Declaration at line 283 of file latexgen.h, definition at line 2108 of file latexgen.cpp.

2109{
2110 m_t << "}";
2111}

Reference OutputGenerator::m_t.

endParameterType()

void LatexGenerator::endParameterType ()
virtual

Declaration at line 281 of file latexgen.h, definition at line 2098 of file latexgen.cpp.

2099{
2100 m_t << "}]";
2101}

Reference OutputGenerator::m_t.

endPlainFile()

void LatexGenerator::endPlainFile ()
inline virtual

Definition at line 320 of file latexgen.h.

Reference OutputGenerator::endPlainFile.

Referenced by endFile and writeStyleInfo.

endProjectNumber()

void LatexGenerator::endProjectNumber ()
inline virtual

Definition at line 131 of file latexgen.h.

131 void endProjectNumber() override {}

endQuickIndices()

void LatexGenerator::endQuickIndices ()
inline virtual

Definition at line 238 of file latexgen.h.

238 void endQuickIndices() override {}

endSection()

void LatexGenerator::endSection (const QCString & lab, SectionType)
virtual

Declaration at line 228 of file latexgen.h, definition at line 1758 of file latexgen.cpp.

1759{
1760 m_t << "}\\label{" << lab << "}\n";
1761}

Reference OutputGenerator::m_t.

endSmall()

void LatexGenerator::endSmall ()
inline virtual

Definition at line 216 of file latexgen.h.

216 void endSmall() override { m_t << "\\normalsize "; }

Reference OutputGenerator::m_t.

endTextBlock()

void LatexGenerator::endTextBlock (bool)
inline virtual

Definition at line 274 of file latexgen.h.

274 void endTextBlock(bool) override {}

endTextLink()

void LatexGenerator::endTextLink ()
virtual

Declaration at line 156 of file latexgen.h, definition at line 1395 of file latexgen.cpp.

1396{
1397 bool pdfHyperlinks = Config_getBool(PDF_HYPERLINKS);
1398 if (!m_disableLinks && pdfHyperlinks)
1399 {
1400 m_t << "}";
1401 }
1402 m_t << "}";
1403}

References Config_getBool, m_disableLinks and OutputGenerator::m_t.

endTitleHead()

void LatexGenerator::endTitleHead (const QCString & fileName, const QCString & name)
virtual

Declaration at line 134 of file latexgen.h, definition at line 1477 of file latexgen.cpp.

1478{
1479 m_t << "}\n";
1480
1481 bool pdfHyperlinks = Config_getBool(PDF_HYPERLINKS);
1482 bool usePDFLatex = Config_getBool(USE_PDFLATEX);
1483 if (usePDFLatex && pdfHyperlinks && !fileName.isEmpty())
1484 {
1485 m_t << "\\hypertarget{" << stripPath(fileName) << "}{}";
1486 }
1487
1489 if (!fn.isEmpty())
1490 {
1491 m_t << "\\label{" << fn << "}";
1492 }
1493 if (!name.isEmpty())
1494 {
1495 m_t << "\\index{";
1496 m_t << latexEscapeLabelName(name);
1497 m_t << "@{";
1498 m_t << latexEscapeIndexChars(name);
1499 m_t << "}}\n";
1500 }
1501}

References Config_getBool, OutputGenerator::fileName, QCString::isEmpty, latexEscapeIndexChars, latexEscapeLabelName, OutputGenerator::m_t and stripPath.

endTocEntry()

void LatexGenerator::endTocEntry (const SectionInfo *)
inline virtual

Definition at line 317 of file latexgen.h.

317 void endTocEntry(const SectionInfo *) override {}

endTypewriter()

void LatexGenerator::endTypewriter ()
inline virtual

Definition at line 158 of file latexgen.h.

158 void endTypewriter() override { m_t << "}"; }

Reference OutputGenerator::m_t.

Referenced by endParameterDefVal.

exceptionEntry()

void LatexGenerator::exceptionEntry (const QCString & prefix, bool closeBracket)
virtual

Declaration at line 290 of file latexgen.h, definition at line 2128 of file latexgen.cpp.

2128void LatexGenerator::exceptionEntry(const QCString &prefix,bool closeBracket)
2129{
2130 if (!prefix.isEmpty())
2131 {
2132 m_t << " " << prefix << "(";
2133 }
2134 else if (closeBracket)
2135 {
2136 m_t << ")";
2137 }
2138 m_t << " ";
2139}

References OutputGenerator::m_t and prefix.

insertMemberAlign()

void LatexGenerator::insertMemberAlign (bool)
inline virtual

Definition at line 194 of file latexgen.h.

194 void insertMemberAlign(bool) override {}

insertMemberAlignLeft()

void LatexGenerator::insertMemberAlignLeft (MemberItemType, bool)
inline virtual

Definition at line 195 of file latexgen.h.

lastIndexPage()

void LatexGenerator::lastIndexPage ()
virtual

Declaration at line 259 of file latexgen.h, definition at line 1958 of file latexgen.cpp.

lineBreak()

void LatexGenerator::lineBreak (const QCString & style=QCString())
virtual

Declaration at line 203 of file latexgen.h, definition at line 2211 of file latexgen.cpp.

2212{
2213 if (m_codeGen->insideTabbing())
2214 {
2215 m_t << "\\\\\n";
2216 }
2217 else
2218 {
2219 m_t << "\\newline\n";
2220 }
2221}

References m_codeGen and OutputGenerator::m_t.

setCurrentDoc()

void LatexGenerator::setCurrentDoc (const Definition *, const QCString &, bool)
inline

Definition at line 109 of file latexgen.h.

109 void setCurrentDoc(const Definition *,const QCString &,bool) {}

startAnonTypeScope()

void LatexGenerator::startAnonTypeScope (int indent)
virtual

Declaration at line 178 of file latexgen.h, definition at line 1796 of file latexgen.cpp.

1797{
1798 if (indent==0)
1799 {
1800 m_t << "\\begin{tabbing}\n";
1801 m_t << "xx\\=xx\\=xx\\=xx\\=xx\\=xx\\=xx\\=xx\\=xx\\=\\kill\n";
1802 m_codeGen->setInsideTabbing(true);
1803 }
1804 m_indent=indent;
1805}

References m_codeGen, m_indent and OutputGenerator::m_t.

startBold()

void LatexGenerator::startBold ()
inline virtual

Definition at line 201 of file latexgen.h.

201 void startBold() override { m_t << "{\\bfseries "; }

Reference OutputGenerator::m_t.

startCallGraph()

void LatexGenerator::startCallGraph ()
virtual

Declaration at line 265 of file latexgen.h, definition at line 2051 of file latexgen.cpp.

startCenter()

void LatexGenerator::startCenter ()
inline virtual

Definition at line 213 of file latexgen.h.

213 void startCenter() override { m_t << "\\begin{center}\n"; }

Reference OutputGenerator::m_t.

startClassDiagram()

void LatexGenerator::startClassDiagram ()
virtual

Declaration at line 233 of file latexgen.h, definition at line 1783 of file latexgen.cpp.

1784{
1785 //if (Config_getBool(COMPACT_LATEX)) m_t << "\\doxysubsubsection"; else m_t << "\\doxysubsection";
1786 //m_t << "{";
1787}

startCompoundTemplateParams()

void LatexGenerator::startCompoundTemplateParams ()
inline virtual

Definition at line 184 of file latexgen.h.

184 void startCompoundTemplateParams() override { m_t << "\\subsubsection*{";}

Reference OutputGenerator::m_t.

startConstraintDocs()

void LatexGenerator::startConstraintDocs ()
virtual

Declaration at line 297 of file latexgen.h, definition at line 2180 of file latexgen.cpp.

startConstraintList()

void LatexGenerator::startConstraintList (const QCString & header)
virtual

Declaration at line 292 of file latexgen.h, definition at line 2153 of file latexgen.cpp.

2154{
2155 m_t << "\\begin{Desc}\n\\item[";
2156 docify(header);
2157 m_t << "]";
2158 m_t << "\\begin{description}\n";
2159}

References docify and OutputGenerator::m_t.

startConstraintParam()

void LatexGenerator::startConstraintParam ()
virtual

Declaration at line 293 of file latexgen.h, definition at line 2161 of file latexgen.cpp.

2162{
2163 m_t << "\\item[{\\em ";
2164}

Reference OutputGenerator::m_t.

startConstraintType()

void LatexGenerator::startConstraintType ()
virtual

Declaration at line 295 of file latexgen.h, definition at line 2170 of file latexgen.cpp.

2171{
2172 m_t << "} : {\\em ";
2173}

Reference OutputGenerator::m_t.

startContents()

void LatexGenerator::startContents ()
inline virtual

Definition at line 245 of file latexgen.h.

245 void startContents() override {}

startDescForItem()

void LatexGenerator::startDescForItem ()
inline virtual

Definition at line 225 of file latexgen.h.

225 void startDescForItem() override { m_t << "\\par\n"; }

Reference OutputGenerator::m_t.

startDescTable()

void LatexGenerator::startDescTable (const QCString & title, const bool hasInits)
virtual

Declaration at line 249 of file latexgen.h, definition at line 1907 of file latexgen.cpp.

1907void LatexGenerator::startDescTable(const QCString &title,const bool hasInits)
1908{
1909 m_codeGen->incUsedTableLevel();
1910 m_t << "\\begin{DoxyEnumFields}[" << (hasInits?3:2) << "]{" << title << "}\n";
1911}

References m_codeGen and OutputGenerator::m_t.

startDescTableData()

void LatexGenerator::startDescTableData ()
virtual

Declaration at line 257 of file latexgen.h, definition at line 1948 of file latexgen.cpp.

1949{
1950 m_t << "&";
1951}

Reference OutputGenerator::m_t.

startDescTableInit()

void LatexGenerator::startDescTableInit ()
virtual

Declaration at line 255 of file latexgen.h, definition at line 1939 of file latexgen.cpp.

1940{
1941 m_t << "&";
1942}

Reference OutputGenerator::m_t.

startDescTableRow()

void LatexGenerator::startDescTableRow ()
virtual

Declaration at line 251 of file latexgen.h, definition at line 1919 of file latexgen.cpp.

1920{
1921 // this is needed to prevent the \hypertarget, \label, and \index commands from messing up
1922 // the row height (based on http://tex.stackexchange.com/a/186102)
1923 m_t << "\\raisebox{\\heightof{T}}[0pt][0pt]{";
1924}

Reference OutputGenerator::m_t.

startDescTableTitle()

void LatexGenerator::startDescTableTitle ()
virtual

Declaration at line 253 of file latexgen.h, definition at line 1930 of file latexgen.cpp.

1931{
1932 m_t << "}";
1933}

Reference OutputGenerator::m_t.

startDirDepGraph()

void LatexGenerator::startDirDepGraph ()
virtual

Declaration at line 269 of file latexgen.h, definition at line 2060 of file latexgen.cpp.

startDotGraph()

void LatexGenerator::startDotGraph ()
virtual

Declaration at line 261 of file latexgen.h, definition at line 2023 of file latexgen.cpp.

2024{
2025 m_t << "\n" << "\n";
2026}

Reference OutputGenerator::m_t.

startDoxyAnchor()

void LatexGenerator::startDoxyAnchor (const QCString & fName, const QCString &, const QCString & anchor, const QCString &, const QCString &)
virtual

Declaration at line 206 of file latexgen.h, definition at line 1641 of file latexgen.cpp.

1642 const QCString &anchor, const QCString &,
1643 const QCString &)
1644{
1645 bool pdfHyperlinks = Config_getBool(PDF_HYPERLINKS);
1646 bool usePDFLatex = Config_getBool(USE_PDFLATEX);
1647 if (m_insideTableEnv) m_t << "\\mbox{"; // see issue #6093
1648 if (usePDFLatex && pdfHyperlinks)
1649 {
1650 m_t << "\\Hypertarget{";
1651 if (!fName.isEmpty()) m_t << stripPath(fName);
1652 if (!anchor.isEmpty()) m_t << "_" << anchor;
1653 m_t << "}";
1654 }
1655}

References Config_getBool, QCString::isEmpty, m_insideTableEnv, OutputGenerator::m_t and stripPath.

startEmphasis()

void LatexGenerator::startEmphasis ()
inline virtual

Definition at line 199 of file latexgen.h.

199 void startEmphasis() override { m_t << "{\\em "; }

Reference OutputGenerator::m_t.

startExamples()

void LatexGenerator::startExamples ()
virtual

Declaration at line 223 of file latexgen.h, definition at line 2069 of file latexgen.cpp.

2070{
2071 m_t << "\\begin{Desc}\n\\item[";
2072 docify(theTranslator->trExamples());
2073 m_t << "]";
2074}

References docify, OutputGenerator::m_t and theTranslator.

startFile()

void LatexGenerator::startFile (const QCString & name, const QCString & manName, const QCString & title, int id, int hierarchyLevel)
virtual

Declaration at line 119 of file latexgen.h, definition at line 706 of file latexgen.cpp.

706void LatexGenerator::startFile(const QCString &name,const QCString &,const QCString &,int,int hierarchyLevel)
707{
708#if 0
709 setEncoding(Config_getString(LATEX_OUTPUT_ENCODING));
710#endif
711 QCString fileName=name;
712 m_hierarchyLevel = hierarchyLevel;
714 if (!fileName.endsWith(".tex") && !fileName.endsWith(".sty")) fileName+=".tex";
716 m_codeGen->setRelativePath(m_relPath);
717 m_codeGen->setSourceFileName(stripPath(fileName));
718}

References Config_getString, OutputGenerator::fileName, m_codeGen, m_hierarchyLevel, m_relPath, relativePathToRoot, startPlainFile and stripPath.

startGroupCollaboration()

void LatexGenerator::startGroupCollaboration ()
virtual

Declaration at line 266 of file latexgen.h, definition at line 2042 of file latexgen.cpp.

startGroupHeader()

void LatexGenerator::startGroupHeader (const QCString &, int extraIndentLevel)
virtual

Declaration at line 159 of file latexgen.h, definition at line 1515 of file latexgen.cpp.

1515void LatexGenerator::startGroupHeader(const QCString &,int extraIndentLevel)
1516{
1517 if (Config_getBool(COMPACT_LATEX))
1518 {
1519 extraIndentLevel++;
1520 }
1521
1522 if (extraIndentLevel>=3)
1523 {
1524 m_t << "\\doxysubparagraph*{";
1525 }
1526 else if (extraIndentLevel==2)
1527 {
1528 m_t << "\\doxyparagraph{";
1529 }
1530 else
1531 {
1532 extraIndentLevel += m_hierarchyLevel + 1;
1533 m_t << "\\doxy" << QCString("sub").repeat(extraIndentLevel) << "section{";
1534 }
1536}

References Config_getBool, m_disableLinks, m_hierarchyLevel, OutputGenerator::m_t, QCString::repeat and TRUE.

startHeaderSection()

void LatexGenerator::startHeaderSection ()
inline virtual

Definition at line 166 of file latexgen.h.

166 void startHeaderSection() override {}

startInclDepGraph()

void LatexGenerator::startInclDepGraph ()
virtual

Declaration at line 263 of file latexgen.h, definition at line 2033 of file latexgen.cpp.

startIndent()

void LatexGenerator::startIndent ()
inline virtual

Definition at line 230 of file latexgen.h.

230 void startIndent() override {}

startIndexItem()

void LatexGenerator::startIndexItem (const QCString & ref, const QCString & file)
virtual

Declaration at line 149 of file latexgen.h, definition at line 1324 of file latexgen.cpp.

1325{
1326 m_t << "\\item ";
1327 if (ref.isEmpty() && !fn.isEmpty())
1328 {
1329 m_t << "\\contentsline{section}{";
1330 }
1331}

References QCString::isEmpty and OutputGenerator::m_t.

startIndexKey()

void LatexGenerator::startIndexKey ()
virtual

Declaration at line 143 of file latexgen.h, definition at line 1350 of file latexgen.cpp.

1351{
1352 m_t << "\\item\\contentsline{section}{";
1353}

Reference OutputGenerator::m_t.

startIndexList()

void LatexGenerator::startIndexList ()
inline virtual

Definition at line 141 of file latexgen.h.

141 void startIndexList() override { m_t << "\\begin{DoxyCompactList}\n"; }

Reference OutputGenerator::m_t.

startIndexListItem()

void LatexGenerator::startIndexListItem ()
inline virtual

Definition at line 139 of file latexgen.h.

139 void startIndexListItem() override {}

startIndexSection()

void LatexGenerator::startIndexSection (IndexSection is)
virtual

Declaration at line 127 of file latexgen.h, definition at line 912 of file latexgen.cpp.

913{
914 bool compactLatex = Config_getBool(COMPACT_LATEX);
915 switch (is)
916 {
919 break;
921 break;
923 break;
925 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
926 m_t << "{"; //Module Index}\n"
927 break;
929 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
930 m_t << "{"; //Topic Index}\n"
931 break;
933 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
934 m_t << "{"; //Directory Index}\n"
935 break;
937 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
938 m_t << "{"; //Namespace Index}\n"
939 break;
941 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
942 m_t << "{"; //Concept Index}\n"
943 break;
945 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
946 m_t << "{"; //Hierarchical Index}\n"
947 break;
949 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
950 m_t << "{"; //Annotated Compound Index}\n"
951 break;
953 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
954 m_t << "{"; //Annotated File Index}\n"
955 break;
957 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
958 m_t << "{"; //Annotated Page Index}\n"
959 break;
961 {
962 for (const auto &gd : *Doxygen::groupLinkedMap)
963 {
964 if (!gd->isReference())
965 {
966 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
967 m_t << "{"; //Topic Documentation}\n";
968 break;
969 }
970 }
971 }
972 break;
974 {
975 for (const auto &mod : ModuleManager::instance().modules())
976 {
977 if (!mod->isReference() && mod->isPrimaryInterface())
978 {
979 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
980 m_t << "{"; //Topic Documentation}\n";
981 break;
982 }
983 }
984 }
985 break;
987 {
988 for (const auto &dd : *Doxygen::dirLinkedMap)
989 {
990 if (dd->isLinkableInProject())
991 {
992 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
993 m_t << "{"; //Dir Documentation}\n";
994 break;
995 }
996 }
997 }
998 break;
1000 {
1001 for (const auto &nd : *Doxygen::namespaceLinkedMap)
1002 {
1003 if (nd->isLinkableInProject() && !nd->isAlias())
1004 {
1005 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
1006 m_t << "{"; // Namespace Documentation}\n":
1007 break;
1008 }
1009 }
1010 }
1011 break;
1013 {
1014 for (const auto &cd : *Doxygen::conceptLinkedMap)
1015 {
1016 if (cd->isLinkableInProject() && !cd->isAlias())
1017 {
1018 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
1019 m_t << "{"; // Concept Documentation}\n":
1020 break;
1021 }
1022 }
1023 }
1024 break;
1026 {
1027 for (const auto &cd : *Doxygen::classLinkedMap)
1028 {
1029 if (cd->isLinkableInProject() &&
1030 !cd->isImplicitTemplateInstance() &&
1031 !cd->isEmbeddedInOuterScope() &&
1032 !cd->isAlias()
1033 )
1034 {
1035 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
1036 m_t << "{"; //Compound Documentation}\n";
1037 break;
1038 }
1039 }
1040 }
1041 break;
1043 {
1044 bool isFirst=TRUE;
1045 for (const auto &fn : *Doxygen::inputNameLinkedMap)
1046 {
1047 for (const auto &fd : *fn)
1048 {
1049 if (fd->isLinkableInProject() || fd->generateSourceFile())
1050 {
1051 if (isFirst)
1052 {
1053 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
1054 m_t << "{"; //File Documentation}\n";
1055 isFirst=FALSE;
1056 break;
1057 }
1058 }
1059 }
1060 }
1061 }
1062 break;
1064 {
1065 if (compactLatex) m_t << "\\doxysection"; else m_t << "\\chapter";
1066 m_t << "{"; //Example Documentation}\n";
1067 }
1068 break;
1070 break;
1072 break;
1074 break;
1075 }
1076}

References Doxygen::classLinkedMap, Doxygen::conceptLinkedMap, Config_getBool, Config_getString, convertToLaTeX, Doxygen::dirLinkedMap, FALSE, g_header, g_header_file, Doxygen::groupLinkedMap, Doxygen::inputNameLinkedMap, ModuleManager::instance, isClassDocumentation, isClassHierarchyIndex, isCompoundIndex, isConceptDocumentation, isConceptIndex, isDirDocumentation, isDirIndex, isEndIndex, isExampleDocumentation, isFileDocumentation, isFileIndex, isMainPage, isModuleDocumentation, isModuleIndex, isNamespaceDocumentation, isNamespaceIndex, isPageDocumentation, isPageDocumentation2, isPageIndex, isTitlePageAuthor, isTitlePageStart, isTopicDocumentation, isTopicIndex, m_codeGen, OutputGenerator::m_t, Doxygen::namespaceLinkedMap, substituteLatexKeywords and TRUE.

startIndexValue()

void LatexGenerator::startIndexValue (bool hasBrief)
virtual

Declaration at line 145 of file latexgen.h, definition at line 1359 of file latexgen.cpp.

1360{
1361 m_t << " ";
1362 if (hasBrief) m_t << "\\\\*";
1363}

Reference OutputGenerator::m_t.

startInlineHeader()

void LatexGenerator::startInlineHeader ()
virtual

Declaration at line 176 of file latexgen.h, definition at line 2194 of file latexgen.cpp.

2195{
2196 if (Config_getBool(COMPACT_LATEX))
2197 {
2198 m_t << "\\doxyparagraph*{";
2199 }
2200 else
2201 {
2202 m_t << "\\doxy" << QCString("sub").repeat(m_hierarchyLevel + 1) << "section*{";
2203 }
2204}

References Config_getBool, m_hierarchyLevel, OutputGenerator::m_t and QCString::repeat.

startInlineMemberDoc()

void LatexGenerator::startInlineMemberDoc ()
virtual

Declaration at line 307 of file latexgen.h, definition at line 2276 of file latexgen.cpp.

startInlineMemberName()

void LatexGenerator::startInlineMemberName ()
virtual

Declaration at line 305 of file latexgen.h, definition at line 2265 of file latexgen.cpp.

2266{
2267 m_codeGen->setInsideTabbing(true); // to prevent \+ from causing unwanted breaks
2268}

Reference m_codeGen.

startInlineMemberType()

void LatexGenerator::startInlineMemberType ()
virtual

Declaration at line 303 of file latexgen.h, definition at line 2254 of file latexgen.cpp.

2255{
2256 m_codeGen->setInsideTabbing(true); // to prevent \+ from causing unwanted breaks
2257}

Reference m_codeGen.

startItemList()

void LatexGenerator::startItemList ()
inline virtual

Definition at line 147 of file latexgen.h.

147 void startItemList() override { m_t << "\\begin{DoxyCompactItemize}\n"; }

Reference OutputGenerator::m_t.

startItemListItem()

void LatexGenerator::startItemListItem ()
inline virtual

Definition at line 161 of file latexgen.h.

161 void startItemListItem() override { m_t << "\\item \n"; }

Reference OutputGenerator::m_t.

startLabels()

void LatexGenerator::startLabels ()
virtual

Declaration at line 310 of file latexgen.h, definition at line 2285 of file latexgen.cpp.

2286{
2287 m_t << "\\hspace{0.3cm}";
2288}

Reference OutputGenerator::m_t.

startLocalToc()

void LatexGenerator::startLocalToc (int level)
virtual

Declaration at line 314 of file latexgen.h, definition at line 2318 of file latexgen.cpp.

2319{
2320 int maxLevel = level + m_hierarchyLevel;
2321 m_t << "\\etocsetnexttocdepth{" << maxLevel << "}\n";
2322 m_t << "\\localtableofcontents\n";
2323}

References m_hierarchyLevel and OutputGenerator::m_t.

startMemberDeclaration()

void LatexGenerator::startMemberDeclaration ()
inline virtual

Definition at line 219 of file latexgen.h.

219 void startMemberDeclaration() override {}

startMemberDescription()

void LatexGenerator::startMemberDescription (const QCString &, const QCString &, bool)
virtual

Declaration at line 217 of file latexgen.h, definition at line 1853 of file latexgen.cpp.

1854{
1855 if (!m_codeGen->insideTabbing())
1856 {
1857 m_t << "\\begin{DoxyCompactList}\\small\\item\\em ";
1858 }
1859 else
1860 {
1861 for (int i=0;i<m_indent+2;i++) m_t << "\\>";
1862 m_t << "{\\em ";
1863 }
1864}

References m_codeGen, m_indent and OutputGenerator::m_t.

startMemberDoc()

void LatexGenerator::startMemberDoc (const QCString & clname, const QCString & memname, const QCString &, const QCString & title, int memCount, int memTotal, bool showInline)
virtual

Declaration at line 204 of file latexgen.h, definition at line 1562 of file latexgen.cpp.

1563 const QCString &memname,
1564 const QCString &,
1565 const QCString &title,
1566 int memCount,
1567 int memTotal,
1568 bool showInline)
1569{
1570 if (!memname.isEmpty() && memname[0]!='@')
1571 {
1572 m_t << "\\index{";
1573 if (!clname.isEmpty())
1574 {
1575 m_t << latexEscapeLabelName(clname);
1576 m_t << "@{";
1577 m_t << latexEscapeIndexChars(clname);
1578 m_t << "}!";
1579 }
1580 m_t << latexEscapeLabelName(memname);
1581 m_t << "@{";
1582 m_t << latexEscapeIndexChars(memname);
1583 m_t << "}}\n";
1584
1585 m_t << "\\index{";
1586 m_t << latexEscapeLabelName(memname);
1587 m_t << "@{";
1588 m_t << latexEscapeIndexChars(memname);
1589 m_t << "}";
1590 if (!clname.isEmpty())
1591 {
1592 m_t << "!";
1593 m_t << latexEscapeLabelName(clname);
1594 m_t << "@{";
1595 m_t << latexEscapeIndexChars(clname);
1596 m_t << "}";
1597 }
1598 m_t << "}\n";
1599 }
1600 bool compactLatex = Config_getBool(COMPACT_LATEX);
1601 bool pdfHyperlinks = Config_getBool(PDF_HYPERLINKS);
1602 if (showInline)
1603 {
1604 m_t << "\\doxysubparagraph";
1605 }
1606 else if (compactLatex)
1607 {
1608 m_t << "\\doxyparagraph";
1609 }
1610 else
1611 {
1612 m_t << "\\doxy" << QCString("sub").repeat(m_hierarchyLevel + 2) << "section";
1613 }
1614
1615 m_t << "{";
1616 if (pdfHyperlinks)
1617 {
1618 m_t << "\\texorpdfstring{";
1619 }
1620 m_t << latexEscapeIndexChars(title);
1621 if (pdfHyperlinks)
1622 {
1623 m_t << "}{" << latexEscapePDFString(title) << "}";
1624 }
1625 if (memTotal>1)
1626 {
1627 m_t << "\\hspace{0.1cm}{\\footnotesize\\ttfamily [" << memCount << "/" << memTotal << "]}";
1628 }
1629 m_t << "}";
1630 m_t << "\n{\\footnotesize\\ttfamily ";
1631 //m_disableLinks=TRUE;
1632}

References Config_getBool, QCString::isEmpty, latexEscapeIndexChars, latexEscapeLabelName, latexEscapePDFString, m_hierarchyLevel, OutputGenerator::m_t and QCString::repeat.

startMemberDocList()

void LatexGenerator::startMemberDocList ()
inline virtual

Definition at line 172 of file latexgen.h.

172 void startMemberDocList() override {}

startMemberDocName()

void LatexGenerator::startMemberDocName (bool)
inline virtual

Definition at line 278 of file latexgen.h.

278 void startMemberDocName(bool) override {}

startMemberDocPrefixItem()

void LatexGenerator::startMemberDocPrefixItem ()
inline virtual

Definition at line 276 of file latexgen.h.

276 void startMemberDocPrefixItem() override {}

startMemberDocSimple()

void LatexGenerator::startMemberDocSimple (bool isEnum)
virtual

Declaration at line 301 of file latexgen.h, definition at line 2223 of file latexgen.cpp.

2224{
2225 m_codeGen->incUsedTableLevel();
2226 if (isEnum)
2227 {
2228 m_t << "\\begin{DoxyEnumFields}{";
2229 docify(theTranslator->trEnumerationValues());
2230 }
2231 else
2232 {
2233 m_t << "\\begin{DoxyFields}{";
2234 docify(theTranslator->trCompoundMembers());
2235 }
2236 m_t << "}\n";
2237 m_insideTableEnv=true;
2238}

References docify, m_codeGen, m_insideTableEnv, OutputGenerator::m_t and theTranslator.

startMemberGroup()

void LatexGenerator::startMemberGroup ()
virtual

Declaration at line 191 of file latexgen.h, definition at line 2013 of file latexgen.cpp.

startMemberGroupDocs()

void LatexGenerator::startMemberGroupDocs ()
virtual

Declaration at line 189 of file latexgen.h, definition at line 2003 of file latexgen.cpp.

2004{
2005 m_t << "{\\em ";
2006}

Reference OutputGenerator::m_t.

startMemberGroupHeader()

void LatexGenerator::startMemberGroupHeader (const QCString &, bool hasHeader)
virtual

Declaration at line 187 of file latexgen.h, definition at line 1981 of file latexgen.cpp.

1982{
1983 if (hasHeader) m_t << "\\begin{Indent}";
1984 m_t << "\\textbf{ ";
1985 // changed back to rev 756 due to bug 660501
1986 //if (Config_getBool(COMPACT_LATEX))
1987 //{
1988 // m_t << "\\doxysubparagraph*{";
1989 //}
1990 //else
1991 //{
1992 // m_t << "\\doxyparagraph*{";
1993 //}
1994}

Reference OutputGenerator::m_t.

startMemberHeader()

void LatexGenerator::startMemberHeader (const QCString &, int)
virtual

Declaration at line 168 of file latexgen.h, definition at line 1544 of file latexgen.cpp.

1545{
1546 int l = m_hierarchyLevel + 1;
1547 if (Config_getBool(COMPACT_LATEX))
1548 {
1549 ++l;
1550 }
1551
1552 m_t << "\\doxysub" << QCString("sub").repeat(l) << "section*{";
1554}

References Config_getBool, m_disableLinks, m_hierarchyLevel, OutputGenerator::m_t, QCString::repeat and TRUE.

startMemberItem()

void LatexGenerator::startMemberItem (const QCString &, MemberItemType type, const QCString &)
virtual

Declaration at line 180 of file latexgen.h, definition at line 1833 of file latexgen.cpp.

1834{
1835 //printf("LatexGenerator::startMemberItem(%d)\n",annType);
1836 if (!m_codeGen->insideTabbing())
1837 {
1838 m_t << "\\item \n";
1840 }
1841}

References m_codeGen, OutputGenerator::m_t, m_templateMemberItem, OutputGenerator::Templated and type.

startMemberList()

void LatexGenerator::startMemberList ()
virtual

Declaration at line 174 of file latexgen.h, definition at line 1963 of file latexgen.cpp.

1964{
1965 if (!m_codeGen->insideTabbing())
1966 {
1967 m_t << "\\begin{DoxyCompactItemize}\n";
1968 }
1969}

References m_codeGen and OutputGenerator::m_t.

startMemberSections()

void LatexGenerator::startMemberSections ()
inline virtual

Definition at line 164 of file latexgen.h.

164 void startMemberSections() override {}

startMemberSubtitle()

void LatexGenerator::startMemberSubtitle ()
inline virtual

Definition at line 170 of file latexgen.h.

170 void startMemberSubtitle() override {}

startMemberTemplateParams()

void LatexGenerator::startMemberTemplateParams ()
virtual

Declaration at line 182 of file latexgen.h, definition at line 1817 of file latexgen.cpp.

1818{
1820 {
1821 m_t << "{\\footnotesize ";
1822 }
1823}

References OutputGenerator::m_t and m_templateMemberItem.

startPageDoc()

void LatexGenerator::startPageDoc (const QCString &)
inline virtual

Definition at line 125 of file latexgen.h.

125 void startPageDoc(const QCString &) override {}

startPageRef()

void LatexGenerator::startPageRef ()
virtual

Declaration at line 235 of file latexgen.h, definition at line 1449 of file latexgen.cpp.

1450{
1451 m_t << " \\doxyref{}{";
1452}

Reference OutputGenerator::m_t.

startParagraph()

void LatexGenerator::startParagraph (const QCString & classDef)
virtual

Declaration at line 136 of file latexgen.h, definition at line 1309 of file latexgen.cpp.

1310{
1311 m_t << "\n" << "\n";
1312}

Reference OutputGenerator::m_t.

startParameterDefVal()

void LatexGenerator::startParameterDefVal (const char * s)
inline virtual

Definition at line 286 of file latexgen.h.

286 void startParameterDefVal(const char *s) override { docify(s); startTypewriter(); }

References docify and startTypewriter.

startParameterExtra()

void LatexGenerator::startParameterExtra ()
virtual

Declaration at line 284 of file latexgen.h, definition at line 2113 of file latexgen.cpp.

2114{
2115 m_t << "{";
2116}

Reference OutputGenerator::m_t.

startParameterList()

void LatexGenerator::startParameterList (bool openBracket)
virtual

Declaration at line 288 of file latexgen.h, definition at line 2081 of file latexgen.cpp.

2082{
2083 /* start of ParameterType ParameterName list */
2084 if (openBracket) m_t << "(";
2085 m_t << "\\begin{DoxyParamCaption}";
2086}

Reference OutputGenerator::m_t.

startParameterName()

void LatexGenerator::startParameterName (bool)
virtual

Declaration at line 282 of file latexgen.h, definition at line 2103 of file latexgen.cpp.

2103void LatexGenerator::startParameterName(bool /*oneArgOnly*/)
2104{
2105 m_t << "{";
2106}

Reference OutputGenerator::m_t.

startParameterType()

void LatexGenerator::startParameterType (bool first, const QCString & key)
virtual

Declaration at line 280 of file latexgen.h, definition at line 2092 of file latexgen.cpp.

2093{
2094 m_t << "\\item[{";
2095 if (!first && !key.isEmpty()) docify(key);
2096}

References docify, QCString::isEmpty and OutputGenerator::m_t.

startPlainFile()

void LatexGenerator::startPlainFile (const QCString & name)
inline virtual

Definition at line 319 of file latexgen.h.

319 void startPlainFile(const QCString &name) override { OutputGenerator::startPlainFile(name); }

Reference OutputGenerator::startPlainFile.

Referenced by startFile and writeStyleInfo.

startProjectNumber()

void LatexGenerator::startProjectNumber ()
virtual

Declaration at line 130 of file latexgen.h, definition at line 731 of file latexgen.cpp.

732{
733 m_t << "\\\\[1ex]\\large ";
734}

Reference OutputGenerator::m_t.

startQuickIndices()

void LatexGenerator::startQuickIndices ()
inline virtual

Definition at line 237 of file latexgen.h.

237 void startQuickIndices() override {}

startSection()

void LatexGenerator::startSection (const QCString & lab, const QCString &, SectionType type)
virtual

Declaration at line 227 of file latexgen.h, definition at line 1717 of file latexgen.cpp.

1718{
1719 bool pdfHyperlinks = Config_getBool(PDF_HYPERLINKS);
1720 bool usePDFLatex = Config_getBool(USE_PDFLATEX);
1721 if (usePDFLatex && pdfHyperlinks)
1722 {
1723 m_t << "\\hypertarget{" << stripPath(lab) << "}{}";
1724 }
1725 m_t << "\\";
1726 if (Config_getBool(COMPACT_LATEX))
1727 {
1728 switch(type.level())
1729 {
1730 case SectionType::Page: m_t << "doxysubsection"; break;
1731 case SectionType::Section: m_t << "doxysubsubsection"; break;
1732 case SectionType::Subsection: m_t << "doxysubsubsubsection"; break;
1733 case SectionType::Subsubsection: m_t << "doxysubsubsubsubsection"; break;
1734 case SectionType::Paragraph: m_t << "doxysubsubsubsubsubsection"; break;
1735 case SectionType::Subparagraph: m_t << "doxysubsubsubsubsubsubsection"; break;
1736 case SectionType::Subsubparagraph: m_t << "doxysubsubsubsubsubsubsection"; break;
1737 default: ASSERT(0); break;
1738 }
1739 m_t << "{";
1740 }
1741 else
1742 {
1743 switch(type.level())
1744 {
1745 case SectionType::Page: m_t << "doxysection"; break;
1746 case SectionType::Section: m_t << "doxysubsection"; break;
1747 case SectionType::Subsection: m_t << "doxysubsubsection"; break;
1748 case SectionType::Subsubsection: m_t << "doxysubsubsubsection"; break;
1749 case SectionType::Paragraph: m_t << "doxysubsubsubsubsection"; break;
1750 case SectionType::Subparagraph: m_t << "doxysubsubsubsubsubsection"; break;
1751 case SectionType::Subsubparagraph: m_t << "doxysubsubsubsubsubsubsection"; break;
1752 default: ASSERT(0); break;
1753 }
1754 m_t << "{";
1755 }
1756}

References ASSERT, Config_getBool, OutputGenerator::m_t, SectionType::Page, SectionType::Paragraph, SectionType::Section, stripPath, SectionType::Subparagraph, SectionType::Subsection, SectionType::Subsubparagraph, SectionType::Subsubsection and type.

startSmall()

void LatexGenerator::startSmall ()
inline virtual

Definition at line 215 of file latexgen.h.

215 void startSmall() override { m_t << "\\footnotesize "; }

Reference OutputGenerator::m_t.

startTextBlock()

void LatexGenerator::startTextBlock (bool)
inline virtual

Definition at line 273 of file latexgen.h.

273 void startTextBlock(bool) override {}

startTextLink()

void LatexGenerator::startTextLink (const QCString & f, const QCString & anchor)
virtual

Declaration at line 155 of file latexgen.h, definition at line 1379 of file latexgen.cpp.

1380{
1381 bool pdfHyperlinks = Config_getBool(PDF_HYPERLINKS);
1382 if (!m_disableLinks && pdfHyperlinks)
1383 {
1384 m_t << "\\mbox{\\hyperlink{";
1385 if (!f.isEmpty()) m_t << stripPath(f);
1386 if (!anchor.isEmpty()) m_t << "_" << anchor;
1387 m_t << "}{";
1388 }
1389 else
1390 {
1391 m_t << "\\textbf{ ";
1392 }
1393}

References Config_getBool, QCString::isEmpty, m_disableLinks, OutputGenerator::m_t and stripPath.

startTitleHead()

void LatexGenerator::startTitleHead (const QCString & fileName)
virtual

Declaration at line 133 of file latexgen.h, definition at line 1463 of file latexgen.cpp.

1464{
1465 int hierarchyLevel = m_hierarchyLevel;
1466 if (Config_getBool(COMPACT_LATEX))
1467 {
1468 ++hierarchyLevel;
1469 }
1470
1471 if (hierarchyLevel < 0)
1472 m_t << "\\chapter{";
1473 else
1474 m_t << "\\doxy" << QCString("sub").repeat(hierarchyLevel) << "section{";
1475}

References Config_getBool, OutputGenerator::fileName, m_hierarchyLevel, OutputGenerator::m_t and QCString::repeat.

startTocEntry()

void LatexGenerator::startTocEntry (const SectionInfo *)
inline virtual

Definition at line 316 of file latexgen.h.

316 void startTocEntry(const SectionInfo *) override {}

startTypewriter()

void LatexGenerator::startTypewriter ()
inline virtual

Definition at line 157 of file latexgen.h.

157 void startTypewriter() override { m_t << "{\\ttfamily "; }

Reference OutputGenerator::m_t.

Referenced by startParameterDefVal.

type()

OutputType LatexGenerator::type ()
inline virtual

Definition at line 114 of file latexgen.h.

114 OutputType type() const override { return OutputType::Latex; }

Reference Latex.

Referenced by startMemberItem and startSection.

writeAnchor()

void LatexGenerator::writeAnchor (const QCString & fileName, const QCString & name)
virtual

Declaration at line 198 of file latexgen.h, definition at line 1670 of file latexgen.cpp.

1670void LatexGenerator::writeAnchor(const QCString &fName,const QCString &name)
1671{
1672 //printf("LatexGenerator::writeAnchor(%s,%s)\n",fName,name);
1673 m_t << "\\label{" << stripPath(name) << "}\n";
1674 bool pdfHyperlinks = Config_getBool(PDF_HYPERLINKS);
1675 bool usePDFLatex = Config_getBool(USE_PDFLATEX);
1676 if (usePDFLatex && pdfHyperlinks)
1677 {
1678 if (!fName.isEmpty())
1679 {
1680 m_t << "\\Hypertarget{" << stripPath(fName) << "_" << stripPath(name) << "}\n";
1681 }
1682 else
1683 {
1684 m_t << "\\Hypertarget{" << stripPath(name) << "}\n";
1685 }
1686 }
1687}

References Config_getBool, QCString::isEmpty, OutputGenerator::m_t and stripPath.

writeChar()

void LatexGenerator::writeChar (char c)
virtual

Declaration at line 209 of file latexgen.h, definition at line 1775 of file latexgen.cpp.

1776{
1777 char cs[2];
1778 cs[0]=c;
1779 cs[1]=0;
1780 docify(cs);
1781}

Reference docify.

writeDoc()

void LatexGenerator::writeDoc (const IDocNodeAST * node, const Definition * ctx, const MemberDef *, int id)
virtual

Declaration at line 118 of file latexgen.h, definition at line 2141 of file latexgen.cpp.

2141void LatexGenerator::writeDoc(const IDocNodeAST *ast,const Definition *ctx,const MemberDef *,int)
2142{
2143 const DocNodeAST *astImpl = dynamic_cast<const DocNodeAST*>(ast);
2144 if (astImpl)
2145 {
2147 ctx?ctx->getDefFileExtension():QCString(""),
2149 std::visit(visitor,astImpl->root);
2150 }
2151}

References Definition::getDefFileExtension, m_codeGen, m_codeList, m_hierarchyLevel, OutputGenerator::m_t and DocNodeAST::root.

writeFooter()

void LatexGenerator::writeFooter (const QCString &)
inline virtual

Definition at line 123 of file latexgen.h.

123 void writeFooter(const QCString &) override {}

writeGraphicalHierarchy()

void LatexGenerator::writeGraphicalHierarchy (DotGfxHierarchyTable &)
inline virtual

Definition at line 271 of file latexgen.h.

writeInheritedSectionTitle()

void LatexGenerator::writeInheritedSectionTitle (const QCString &, const QCString & ref, const QCString & file, const QCString & anchor, const QCString & title, const QCString & name)
virtual

Declaration at line 221 of file latexgen.h, definition at line 2300 of file latexgen.cpp.

2301 const QCString &/*id*/,const QCString &ref,
2302 const QCString &file, const QCString &anchor,
2303 const QCString &title, const QCString &name)
2304{
2305 if (Config_getBool(COMPACT_LATEX))
2306 {
2307 m_t << "\\doxyparagraph*{";
2308 }
2309 else
2310 {
2311 m_t << "\\doxy" << QCString("sub").repeat(m_hierarchyLevel + 1) << "section*{";
2312 }
2313 m_t << theTranslator->trInheritedFrom(convertToLaTeX(title,m_codeGen->insideTabbing()),
2314 objectLinkToString(ref, file, anchor, name, m_codeGen->insideTabbing(), m_disableLinks));
2315 m_t << "}\n";
2316}

References Config_getBool, convertToLaTeX, m_codeGen, m_disableLinks, m_hierarchyLevel, OutputGenerator::m_t, objectLinkToString, QCString::repeat and theTranslator.

writeLabel()

void LatexGenerator::writeLabel (const QCString & l, bool isLast)
virtual

Declaration at line 311 of file latexgen.h, definition at line 2290 of file latexgen.cpp.

2290void LatexGenerator::writeLabel(const QCString &l,bool isLast)
2291{
2292 m_t << "{\\ttfamily [" << l << "]}";
2293 if (!isLast) m_t << ", ";
2294}

Reference OutputGenerator::m_t.

writeLatexSpacing()

void LatexGenerator::writeLatexSpacing ()
inline virtual

Definition at line 210 of file latexgen.h.

210 void writeLatexSpacing() override { m_t << "\\hspace{0.3cm}"; }

Reference OutputGenerator::m_t.

writeLogo()

void LatexGenerator::writeLogo ()
inline virtual

Definition at line 241 of file latexgen.h.

241 void writeLogo() override {}

writeNavigationPath()

void LatexGenerator::writeNavigationPath (const QCString &)
inline virtual

Definition at line 240 of file latexgen.h.

240 void writeNavigationPath(const QCString &) override {}

writeNonBreakableSpace()

void LatexGenerator::writeNonBreakableSpace (int)
virtual

Declaration at line 247 of file latexgen.h, definition at line 1880 of file latexgen.cpp.

1881{
1882 //printf("writeNonBreakableSpace()\n");
1883 if (m_codeGen->insideTabbing())
1884 {
1885 m_t << "\\>";
1886 }
1887 else
1888 {
1889 m_t << "~";
1890 }
1891}

References m_codeGen and OutputGenerator::m_t.

writeObjectLink()

void LatexGenerator::writeObjectLink (const QCString & ref, const QCString & file, const QCString & anchor, const QCString & name)
virtual

Declaration at line 152 of file latexgen.h, definition at line 1443 of file latexgen.cpp.

1444 const QCString &anchor, const QCString &text)
1445{
1446 m_t << objectLinkToString(ref,f,anchor,text,m_codeGen->insideTabbing(),m_disableLinks);
1447}

References m_codeGen, m_disableLinks, OutputGenerator::m_t and objectLinkToString.

writePageLink()

void LatexGenerator::writePageLink (const QCString & name, bool)
virtual

Declaration at line 129 of file latexgen.h, definition at line 1275 of file latexgen.cpp.

1275void LatexGenerator::writePageLink(const QCString &name, bool /*first*/)
1276{
1277 //bool &compactLatex = Config_getBool(COMPACT_LATEX);
1278 // next is remove for bug615957
1279 //if (compactLatex || first) m_t << "\\input" ; else m_t << "\\include";
1280 m_t << "\\input" ;
1281 m_t << "{" << name << "}\n";
1282}

Reference OutputGenerator::m_t.

Referenced by endIndexSection.

writePageOutline()

void LatexGenerator::writePageOutline ()
inline virtual

Definition at line 244 of file latexgen.h.

244 void writePageOutline() override {}

writeQuickLinks()

void LatexGenerator::writeQuickLinks (HighlightedItem, const QCString &, bool)
inline virtual

Definition at line 242 of file latexgen.h.

242 void writeQuickLinks(HighlightedItem,const QCString &,bool) override {}

writeRuler()

void LatexGenerator::writeRuler ()
inline virtual

Definition at line 197 of file latexgen.h.

197 void writeRuler() override { m_t << "\n\n"; }

Reference OutputGenerator::m_t.

writeSearchInfo()

void LatexGenerator::writeSearchInfo ()
inline virtual

Definition at line 122 of file latexgen.h.

122 void writeSearchInfo() override {}

writeSplitBar()

void LatexGenerator::writeSplitBar (const QCString &, const QCString &)
inline virtual

Definition at line 239 of file latexgen.h.

239 void writeSplitBar(const QCString &,const QCString &) override {}

writeStartAnnoItem()

void LatexGenerator::writeStartAnnoItem (const QCString & type, const QCString & file, const QCString & path, const QCString & name)
virtual

Declaration at line 211 of file latexgen.h, definition at line 1341 of file latexgen.cpp.

1342 const QCString &path,const QCString &name)
1343{
1344 m_t << "\\item\\contentsline{section}\\textbf{ ";
1345 if (!path.isEmpty()) docify(path);
1346 docify(name);
1347 m_t << "} ";
1348}

References docify, QCString::isEmpty and OutputGenerator::m_t.

writeString()

void LatexGenerator::writeString (const QCString & text)
virtual

Declaration at line 138 of file latexgen.h, definition at line 1319 of file latexgen.cpp.

1320{
1321 m_t << text;
1322}

Reference OutputGenerator::m_t.

writeStyleInfo()

void LatexGenerator::writeStyleInfo (int part)
virtual

Declaration at line 132 of file latexgen.h, definition at line 1284 of file latexgen.cpp.

1285{
1286 if (part > 0)
1287 return;
1288
1289 startPlainFile("doxygen.sty");
1291 endPlainFile();
1292
1293 // workaround for the problem caused by change in LaTeX in version 2019
1294 // in the unmaintained tabu package
1295 startPlainFile("tabu_doxygen.sty");
1296 m_t << ResourceMgr::instance().getAsString("tabu_doxygen.sty");
1297 endPlainFile();
1298 startPlainFile("longtable_doxygen.sty");
1299 m_t << ResourceMgr::instance().getAsString("longtable_doxygen.sty");
1300 endPlainFile();
1301 /// an extension of the etoc package is required that is only available in the
1302 /// newer version. Providing the updated version to be used with older versions
1303 /// of LaTeX
1304 startPlainFile("etoc_doxygen.sty");
1305 m_t << ResourceMgr::instance().getAsString("etoc_doxygen.sty");
1306 endPlainFile();
1307}

References endPlainFile, ResourceMgr::getAsString, ResourceMgr::instance, OutputGenerator::m_t, startPlainFile and writeDefaultStyleSheet.

writeSummaryLink()

void LatexGenerator::writeSummaryLink (const QCString &, const QCString &, const QCString &, bool)
inline virtual

Definition at line 243 of file latexgen.h.

243 void writeSummaryLink(const QCString &,const QCString &,const QCString &,bool) override {}

writeSynopsis()

void LatexGenerator::writeSynopsis ()
inline virtual

Definition at line 232 of file latexgen.h.

232 void writeSynopsis() override {}

Private Member Functions

endTitle()

void LatexGenerator::endTitle ()
inline

Definition at line 325 of file latexgen.h.

325 void endTitle() { m_t << "}"; }

Reference OutputGenerator::m_t.

startTitle()

void LatexGenerator::startTitle ()

Declaration at line 324 of file latexgen.h, definition at line 1503 of file latexgen.cpp.

1504{
1505 if (Config_getBool(COMPACT_LATEX))
1506 {
1507 m_t << "\\doxysubsection{";
1508 }
1509 else
1510 {
1511 m_t << "\\doxysection{";
1512 }
1513}

References Config_getBool and OutputGenerator::m_t.

Private Member Attributes

m_codeGen

m_codeList

std::unique_ptr<OutputCodeList> LatexGenerator::m_codeList

Definition at line 332 of file latexgen.h.

332 std::unique_ptr<OutputCodeList> m_codeList;

Referenced by LatexGenerator, LatexGenerator, operator= and writeDoc.

m_disableLinks

bool LatexGenerator::m_disableLinks = false

m_firstDescItem

bool LatexGenerator::m_firstDescItem = true

Definition at line 327 of file latexgen.h.

327 bool m_firstDescItem = true;

Referenced by LatexGenerator and operator=.

m_hierarchyLevel

int LatexGenerator::m_hierarchyLevel = 0

m_indent

int LatexGenerator::m_indent = 0

Definition at line 330 of file latexgen.h.

330 int m_indent = 0;

Referenced by endAnonTypeScope, LatexGenerator, operator=, startAnonTypeScope and startMemberDescription.

m_insideTableEnv

bool LatexGenerator::m_insideTableEnv = false

Definition at line 334 of file latexgen.h.

334 bool m_insideTableEnv = false;

Referenced by addLabel, endMemberDocSimple, startDoxyAnchor and startMemberDocSimple.

m_relPath

QCString LatexGenerator::m_relPath

m_templateMemberItem

bool LatexGenerator::m_templateMemberItem = false

Public Static Functions

init()

void LatexGenerator::init ()
static

Declaration at line 103 of file latexgen.h, definition at line 630 of file latexgen.cpp.

631{
632 QCString dname = Config_getString(LATEX_OUTPUT);
633 Dir d(dname.str());
634 if (!d.exists() && !d.mkdir(dname.str()))
635 {
636 term("Could not create output directory {}\n",dname);
637 }
638
639 if (!Config_getString(LATEX_HEADER).isEmpty())
640 {
641 g_header_file=Config_getString(LATEX_HEADER);
643 //printf("g_header='%s'\n",qPrint(g_header));
646 }
647 else
648 {
649 g_header_file = "header.tex";
652 checkBlocks(result,"<default header.tex>",latexMarkerInfo);
653 }
654 if (!Config_getString(LATEX_FOOTER).isEmpty())
655 {
656 g_footer_file=Config_getString(LATEX_FOOTER);
658 //printf("g_footer='%s'\n",qPrint(g_footer));
661 }
662 else
663 {
664 g_footer_file = "footer.tex";
667 checkBlocks(result,"<default footer.tex>",latexMarkerInfo);
668 }
669
672
674}

References checkBlocks, Config_getString, createSubDirs, Dir::exists, fileToString, g_footer, g_footer_file, g_header, g_header_file, ResourceMgr::getAsString, ResourceMgr::instance, latexMarkerInfo, Dir::mkdir, QCString::str, substituteLatexKeywords, term, writeLatexMakefile and writeMakeBat.

Referenced by generateOutput.

writeFooterFile()

void LatexGenerator::writeFooterFile (TextStream & t)
static

Declaration at line 106 of file latexgen.h, definition at line 694 of file latexgen.cpp.

695{
696 t << "% Latex footer for doxygen " << getDoxygenVersion() << "\n";
697 t << ResourceMgr::instance().getAsString("footer.tex");
698}

References ResourceMgr::getAsString and ResourceMgr::instance.

Referenced by readConfiguration.

writeHeaderFile()

void LatexGenerator::writeHeaderFile (TextStream & t)
static

Declaration at line 105 of file latexgen.h, definition at line 688 of file latexgen.cpp.

689{
690 t << "% Latex header for doxygen " << getDoxygenVersion() << "\n";
691 t << ResourceMgr::instance().getAsString("header.tex");
692}

References ResourceMgr::getAsString and ResourceMgr::instance.

Referenced by readConfiguration.

writeStyleSheetFile()

void LatexGenerator::writeStyleSheetFile (TextStream & t)
static

Declaration at line 104 of file latexgen.h, definition at line 700 of file latexgen.cpp.

701{
702 t << "% stylesheet for doxygen " << getDoxygenVersion() << "\n";
704}

Reference writeDefaultStyleSheet.

Referenced by readConfiguration.


The documentation for this class was generated from the following files:


Generated via doxygen2docusaurus by Doxygen 1.14.0.