Doxygen
docbookgen.cpp
浏览该文件的文档.
1 /******************************************************************************
2 *
3 *
4 *
5 * Copyright (C) 1997-2015 by Dimitri van Heesch.
6 *
7 * Permission to use, copy, modify, and distribute this software and its
8 * documentation under the terms of the GNU General Public License is hereby
9 * granted. No representations are made about the suitability of this software
10 * for any purpose. It is provided "as is" without express or implied warranty.
11 * See the GNU General Public License for more details.
12 *
13 * Documents produced by Doxygen are derivative works derived from the
14 * input used in their production; they are not affected by this license.
15 *
16 */
17 
18 #include <stdlib.h>
19 
20 #include "docbookgen.h"
21 #include "doxygen.h"
22 #include "message.h"
23 #include "config.h"
24 #include "classlist.h"
25 #include "classdef.h"
26 #include "diagram.h"
27 #include "util.h"
28 #include "defargs.h"
29 #include "outputgen.h"
30 #include "dot.h"
31 #include "dotcallgraph.h"
32 #include "dotclassgraph.h"
33 #include "dotdirdeps.h"
34 #include "dotgroupcollaboration.h"
35 #include "dotincldepgraph.h"
36 #include "pagedef.h"
37 #include "filename.h"
38 #include "version.h"
39 #include "docbookvisitor.h"
40 #include "docparser.h"
41 #include "language.h"
42 #include "parserintf.h"
43 #include "arguments.h"
44 #include "memberlist.h"
45 #include "groupdef.h"
46 #include "memberdef.h"
47 #include "namespacedef.h"
48 #include "membername.h"
49 #include "membergroup.h"
50 #include "dirdef.h"
51 #include "section.h"
52 #include "dir.h"
53 
54 // no debug info
55 #define Docbook_DB(x) do {} while(0)
56 // debug to stdout
57 //#define Docbook_DB(x) printf x
58 // debug inside output
59 //#define Docbook_DB(x) QCString __t;__t.sprintf x;m_t << __t
60 
61 #if 0
62 #define DB_GEN_C DB_GEN_C1(m_t)
63 #define DB_GEN_C1(x) x << "<!-- DB_GEN_C " << __LINE__ << " -->\n";
64 #define DB_GEN_C2(y) DB_GEN_C2a(m_t,y)
65 #define DB_GEN_C2a(x,y) x << "<!-- DB_GEN_C " << __LINE__ << " " << y << " -->\n";
66 #else
67 #define DB_GEN_C
68 #define DB_GEN_C1(x)
69 #define DB_GEN_C2(y)
70 #define DB_GEN_C2a(x,y)
71 #endif
72 
73 //------------------
74 
75 inline void writeDocbookString(TextStream &t,const QCString &s)
76 {
77  t << convertToDocBook(s);
78 }
79 
80 inline void writeDocbookCodeString(TextStream &t,const QCString &str, int &col)
81 {
82  if (str.isEmpty()) return;
83  const char *s = str.data();
84  char c;
85  while ((c=*s++))
86  {
87  switch(c)
88  {
89  case '\t':
90  {
91  int tabSize = Config_getInt(TAB_SIZE);
92  int spacesToNextTabStop = tabSize - (col%tabSize);
93  col+=spacesToNextTabStop;
94  while (spacesToNextTabStop--) t << "&#32;";
95  break;
96  }
97  case ' ': t << "&#32;"; col++; break;
98  case '<': t << "&lt;"; col++; break;
99  case '>': t << "&gt;"; col++; break;
100  case '&': t << "&amp;"; col++; break;
101  case '\'': t << "&apos;"; col++; break;
102  case '"': t << "&quot;"; col++; break;
103  default:
104  {
105  uchar uc = static_cast<uchar>(c);
106  static const char *hex="0123456789ABCDEF";
107  if (uc<32)
108  {
109  t << "&#x24" << hex[uc>>4] << hex[uc&0xF] << ";";
110  }
111  else
112  {
113  t << c;
114  }
115  col++;
116  }
117  break;
118  }
119  }
120 }
121 
122 static void addIndexTerm(TextStream &t, QCString prim, QCString sec = "")
123 {
124  t << "<indexterm><primary>";
125  t << convertToDocBook(prim);
126  t << "</primary>";
127  if (!sec.isEmpty())
128  {
129  t << "<secondary>";
130  t << convertToDocBook(sec);
131  t << "</secondary>";
132  }
133  t << "</indexterm>\n";
134 }
135 void writeDocbookLink(TextStream &t,const QCString & /*extRef*/,const QCString &compoundId,
136  const QCString &anchorId,const QCString & text,const QCString & /*tooltip*/)
137 {
138  t << "<link linkend=\"_" << stripPath(compoundId);
139  if (!anchorId.isEmpty()) t << "_1" << anchorId;
140  t << "\"";
141  t << ">";
142  writeDocbookString(t,text);
143  t << "</link>";
144 }
145 
147 {
148 }
149 
151 
153 {
154  Docbook_DB(("(codify \"%s\")\n",text));
156 }
157 
159  const QCString &ref,const QCString &file,
160  const QCString &anchor,const QCString &name,
161  const QCString &tooltip)
162 {
163  Docbook_DB(("(writeCodeLink)\n"));
164  writeDocbookLink(m_t,ref,file,anchor,name,tooltip);
165  m_col+=name.length();
166 }
167 
169  const QCString &,const QCString &file,
170  const QCString &,const QCString &name,
171  const QCString &,bool writeLineAnchor)
172 {
173  Docbook_DB(("(writeCodeLinkLine)\n"));
174  if (!writeLineAnchor) return;
175  m_t << "<anchor xml:id=\"_" << stripExtensionGeneral(stripPath(file),".xml");
176  m_t << "_1l";
177  writeDocbookString(m_t,name);
178  m_t << "\"/>";
179  m_col+=name.length();
180 }
181 
183  const QCString &, const SourceLinkInfo &, const SourceLinkInfo &
184  )
185 {
186  Docbook_DB(("(writeToolTip)\n"));
187 }
188 
190 {
191  Docbook_DB(("(startCodeLine)\n"));
193  m_col=0;
194 }
195 
197 {
198  if (m_insideCodeLine) m_t << "\n";
199  Docbook_DB(("(endCodeLine)\n"));
200  m_lineNumber = -1;
201  m_refId.resize(0);
202  m_external.resize(0);
204 }
205 
207 {
208  Docbook_DB(("(startFontClass)\n"));
209  m_t << "<emphasis role=\"" << colorClass << "\">";
211 }
212 
214 {
215  Docbook_DB(("(endFontClass)\n"));
216  m_t << "</emphasis>"; // non DocBook
218 }
219 
221 {
222  Docbook_DB(("(writeCodeAnchor)\n"));
223 }
224 
226  const QCString &anchor,int l,bool writeLineAnchor)
227 {
228  Docbook_DB(("(writeLineNumber)\n"));
230  if (Config_getBool(SOURCE_BROWSER))
231  {
232  QCString lineNumber;
233  lineNumber.sprintf("%05d",l);
234 
235  if (!m_sourceFileName.isEmpty())
236  {
237  writeCodeLinkLine(CodeSymbolType::Default,ref,m_sourceFileName,anchor,lineNumber,QCString(),writeLineAnchor);
238  }
239  if (!fileName.isEmpty())
240  {
241  writeCodeLink(CodeSymbolType::Default,ref,fileName,anchor,lineNumber,QCString());
242  }
243  else
244  {
245  codify(lineNumber);
246  }
247  m_t << " ";
248  }
249  else
250  {
251  m_t << l << " ";
252  }
253  m_col=0;
254 }
255 
257 {
258 }
259 
261 {
262 }
263 
265 {
266  endCodeLine();
267 }
268 
270 {
271 DB_GEN_C1(m_t)
272  m_t << "<programlisting linenumbering=\"unnumbered\">";
273 }
274 
276 {
277 DB_GEN_C1(m_t)
278  //endCodeLine checks is there is still an open code line, if so closes it.
279  endCodeLine();
280 
281  m_t << "</programlisting>";
282 }
283 
284 //-------------------------------------------------------------------------------
285 
287 {
288 DB_GEN_C
289 }
290 
292 {
293 }
294 
296 {
298  return *this;
299 }
300 
301 std::unique_ptr<OutputGenerator> DocbookGenerator::clone() const
302 {
303  return std::make_unique<DocbookGenerator>(*this);
304 }
305 
307 {
308 DB_GEN_C
309 }
310 
312 {
313  QCString dir=Config_getString(DOCBOOK_OUTPUT);
314  Dir d(dir.str());
315  if (!d.exists() && !d.mkdir(dir.str()))
316  {
317  term("Could not create output directory %s\n",qPrint(dir));
318  }
319 
320  createSubDirs(d);
321 }
323 {
324  QCString dname = Config_getString(DOCBOOK_OUTPUT);
325  Dir d(dname.str());
326  clearSubDirs(d);
327 }
328 
329 
330 void DocbookGenerator::startFile(const QCString &name,const QCString &,const QCString &,int)
331 {
332 DB_GEN_C
333  QCString fileName=name;
334  QCString pageName;
335  QCString fileType="section";
336  if (fileName == "refman")
337  {
338  fileName="index";
339  fileType="book";
340  }
341  else if (fileName == "index")
342  {
343  fileName="mainpage";
344  fileType="chapter";
345  }
346  pageName = fileName;
348  if (fileName.right(4)!=".xml") fileName+=".xml";
352 
353  m_t << "<?xml version='1.0' encoding='UTF-8' standalone='no'?>\n";;
354  m_t << "<" << fileType << " xmlns=\"http://docbook.org/ns/docbook\" version=\"5.0\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"";
355  if (!pageName.isEmpty()) m_t << " xml:id=\"_" << stripPath(pageName) << "\"";
356  m_t << " xml:lang=\"" << theTranslator->trISOLang() << "\"";
357  m_t << ">\n";
358 }
359 
361 {
362 DB_GEN_C
364  m_inLevel = -1;
365  m_inGroup = FALSE;
366 
367  QCString fileType="section";
369  if (fileName == "index.xml")
370  {
371  fileType="book";
372  }
373  else if (fileName == "mainpage.xml")
374  {
375  fileType="chapter";
376  }
377  m_t << "</" << fileType << ">\n";
378  endPlainFile();
380 }
381 
383 {
384 DB_GEN_C2("IndexSections " << is)
385  switch (is)
386  {
387  case isTitlePageStart:
388  {
389  QCString dbk_projectName = Config_getString(PROJECT_NAME);
390  m_t << " <info>\n";
391  m_t << " <title>" << convertToDocBook(dbk_projectName) << "</title>\n";
392  m_t << " </info>\n";
393  }
394  break;
395  case isTitlePageAuthor:
396  break;
397  case isMainPage:
398  m_t << "<chapter>\n";
399  m_t << " <title>";
400  break;
401  case isModuleIndex:
402  //Module Index}\n"
403  break;
404  case isDirIndex:
405  //Directory Index}\n"
406  break;
407  case isNamespaceIndex:
408  //Namespace Index}\n"
409  break;
410  case isConceptIndex:
411  //Concept Index}\n"
412  break;
414  //Hierarchical Index}\n"
415  break;
416  case isCompoundIndex:
417  //m_t << "{"; //Class Index}\n"
418  break;
419  case isFileIndex:
420  //Annotated File Index}\n"
421  break;
422  case isPageIndex:
423  //Annotated Page Index}\n"
424  break;
426  m_t << "<chapter>\n";
427  m_t << " <title>";
428  break;
429  case isDirDocumentation:
430  m_t << "<chapter>\n";
431  m_t << " <title>";
432  break;
434  m_t << "<chapter>\n";
435  m_t << " <title>";
436  break;
438  m_t << "<chapter>\n";
439  m_t << " <title>";
440  break;
442  m_t << "<chapter>\n";
443  m_t << " <title>";
444  break;
445  case isFileDocumentation:
446  m_t << "<chapter>\n";
447  m_t << " <title>";
448  break;
450  m_t << "<chapter>\n";
451  m_t << " <title>";
452  break;
453  case isPageDocumentation:
454  break;
456  break;
457  case isEndIndex:
458  break;
459  }
460 }
461 
463 {
464 DB_GEN_C2("IndexSections " << is)
465  switch (is)
466  {
467  case isTitlePageStart:
468  break;
469  case isTitlePageAuthor:
470  break;
471  case isMainPage:
472  m_t << "</title>\n";
473  m_t << " <xi:include href=\"mainpage.xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>\n";
474  m_t << "</chapter>\n";
475  break;
476  case isModuleIndex:
477  //m_t << "</chapter>\n";
478  break;
479  case isDirIndex:
480  //m_t << "<xi:include href=\"dirs.xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>";
481  //m_t << "</chapter>\n";
482  break;
483  case isNamespaceIndex:
484  //m_t << "<xi:include href=\"namespaces.xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>";
485  //m_t << "</chapter>\n";
486  break;
487  case isConceptIndex:
488  //m_t << "<xi:include href=\"concepts.xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>";
489  //m_t << "</chapter>\n";
490  break;
492  //m_t << "<xi:include href=\"hierarchy.xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>";
493  //m_t << "</chapter>\n";
494  break;
495  case isCompoundIndex:
496  //m_t << "</chapter>\n";
497  break;
498  case isFileIndex:
499  //m_t << "<xi:include href=\"files.xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>";
500  //m_t << "</chapter>\n";
501  break;
502  case isPageIndex:
503  //m_t << "<xi:include href=\"pages.xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>";
504  //m_t << "</chapter>\n";
505  break;
507  {
508  m_t << "</title>\n";
509  for (const auto &gd : *Doxygen::groupLinkedMap)
510  {
511  if (!gd->isReference())
512  {
513  m_t << " <xi:include href=\"" << gd->getOutputFileBase() << ".xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>\n";
514  }
515  }
516  }
517  m_t << "</chapter>\n";
518  break;
519  case isDirDocumentation:
520  {
521  m_t << "</title>\n";
522  for (const auto &dd : *Doxygen::dirLinkedMap)
523  {
524  if (dd->isLinkableInProject())
525  {
526  m_t << "< xi:include href=\"" << dd->getOutputFileBase() << ".xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>\n";
527  }
528  }
529  }
530  m_t << "</chapter>\n";
531  break;
533  {
534  m_t << "</title>\n";
535  for (const auto &nd : *Doxygen::namespaceLinkedMap)
536  {
537  if (nd->isLinkableInProject() && !nd->isAlias())
538  {
539  m_t << "<xi:include href=\"" << nd->getOutputFileBase() << ".xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>\n";
540  }
541  }
542  }
543  m_t << "</chapter>\n";
544  break;
546  {
547  m_t << "</title>\n";
548  for (const auto &cd : *Doxygen::conceptLinkedMap)
549  {
550  if (cd->isLinkableInProject() && !cd->isAlias())
551  {
552  m_t << "<xi:include href=\"" << cd->getOutputFileBase() << ".xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>\n";
553  }
554  }
555  }
556  m_t << "</chapter>\n";
557  break;
559  {
560  m_t << "</title>\n";
561  for (const auto &cd : *Doxygen::classLinkedMap)
562  {
563  if (cd->isLinkableInProject() &&
564  cd->templateMaster()==0 &&
565  !cd->isEmbeddedInOuterScope() &&
566  !cd->isAlias()
567  )
568  {
569  m_t << " <xi:include href=\"" << cd->getOutputFileBase() << ".xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>\n";
570  }
571  }
572  }
573  m_t << "</chapter>\n";
574  break;
575  case isFileDocumentation:
576  {
577  m_t << "</title>\n";
578  for (const auto &fn : *Doxygen::inputNameLinkedMap)
579  {
580  for (const auto &fd : *fn)
581  {
582  if (fd->isLinkableInProject())
583  {
584  m_t << " <xi:include href=\"" << fd->getOutputFileBase() << ".xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>\n";
585  }
586  if (fd->generateSourceFile())
587  {
588  m_t << " <xi:include href=\"" << fd->getSourceFileBase() << ".xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>\n";
589  }
590  }
591  }
592  }
593  m_t << "</chapter>\n";
594  break;
596  {
597  m_t << "</title>\n";
598  for (const auto &pd : *Doxygen::exampleLinkedMap)
599  {
600  m_t << " <xi:include href=\"" << pd->getOutputFileBase() << ".xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>\n";
601  }
602  }
603  m_t << "</chapter>\n";
604  break;
605  case isPageDocumentation:
606  break;
608  break;
609  case isEndIndex:
610  m_t << "<index/>\n";
611  break;
612  }
613 }
614 void DocbookGenerator::writePageLink(const QCString &name, bool /*first*/)
615 {
616 DB_GEN_C
617  for (const auto &pd : *Doxygen::pageLinkedMap)
618  {
619  if (!pd->getGroupDef() && !pd->isReference() && pd->name() == stripPath(name))
620  {
621  m_t << "<chapter>\n";
622  if (pd->hasTitle())
623  {
624  m_t << " <title>" << convertToDocBook(pd->title()) << "</title>\n";
625  }
626  else
627  {
628  m_t << " <title>" << convertToDocBook(pd->name()) << "</title>\n";
629  }
630  m_t << " <xi:include href=\"" << pd->getOutputFileBase() << ".xml\" xmlns:xi=\"http://www.w3.org/2001/XInclude\"/>\n";
631  m_t << "</chapter>\n";
632  }
633  }
634 }
635 
637 {
638 DB_GEN_C
639  DocbookDocVisitor *visitor =
640  new DocbookDocVisitor(m_t,*this,ctx?ctx->getDefFileExtension():QCString());
641  n->accept(visitor);
642  delete visitor;
643 }
644 
646 {
647 DB_GEN_C
648  m_t << "<para>\n";
649 }
650 
652 {
653 DB_GEN_C
654  m_t << "</para>\n";
655 }
657 {
658 DB_GEN_C
659  m_t << text;
660 }
662 {
663 DB_GEN_C
664  m_t << "<simplesect>\n";
666  m_t << " <title>";
667 }
668 
670 {
671 DB_GEN_C
672  m_t << " </title>\n";
673 }
675 {
676 DB_GEN_C
677  m_t << convertToDocBook(str);
678 }
680  const QCString &anchor, const QCString &text)
681 {
682 DB_GEN_C
683  if (!anchor.isEmpty())
684  {
685  if (!f.isEmpty()) m_t << "<link linkend=\"_" << stripPath(f) << "_1" << anchor << "\">";
686  else m_t << "<link linkend=\"_" << anchor << "\">";
687  }
688  else
689  {
690  m_t << "<link linkend=\"_" << stripPath(f) << "\">";
691  }
692  docify(text);
693  m_t << "</link>";
694 }
696 {
697 DB_GEN_C
698  m_t << " <itemizedlist>\n";
699  m_levelListItem++;
700 }
702 {
703 DB_GEN_C
704  if (m_inListItem[m_levelListItem]) m_t << "</listitem>\n";
706  m_t << " </itemizedlist>\n";
708  if (m_inSimpleSect[m_levelListItem]) m_t << "</simplesect>\n";
710 }
712 {
713 DB_GEN_C
714  if (m_inListItem[m_levelListItem]) m_t << "</listitem>\n";
715  m_t << " <listitem><para>";
717 }
719 {
720 DB_GEN_C
721  m_t << "</para>\n";
722 }
724 {
725 DB_GEN_C
726  m_t << "<emphasis role=\"strong\">";
727 }
729 {
730 DB_GEN_C
731  m_t << "</emphasis>";
732 }
733 void DocbookGenerator::startGroupHeader(int extraIndentLevel)
734 {
735 DB_GEN_C2("m_inLevel " << m_inLevel)
736 DB_GEN_C2("extraIndentLevel " << extraIndentLevel)
738  if (m_inSimpleSect[m_levelListItem]) m_t << "</simplesect>\n";
740  if (m_inLevel != -1) m_inGroup = TRUE;
741  if (m_inLevel == extraIndentLevel) closeSection();
742  m_inLevel = extraIndentLevel;
743  openSection();
744  m_t << "<title>";
745 }
747 {
748 DB_GEN_C2("m_inLevel " << m_inLevel)
749 DB_GEN_C2("m_inGroup " << m_inGroup)
750  if (m_inGroup) closeSection();
751  m_inGroup = FALSE;
752 }
753 
755 {
756 DB_GEN_C
757  m_t << "</title>\n";
758 }
759 
761 {
762 DB_GEN_C
763  if (openBracket) m_t << "(";
764 }
766 {
767 DB_GEN_C
768 }
770 {
771 DB_GEN_C
772  for (int i=0;i<n;i++) m_t << " ";
773 }
775 {
776 DB_GEN_C
777  m_t << "\n";
778 }
780 {
781 DB_GEN_C
782  if (!m_denseText) m_t << "<computeroutput>";
783 }
785 {
786 DB_GEN_C
787  if (!m_denseText) m_t << "</computeroutput>\n";
788 }
790 {
791 DB_GEN_C
792  if (dense)
793  {
794  m_denseText = TRUE;
795  m_t << "<programlisting linenumbering=\"unnumbered\">";
796  }
797 }
799 {
800 DB_GEN_C
801  if (m_denseText)
802  {
803  m_denseText = FALSE;
804  m_t << "</programlisting>";
805  }
806 }
807 void DocbookGenerator::startMemberDoc(const QCString &clname, const QCString &memname, const QCString &, const QCString &title,
808  int memCount, int memTotal, bool)
809 {
810 DB_GEN_C2("m_inLevel " << m_inLevel)
811  openSection();
812  m_t << " <title>" << convertToDocBook(title);
813  if (memTotal>1)
814  {
815  m_t << "<computeroutput>[" << memCount << "/" << memTotal << "]</computeroutput>";
816  }
817  m_t << "</title>\n";
818  if (!memname.isEmpty() && memname[0]!='@')
819  {
820  addIndexTerm(m_t,memname,clname);
821  addIndexTerm(m_t,clname,memname);
822  }
823 }
825 {
826 DB_GEN_C
827  m_t << "</computeroutput></para>";
828 }
830 {
831 DB_GEN_C
832  m_t << "<title>";
833 }
835 {
836 DB_GEN_C
837  m_t << "</title>\n";
838  if (!name.isEmpty()) addIndexTerm(m_t, name);
839 }
841  const QCString &anchor,const QCString &,
842  const QCString &)
843 {
844 DB_GEN_C
846  {
847  if (!m_firstMember) closeSection();
849  }
850  if (!anchor.isEmpty())
851  {
852  m_t << "<anchor xml:id=\"_" << stripPath(fName) << "_1" << anchor << "\"/>";
853  }
854 }
856 {
857 DB_GEN_C
858 }
860 {
861 DB_GEN_C
862  m_t << "<para><computeroutput>";
863 }
865 {
866 DB_GEN_C
867 }
869 {
870 DB_GEN_C
871  m_t << "<simplesect><title>";
872 }
874 {
875 DB_GEN_C
876  m_t << "</title>\n";
877 }
879 {
880 DB_GEN_C
881 }
883 {
884 DB_GEN_C
885  m_t << "</simplesect>\n";
886 }
888 {
889 DB_GEN_C
890  m_t << "<para>";
891 }
892 
893 void DocbookGenerator::endClassDiagram(const ClassDiagram &d, const QCString &fileName,const QCString &)
894 {
895 DB_GEN_C
896  m_t << " <informalfigure>\n";
897  m_t << " <mediaobject>\n";
898  m_t << " <imageobject>\n";
899  m_t << " <imagedata width=\"50%\" align=\"center\" valign=\"middle\" scalefit=\"0\" fileref=\""
900  << relPath << fileName << ".png\">" << "</imagedata>\n";
901  m_t << " </imageobject>\n";
903  m_t << " </mediaobject>\n";
904  m_t << " </informalfigure>\n";
905  m_t << "</para>\n";
906 }
908 {
909 DB_GEN_C
910 }
911 
912 void DocbookGenerator::writeLabel(const QCString &l,bool isLast)
913 {
914 DB_GEN_C
915  m_t << "<computeroutput>[" << l << "]</computeroutput>";
916  if (!isLast) m_t << ", ";
917 }
918 
920 {
921 DB_GEN_C
922 }
924 {
925 DB_GEN_C
926  m_t << "<simplesect><title>";
928  m_t << "</title>";
929 }
930 
932 {
933 DB_GEN_C
934  m_t << "</simplesect>\n";
935 }
937 {
938 DB_GEN_C
939  m_t << "<simplesect><title>";
940 }
942 {
943 DB_GEN_C
944  m_t << "</title></simplesect>\n";
945 }
947 {
948 DB_GEN_C
949  char cs[2];
950  cs[0]=c;
951  cs[1]=0;
952  docify(cs);
953 }
955 {
956 DB_GEN_C
957  m_t << "<computeroutput>";
958 }
960 {
961 DB_GEN_C
962  m_t << "</computeroutput>";
963 }
964 void DocbookGenerator::exceptionEntry(const QCString &prefix,bool closeBracket)
965 {
966 DB_GEN_C
967  if (!prefix.isEmpty())
968  {
969  m_t << " " << prefix << "(";
970  }
971  else if (closeBracket)
972  {
973  m_t << ")";
974  }
975  m_t << " ";
976 }
978 {
979 DB_GEN_C
980  m_t << " ";
981 }
982 void DocbookGenerator::endParameterName(bool last,bool /*emptyList*/,bool closeBracket)
983 {
984 DB_GEN_C
985  if (last)
986  {
987  if (closeBracket) m_t << ")";
988  }
989 }
991 {
992 DB_GEN_C
993 }
994 
996 {
997 DB_GEN_C
998  m_t << "</para>";
999  m_t << "<para>";
1000 }
1002 {
1003 DB_GEN_C
1004  openSection("xml:id=\"_" + stripPath(lab) + "\"");
1005  m_t << "<title>";
1006 }
1008 {
1009 DB_GEN_C
1010  m_t << "</title>";
1011  closeSection();
1012 }
1014 {
1015 DB_GEN_C
1016  addIndexTerm(m_t, prim, sec);
1017 }
1018 
1020 {
1021 DB_GEN_C
1022  int ncols;
1023  QCString title;
1024  if (isEnum)
1025  {
1026  ncols = 2;
1028  }
1029  else
1030  {
1031  ncols = 3;
1032  title = theTranslator->trCompoundMembers();
1033  }
1034  m_t << "<table frame=\"all\">\n";
1035  if (!title.isEmpty()) m_t << "<title>" << convertToDocBook(title) << "</title>\n";
1036  m_t << " <tgroup cols=\"" << ncols << "\" align=\"left\" colsep=\"1\" rowsep=\"1\">\n";
1037  for (int i = 0; i < ncols; i++)
1038  {
1039  m_t << " <colspec colname='c" << i+1 << "'/>\n";
1040  }
1041  m_t << "<tbody>\n";
1042  m_simpleTable = true;
1043 }
1044 
1046 {
1047 DB_GEN_C
1048  m_t << " </tbody>\n";
1049  m_t << " </tgroup>\n";
1050  m_t << "</table>\n";
1051  m_simpleTable = false;
1052 }
1053 
1055 {
1056 DB_GEN_C
1057  m_t << "<row><entry>";
1058 }
1059 
1061 {
1062 DB_GEN_C
1063  m_t << "</entry>";
1064 }
1065 
1067 {
1068 DB_GEN_C
1069  m_t << "<entry>";
1070 }
1071 
1073 {
1074 DB_GEN_C
1075  m_t << "</entry>";
1076 }
1077 
1079 {
1080 DB_GEN_C
1081  m_t << "<entry>";
1082 }
1083 
1085 {
1086 DB_GEN_C
1087  m_t << "</entry></row>\n";
1088 }
1089 
1091 {
1092 DB_GEN_C
1093  int ncols = 2;
1094  m_t << "<informaltable frame=\"all\">\n";
1095  if (!title.isEmpty()) m_t << "<title>" << convertToDocBook(title) << "</title>\n";
1096  m_t << " <tgroup cols=\"" << ncols << "\" align=\"left\" colsep=\"1\" rowsep=\"1\">\n";
1097  for (int i = 0; i < ncols; i++)
1098  {
1099  m_t << " <colspec colname='c" << i+1 << "'/>\n";
1100  }
1101  m_t << "<tbody>\n";
1102  m_descTable = TRUE;
1103 }
1104 
1106 {
1107 DB_GEN_C
1108  m_t << " </tbody>\n";
1109  m_t << " </tgroup>\n";
1110  m_t << "</informaltable>\n";
1111  m_descTable = FALSE;
1112 }
1113 
1115 {
1116 DB_GEN_C
1117  m_t << "<row>";
1118  m_t << "<entry>";
1119 }
1120 
1122 {
1123 DB_GEN_C
1124  m_t << "</row>";
1125 }
1126 
1128 {
1129 DB_GEN_C
1130 }
1131 
1133 {
1134 DB_GEN_C
1135 }
1136 
1138 {
1139 DB_GEN_C
1140  m_t << "</entry><entry>";
1141 }
1142 
1144 {
1145 DB_GEN_C
1146  m_t << "</entry>";
1147 }
1149 {
1150 DB_GEN_C
1151 }
1153 {
1154 DB_GEN_C
1156 }
1158 {
1159 DB_GEN_C
1160 }
1162 {
1163 DB_GEN_C
1165 }
1167 {
1168 DB_GEN_C
1169 }
1171 {
1172 DB_GEN_C
1174 }
1176 {
1177 DB_GEN_C
1178 }
1180 {
1181 DB_GEN_C
1183 }
1185 {
1186 DB_GEN_C
1187 }
1189 {
1190 DB_GEN_C
1192 }
1194 {
1195 DB_GEN_C
1196 }
1198 {
1199 DB_GEN_C
1200  m_inGroup = TRUE;
1201 }
1203 {
1204 DB_GEN_C
1205  m_t << "<simplesect><title>";
1206  docify(header);
1207  m_t << "</title>\n";
1208 }
1210 {
1211 DB_GEN_C
1212  m_t << "<para><emphasis role=\"strong\">";
1213 }
1215 {
1216 DB_GEN_C
1217 }
1219 {
1220 DB_GEN_C
1221  m_t << ":";
1222 }
1224 {
1225 DB_GEN_C
1226  m_t << "</emphasis></para>\n";
1227 }
1229 {
1230 DB_GEN_C
1231 }
1233 {
1234 DB_GEN_C
1235 }
1237 {
1238 DB_GEN_C
1239  m_t << "</simplesect>\n";
1240 }
1241 
1243 {
1244  m_t << "<section";
1245  if (!attr.isEmpty()) m_t << " " << attr;
1246  m_t << ">\n";
1248 }
1249 
1251 {
1252  m_t << "</section>\n";
1254 }
1255 
1257 {
1258  while (m_openSectionCount>0)
1259  {
1260  closeSection();
1261  }
1262 }
1263 
DocbookCodeGenerator::m_insideSpecialHL
bool m_insideSpecialHL
Definition: docbookgen.h:76
Definition::getDefFileExtension
virtual QCString getDefFileExtension() const =0
OutputGenerator::fileName
QCString fileName() const
Definition: outputgen.cpp:85
DocbookGenerator::startParameterList
void startParameterList(bool)
Definition: docbookgen.cpp:760
isExampleDocumentation
@ isExampleDocumentation
Definition: index.h:134
DocbookGenerator::startTitleHead
void startTitleHead(const QCString &)
Definition: docbookgen.cpp:829
dotincldepgraph.h
DocbookGenerator::startMemberDocList
void startMemberDocList()
Definition: docbookgen.cpp:1193
DocbookGenerator::startTypewriter
void startTypewriter()
Definition: docbookgen.cpp:779
DocbookGenerator::m_simpleTable
bool m_simpleTable
Definition: docbookgen.h:355
isDirDocumentation
@ isDirDocumentation
Definition: index.h:129
Translator::trCompoundMembers
virtual QCString trCompoundMembers()=0
DocbookGenerator::openSection
void openSection(const QCString &attr=QCString())
Definition: docbookgen.cpp:1242
DocbookGenerator::startMemberTemplateParams
void startMemberTemplateParams()
Definition: docbookgen.cpp:990
DocbookCodeGenerator::m_col
int m_col
Definition: docbookgen.h:74
DocbookGenerator::endTypewriter
void endTypewriter()
Definition: docbookgen.cpp:784
DocbookGenerator::m_codeGen
DocbookCodeGenerator m_codeGen
Definition: docbookgen.h:348
isNamespaceIndex
@ isNamespaceIndex
Definition: index.h:122
stripExtensionGeneral
QCString stripExtensionGeneral(const QCString &fName, const QCString &ext)
Definition: util.cpp:5285
DocbookCodeGenerator::~DocbookCodeGenerator
virtual ~DocbookCodeGenerator()
Definition: docbookgen.cpp:150
membergroup.h
DotDirDeps
Representation of an directory dependency graph
Definition: dotdirdeps.h:25
DocbookGenerator::endDotGraph
void endDotGraph(DotClassGraph &g)
Definition: docbookgen.cpp:1161
DocbookCodeGenerator::startCodeFragment
void startCodeFragment(const QCString &style)
Definition: docbookgen.cpp:269
DocbookGenerator::endParameterName
void endParameterName(bool, bool, bool)
Definition: docbookgen.cpp:982
DocbookGenerator::writeRuler
void writeRuler()
Definition: docbookgen.cpp:746
Definition
The common base class of all entity definitions found in the sources.
Definition: definition.h:76
DocbookGenerator::writeChar
void writeChar(char)
Definition: docbookgen.cpp:946
relativePathToRoot
QCString relativePathToRoot(const QCString &name)
Definition: util.cpp:3656
DocbookGenerator::startMemberDocSimple
void startMemberDocSimple(bool)
Definition: docbookgen.cpp:1019
Dir
Class representing a directory in the file system
Definition: dir.h:68
DocbookGenerator::startSection
void startSection(const QCString &, const QCString &, SectionType)
Definition: docbookgen.cpp:1001
DocbookGenerator::endMemberDocSimple
void endMemberDocSimple(bool)
Definition: docbookgen.cpp:1045
DocbookGenerator::endGroupHeader
void endGroupHeader(int)
Definition: docbookgen.cpp:754
DocbookGenerator::endConstraintType
void endConstraintType()
Definition: docbookgen.cpp:1223
DocbookGenerator::startDescTableData
void startDescTableData()
Definition: docbookgen.cpp:1137
pagedef.h
DocbookGenerator::endConstraintParam
void endConstraintParam()
Definition: docbookgen.cpp:1214
DocbookCodeGenerator::m_lineNumber
int m_lineNumber
Definition: docbookgen.h:73
isFileIndex
@ isFileIndex
Definition: index.h:126
QCString::length
uint length() const
Returns the length of the string, not counting the 0-terminator.
Definition: qcstring.h:147
DocbookGenerator::endIndexSection
void endIndexSection(IndexSections)
Definition: docbookgen.cpp:462
isCompoundIndex
@ isCompoundIndex
Definition: index.h:125
ClassDiagram::writeImage
void writeImage(TextStream &t, const QCString &path, const QCString &relPath, const QCString &file, bool generateMap=true) const
Definition: diagram.cpp:1342
DocbookGenerator::endMemberDocList
void endMemberDocList()
Definition: docbookgen.cpp:1197
DocbookGenerator::m_levelListItem
int m_levelListItem
Definition: docbookgen.h:351
Doxygen::conceptLinkedMap
static ConceptLinkedMap * conceptLinkedMap
Definition: doxygen.h:80
DocbookGenerator::startMemberItem
void startMemberItem(const QCString &, int, const QCString &)
Definition: docbookgen.cpp:711
DocbookCodeGenerator::writeLineNumber
void writeLineNumber(const QCString &extRef, const QCString &compId, const QCString &anchorId, int l, bool writeLineAnchor)
Definition: docbookgen.cpp:225
writeDocbookCodeString
void writeDocbookCodeString(TextStream &t, const QCString &str, int &col)
Definition: docbookgen.cpp:80
isTitlePageStart
@ isTitlePageStart
Definition: index.h:117
memberdef.h
DocbookCodeGenerator::addWord
void addWord(const QCString &, bool)
Definition: docbookgen.cpp:260
DocbookGenerator::endDescTableData
void endDescTableData()
Definition: docbookgen.cpp:1143
DocbookGenerator::startCallGraph
void startCallGraph()
Definition: docbookgen.cpp:1175
DocbookGenerator::endDescTable
void endDescTable()
Definition: docbookgen.cpp:1105
DocbookGenerator::startInclDepGraph
void startInclDepGraph()
Definition: docbookgen.cpp:1166
QCString::isEmpty
bool isEmpty() const
Returns TRUE iff the string is empty
Definition: qcstring.h:144
DocbookGenerator::startMemberDoc
void startMemberDoc(const QCString &, const QCString &, const QCString &, const QCString &, int, int, bool)
Definition: docbookgen.cpp:807
DocNode
Abstract node interface with type information.
Definition: docparser.h:96
isPageIndex
@ isPageIndex
Definition: index.h:127
DocbookCodeGenerator::m_t
TextStream & m_t
Definition: docbookgen.h:70
section.h
Doxygen::pageLinkedMap
static PageLinkedMap * pageLinkedMap
Definition: doxygen.h:82
addIndexTerm
static void addIndexTerm(TextStream &t, QCString prim, QCString sec="")
Definition: docbookgen.cpp:122
DocbookGenerator::endInlineMemberName
void endInlineMemberName()
Definition: docbookgen.cpp:1072
namespacedef.h
dotdirdeps.h
DocbookGenerator::startDescTableTitle
void startDescTableTitle()
Definition: docbookgen.cpp:1127
DocbookGenerator::startLabels
void startLabels()
Definition: docbookgen.cpp:907
membername.h
DocbookGenerator::endCallGraph
void endCallGraph(DotCallGraph &g)
Definition: docbookgen.cpp:1179
DocbookGenerator::startMemberGroup
void startMemberGroup()
Definition: docbookgen.cpp:878
DotGroupCollaboration::writeGraph
QCString writeGraph(TextStream &t, GraphOutputFormat gf, EmbeddedOutputFormat ef, const QCString &path, const QCString &fileName, const QCString &relPath, bool writeImageMap=TRUE, int graphId=-1)
Definition: dotgroupcollaboration.cpp:242
DocbookGenerator::endDescTableTitle
void endDescTableTitle()
Definition: docbookgen.cpp:1132
DocbookCodeGenerator::writeCodeLinkLine
void writeCodeLinkLine(CodeSymbolType type, const QCString &ref, const QCString &file, const QCString &anchor, const QCString &name, const QCString &tooltip, bool)
Definition: docbookgen.cpp:168
DocbookCodeGenerator::DocbookCodeGenerator
DocbookCodeGenerator(TextStream &t)
Definition: docbookgen.cpp:146
QCString::str
std::string str() const
Definition: qcstring.h:442
DotClassGraph::writeGraph
QCString writeGraph(TextStream &t, GraphOutputFormat gf, EmbeddedOutputFormat ef, const QCString &path, const QCString &fileName, const QCString &relPath, bool TBRank=TRUE, bool imageMap=TRUE, int graphId=-1)
Definition: dotclassgraph.cpp:447
DocbookGenerator::startParameterName
void startParameterName(bool)
Definition: docbookgen.cpp:977
DocbookGenerator::startMemberGroupHeader
void startMemberGroupHeader(bool)
Definition: docbookgen.cpp:868
writeDocbookString
void writeDocbookString(TextStream &t, const QCString &s)
Definition: docbookgen.cpp:75
isClassDocumentation
@ isClassDocumentation
Definition: index.h:131
isModuleDocumentation
@ isModuleDocumentation
Definition: index.h:128
isConceptIndex
@ isConceptIndex
Definition: index.h:123
Translator::trEnumerationValues
virtual QCString trEnumerationValues()=0
DocbookGenerator::endInlineMemberType
void endInlineMemberType()
Definition: docbookgen.cpp:1060
TextStream
Text streaming class that buffers data.
Definition: textstream.h:33
Doxygen::dirLinkedMap
static DirLinkedMap * dirLinkedMap
Definition: doxygen.h:109
Docbook_DB
#define Docbook_DB(x)
Definition: docbookgen.cpp:55
DocbookGenerator::clone
virtual std::unique_ptr< OutputGenerator > clone() const
Definition: docbookgen.cpp:301
DocbookCodeGenerator::setCurrentDoc
void setCurrentDoc(const Definition *, const QCString &, bool)
Definition: docbookgen.cpp:256
DocbookGenerator::endLabels
void endLabels()
Definition: docbookgen.cpp:919
filename.h
DocbookGenerator::startClassDiagram
void startClassDiagram()
Definition: docbookgen.cpp:887
DotDirDeps::writeGraph
QCString writeGraph(TextStream &out, GraphOutputFormat gf, EmbeddedOutputFormat ef, const QCString &path, const QCString &fileName, const QCString &relPath, bool writeImageMap=TRUE, int graphId=-1, bool linkRelations=TRUE)
Definition: dotdirdeps.cpp:432
SectionType
SectionType
enum representing the various types of sections and entities that can be referred to.
Definition: section.h:28
DocbookGenerator::startGroupHeader
void startGroupHeader(int)
Definition: docbookgen.cpp:733
DocbookDocVisitor
Concrete visitor implementation for Docbook output.
Definition: docbookvisitor.h:31
DocbookGenerator::endMemberGroup
void endMemberGroup(bool)
Definition: docbookgen.cpp:882
DocbookGenerator::startDoxyAnchor
void startDoxyAnchor(const QCString &fName, const QCString &manName, const QCString &anchor, const QCString &name, const QCString &args)
Definition: docbookgen.cpp:840
DocbookGenerator::startConstraintParam
void startConstraintParam()
Definition: docbookgen.cpp:1209
DocbookGenerator::endDescTableRow
void endDescTableRow()
Definition: docbookgen.cpp:1121
DocbookGenerator::endDoxyAnchor
void endDoxyAnchor(const QCString &fileName, const QCString &anchor)
Definition: docbookgen.cpp:855
DocbookCodeGenerator::finish
void finish()
Definition: docbookgen.cpp:264
DocbookGenerator::endExamples
void endExamples()
Definition: docbookgen.cpp:931
Doxygen::inputNameLinkedMap
static FileNameLinkedMap * inputNameLinkedMap
Definition: doxygen.h:88
Translator::trISOLang
virtual QCString trISOLang()=0
outputgen.h
OutputGenerator::m_t
TextStream m_t
Definition: outputgen.h:511
DocbookGenerator::endMemberHeader
void endMemberHeader()
Definition: docbookgen.cpp:669
DocbookGenerator::endClassDiagram
void endClassDiagram(const ClassDiagram &, const QCString &, const QCString &)
Definition: docbookgen.cpp:893
dot.h
DotInclDepGraph::writeGraph
QCString writeGraph(TextStream &t, GraphOutputFormat gf, EmbeddedOutputFormat ef, const QCString &path, const QCString &fileName, const QCString &relPath, bool writeImageMap=TRUE, int graphId=-1)
Definition: dotincldepgraph.cpp:184
MemberDef
A model of a class/file/namespace member symbol.
Definition: memberdef.h:45
isNamespaceDocumentation
@ isNamespaceDocumentation
Definition: index.h:130
DocbookGenerator::lineBreak
void lineBreak(const QCString &)
Definition: docbookgen.cpp:774
classlist.h
Config_getInt
#define Config_getInt(name)
Definition: config.h:34
isDirIndex
@ isDirIndex
Definition: index.h:121
uchar
unsigned char uchar
Definition: qcstring.h:38
DocbookGenerator::endMemberItem
void endMemberItem()
Definition: docbookgen.cpp:718
docbookvisitor.h
DocbookGenerator::startFile
void startFile(const QCString &name, const QCString &manName, const QCString &title, int id)
Definition: docbookgen.cpp:330
message.h
DocbookCodeGenerator::writeCodeLink
void writeCodeLink(CodeSymbolType type, const QCString &ref, const QCString &file, const QCString &anchor, const QCString &name, const QCString &tooltip)
Definition: docbookgen.cpp:158
isEndIndex
@ isEndIndex
Definition: index.h:137
dotgroupcollaboration.h
DocbookGenerator::endInlineMemberDoc
void endInlineMemberDoc()
Definition: docbookgen.cpp:1084
EOF_DocBook
@ EOF_DocBook
Definition: dotgraph.h:28
DocbookGenerator::endSubsubsection
void endSubsubsection()
Definition: docbookgen.cpp:941
DocbookCodeGenerator::startFontClass
void startFontClass(const QCString &colorClass)
Definition: docbookgen.cpp:206
DocbookGenerator::startInlineMemberName
void startInlineMemberName()
Definition: docbookgen.cpp:1066
DotCallGraph
Representation of an call graph
Definition: dotcallgraph.h:26
DocbookGenerator::startBold
void startBold()
Definition: docbookgen.cpp:723
arguments.h
DocbookGenerator::endTextBlock
void endTextBlock(bool)
Definition: docbookgen.cpp:798
theTranslator
Translator * theTranslator
Definition: language.cpp:156
docbookgen.h
DocbookGenerator::endBold
void endBold()
Definition: docbookgen.cpp:728
DocbookGenerator::m_denseText
bool m_denseText
Definition: docbookgen.h:349
Doxygen::groupLinkedMap
static GroupLinkedMap * groupLinkedMap
Definition: doxygen.h:96
DocbookGenerator::endMemberDoc
void endMemberDoc(bool)
Definition: docbookgen.cpp:824
DocbookGenerator::startGroupCollaboration
void startGroupCollaboration()
Definition: docbookgen.cpp:1148
doxygen.h
DocbookGenerator::endDirDepGraph
void endDirDepGraph(DotDirDeps &g)
Definition: docbookgen.cpp:1188
DocbookCodeGenerator::sourceFileName
QCString sourceFileName()
Definition: docbookgen.h:42
parserintf.h
DocbookGenerator::~DocbookGenerator
virtual ~DocbookGenerator()
Definition: docbookgen.cpp:306
language.h
DocbookGenerator::startExamples
void startExamples()
Definition: docbookgen.cpp:923
DocbookCodeGenerator::m_external
QCString m_external
Definition: docbookgen.h:72
stripPath
QCString stripPath(const QCString &s)
Definition: util.cpp:5318
DocbookCodeGenerator::m_insideCodeLine
bool m_insideCodeLine
Definition: docbookgen.h:75
OutputGenerator::dir
QCString dir() const
Definition: outputgen.cpp:80
DocbookGenerator::closeSection
void closeSection()
Definition: docbookgen.cpp:1250
DocbookGenerator::writeDoc
void writeDoc(DocNode *, const Definition *ctx, const MemberDef *md, int id)
Definition: docbookgen.cpp:636
writeDocbookLink
void writeDocbookLink(TextStream &t, const QCString &, const QCString &compoundId, const QCString &anchorId, const QCString &text, const QCString &)
Definition: docbookgen.cpp:135
defargs.h
DocbookGenerator::startMemberHeader
void startMemberHeader(const QCString &anchor, int typ)
Definition: docbookgen.cpp:661
docparser.h
TRUE
#define TRUE
Definition: qcstring.h:36
DocbookCodeGenerator::writeTooltip
void writeTooltip(const QCString &, const DocLinkInfo &, const QCString &, const QCString &, const SourceLinkInfo &, const SourceLinkInfo &)
Definition: docbookgen.cpp:182
DocbookCodeGenerator::setRelativePath
void setRelativePath(const QCString &path)
Definition: docbookgen.h:40
DocbookGenerator::endConstraintDocs
void endConstraintDocs()
Definition: docbookgen.cpp:1232
DocbookGenerator::DocbookGenerator
DocbookGenerator()
Definition: docbookgen.cpp:286
DocbookGenerator::closeAllSections
void closeAllSections()
Definition: docbookgen.cpp:1256
DocbookGenerator::writeNonBreakableSpace
void writeNonBreakableSpace(int)
Definition: docbookgen.cpp:769
isModuleIndex
@ isModuleIndex
Definition: index.h:120
DocbookCodeGenerator::writeCodeAnchor
void writeCodeAnchor(const QCString &)
Definition: docbookgen.cpp:220
DocbookGenerator::startMemberDocPrefixItem
void startMemberDocPrefixItem()
Definition: docbookgen.cpp:954
DocbookCodeGenerator::codify
void codify(const QCString &text)
Definition: docbookgen.cpp:152
DocbookGenerator::startIndexSection
void startIndexSection(IndexSections)
Definition: docbookgen.cpp:382
isClassHierarchyIndex
@ isClassHierarchyIndex
Definition: index.h:124
ClassDiagram
Class representing a built-in class diagram.
Definition: diagram.h:29
memberlist.h
DotClassGraph
Representation of a class inheritance or dependency graph
Definition: dotclassgraph.h:28
dirdef.h
dotclassgraph.h
DocbookGenerator::startConstraintType
void startConstraintType()
Definition: docbookgen.cpp:1218
DocbookGenerator::writeObjectLink
void writeObjectLink(const QCString &, const QCString &, const QCString &, const QCString &)
Definition: docbookgen.cpp:679
DocbookGenerator::m_inListItem
bool m_inListItem[20]
Definition: docbookgen.h:352
clearSubDirs
void clearSubDirs(const Dir &d)
Definition: util.cpp:3704
DocbookCodeGenerator::m_sourceFileName
QCString m_sourceFileName
Definition: docbookgen.h:78
DocbookGenerator::init
static void init()
Definition: docbookgen.cpp:311
DocbookGenerator::writeString
void writeString(const QCString &)
Definition: docbookgen.cpp:656
DocbookGenerator::endMemberDocPrefixItem
void endMemberDocPrefixItem()
Definition: docbookgen.cpp:959
DocbookCodeGenerator::startCodeLine
void startCodeLine(bool)
Definition: docbookgen.cpp:189
OutputGenerator
Abstract output generator.
Definition: outputgen.h:330
classdef.h
DocbookGenerator::startDescTable
void startDescTable(const QCString &)
Definition: docbookgen.cpp:1090
isTitlePageAuthor
@ isTitlePageAuthor
Definition: index.h:118
GOF_BITMAP
@ GOF_BITMAP
Definition: dotgraph.h:27
DocbookGenerator::endParameterList
void endParameterList()
Definition: docbookgen.cpp:765
DocbookGenerator::startMemberList
void startMemberList()
Definition: docbookgen.cpp:695
DB_GEN_C2
#define DB_GEN_C2(y)
Definition: docbookgen.cpp:69
dotcallgraph.h
DocbookGenerator::startMemberDocName
void startMemberDocName(bool)
Definition: docbookgen.cpp:859
DocbookGenerator::endTitleHead
void endTitleHead(const QCString &fileName, const QCString &name)
Definition: docbookgen.cpp:834
isFileDocumentation
@ isFileDocumentation
Definition: index.h:133
Config_getBool
#define Config_getBool(name)
Definition: config.h:33
DocbookGenerator::endMemberDocName
void endMemberDocName()
Definition: docbookgen.cpp:864
DB_GEN_C
#define DB_GEN_C
Definition: docbookgen.cpp:67
DocbookGenerator::startConstraintDocs
void startConstraintDocs()
Definition: docbookgen.cpp:1228
DocbookGenerator::m_inLevel
int m_inLevel
Definition: docbookgen.h:356
DocbookGenerator::startDescTableRow
void startDescTableRow()
Definition: docbookgen.cpp:1114
DocbookGenerator::m_descTable
bool m_descTable
Definition: docbookgen.h:354
DotCallGraph::writeGraph
QCString writeGraph(TextStream &t, GraphOutputFormat gf, EmbeddedOutputFormat ef, const QCString &path, const QCString &fileName, const QCString &relPath, bool writeImageMap=TRUE, int graphId=-1)
Definition: dotcallgraph.cpp:183
DocbookGenerator::endInclDepGraph
void endInclDepGraph(DotInclDepGraph &g)
Definition: docbookgen.cpp:1170
DocbookGenerator::startParagraph
void startParagraph(const QCString &)
Definition: docbookgen.cpp:645
IndexSections
IndexSections
Definition: index.h:115
DocbookGenerator::startConstraintList
void startConstraintList(const QCString &)
Definition: docbookgen.cpp:1202
DocbookGenerator::startSubsubsection
void startSubsubsection()
Definition: docbookgen.cpp:936
hex
static const char * hex
Definition: htmldocvisitor.cpp:65
term
void term(const char *fmt,...)
Definition: message.cpp:220
DocbookGenerator::endSection
void endSection(const QCString &, SectionType)
Definition: docbookgen.cpp:1007
DocbookGenerator::m_inSimpleSect
bool m_inSimpleSect[20]
Definition: docbookgen.h:353
isPageDocumentation
@ isPageDocumentation
Definition: index.h:135
isPageDocumentation2
@ isPageDocumentation2
Definition: index.h:136
qPrint
const char * qPrint(const char *s)
Definition: qcstring.h:589
Config_getString
#define Config_getString(name)
Definition: config.h:32
DocbookGenerator::endConstraintList
void endConstraintList()
Definition: docbookgen.cpp:1236
DocbookGenerator::startInlineMemberDoc
void startInlineMemberDoc()
Definition: docbookgen.cpp:1078
DocbookCodeGenerator::m_refId
QCString m_refId
Definition: docbookgen.h:71
DocbookCodeGenerator::setSourceFileName
void setSourceFileName(const QCString &sourceFileName)
Definition: docbookgen.h:41
isMainPage
@ isMainPage
Definition: index.h:119
convertToDocBook
QCString convertToDocBook(const QCString &s)
Definition: util.cpp:3999
config.h
DotGroupCollaboration
Representation of a group collaboration graph
Definition: dotgroupcollaboration.h:28
Doxygen::namespaceLinkedMap
static NamespaceLinkedMap * namespaceLinkedMap
Definition: doxygen.h:97
groupdef.h
DocbookGenerator::m_inGroup
bool m_inGroup
Definition: docbookgen.h:350
QCString::data
const char * data() const
Returns a pointer to the contents of the string in the form of a 0-terminated C string
Definition: qcstring.h:153
DocbookGenerator::relPath
QCString relPath
Definition: docbookgen.h:347
DocbookGenerator::writePageLink
void writePageLink(const QCString &, bool)
Definition: docbookgen.cpp:614
Dir::exists
bool exists() const
Definition: dir.cpp:199
DocbookGenerator::startTextBlock
void startTextBlock(bool)
Definition: docbookgen.cpp:789
DocbookGenerator::startInlineMemberType
void startInlineMemberType()
Definition: docbookgen.cpp:1054
DotInclDepGraph
Representation of an include dependency graph
Definition: dotincldepgraph.h:30
DocNode::accept
virtual void accept(DocVisitor *v)=0
OutputGenerator::operator=
OutputGenerator & operator=(const OutputGenerator &o)
Definition: outputgen.cpp:48
DocbookGenerator::endMemberList
void endMemberList()
Definition: docbookgen.cpp:701
DocbookCodeGenerator::endCodeFragment
void endCodeFragment(const QCString &style)
Definition: docbookgen.cpp:275
CodeSymbolType::Default
@ Default
DocbookGenerator::startDirDepGraph
void startDirDepGraph()
Definition: docbookgen.cpp:1184
OutputGenerator::endPlainFile
void endPlainFile()
Definition: outputgen.cpp:72
DocbookCodeGenerator::endFontClass
void endFontClass()
Definition: docbookgen.cpp:213
DocbookGenerator::addIndexItem
void addIndexItem(const QCString &, const QCString &)
Definition: docbookgen.cpp:1013
DB_GEN_C1
#define DB_GEN_C1(x)
Definition: docbookgen.cpp:68
DocbookGenerator
Definition: docbookgen.h:93
Translator::trExamples
virtual QCString trExamples()=0
dir.h
DocbookGenerator::docify
void docify(const QCString &text)
Definition: docbookgen.cpp:674
Doxygen::classLinkedMap
static ClassLinkedMap * classLinkedMap
Definition: doxygen.h:78
Dir::mkdir
bool mkdir(const std::string &path, bool acceptsAbsPath=true) const
Definition: dir.cpp:237
util.h
A bunch of utility functions.
DocbookCodeGenerator::endCodeLine
void endCodeLine()
Definition: docbookgen.cpp:196
createSubDirs
void createSubDirs(const Dir &d)
Definition: util.cpp:3677
DocbookGenerator::endMemberGroupHeader
void endMemberGroupHeader()
Definition: docbookgen.cpp:873
DocbookGenerator::exceptionEntry
void exceptionEntry(const QCString &, bool)
Definition: docbookgen.cpp:964
DocbookGenerator::endParagraph
void endParagraph()
Definition: docbookgen.cpp:651
CodeSymbolType
CodeSymbolType
Definition: types.h:204
QCString::right
QCString right(size_t len) const
Definition: qcstring.h:217
DocbookGenerator::endGroupCollaboration
void endGroupCollaboration(DotGroupCollaboration &g)
Definition: docbookgen.cpp:1152
OutputGenerator::startPlainFile
void startPlainFile(const QCString &name)
Definition: outputgen.cpp:60
DocbookGenerator::startDotGraph
void startDotGraph()
Definition: docbookgen.cpp:1157
QCString::resize
bool resize(size_t newlen)
Resizes the string to hold newlen characters (this value should also count the 0-terminator).
Definition: qcstring.h:164
diagram.h
DocbookGenerator::operator=
DocbookGenerator & operator=(const DocbookGenerator &o)
Definition: docbookgen.cpp:295
QCString::sprintf
QCString & sprintf(const char *format,...)
Definition: qcstring.cpp:24
DocbookGenerator::m_firstMember
bool m_firstMember
Definition: docbookgen.h:357
DocbookGenerator::endFile
void endFile()
Definition: docbookgen.cpp:360
DocbookGenerator::writeLabel
void writeLabel(const QCString &, bool)
Definition: docbookgen.cpp:912
DocbookGenerator::endMemberTemplateParams
void endMemberTemplateParams(const QCString &, const QCString &)
Definition: docbookgen.cpp:995
FALSE
#define FALSE
Definition: qcstring.h:33
DocbookGenerator::cleanup
void cleanup()
Definition: docbookgen.cpp:322
Doxygen::exampleLinkedMap
static PageLinkedMap * exampleLinkedMap
Definition: doxygen.h:81
isConceptDocumentation
@ isConceptDocumentation
Definition: index.h:132
DocbookGenerator::m_openSectionCount
int m_openSectionCount
Definition: docbookgen.h:358
QCString
This is an alternative implementation of QCString.
Definition: qcstring.h:108