doxygen.sty 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601
  1. \NeedsTeXFormat{LaTeX2e}
  2. \ProvidesPackage{doxygen}
  3. % Packages used by this style file
  4. \RequirePackage{alltt}
  5. %%\RequirePackage{array} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package
  6. \RequirePackage{calc}
  7. \RequirePackage{float}
  8. %%\RequirePackage{ifthen} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package
  9. \RequirePackage{verbatim}
  10. \RequirePackage[table]{xcolor}
  11. \RequirePackage{longtable_doxygen}
  12. \RequirePackage{tabu_doxygen}
  13. \RequirePackage{fancyvrb}
  14. \RequirePackage{tabularx}
  15. \RequirePackage{multicol}
  16. \RequirePackage{multirow}
  17. \RequirePackage{hanging}
  18. \RequirePackage{ifpdf}
  19. \RequirePackage{adjustbox}
  20. \RequirePackage{amssymb}
  21. \RequirePackage{stackengine}
  22. \RequirePackage{enumitem}
  23. \RequirePackage{alphalph}
  24. \RequirePackage[normalem]{ulem} % for strikeout, but don't modify emphasis
  25. \RequirePackage{enumitem}
  26. %---------- Internal commands used in this style file ----------------
  27. \newcommand{\ensurespace}[1]{%
  28. \begingroup%
  29. \setlength{\dimen@}{#1}%
  30. \vskip\z@\@plus\dimen@%
  31. \penalty -100\vskip\z@\@plus -\dimen@%
  32. \vskip\dimen@%
  33. \penalty 9999%
  34. \vskip -\dimen@%
  35. \vskip\z@skip% hide the previous |\vskip| from |\addvspace|
  36. \endgroup%
  37. }
  38. \newcommand{\DoxyHorRuler}[1]{%
  39. \setlength{\parskip}{0ex plus 0ex minus 0ex}%
  40. \ifthenelse{#1=0}%
  41. {%
  42. \hrule%
  43. }%
  44. {%
  45. \hrulefilll%
  46. }%
  47. }
  48. \newcommand{\DoxyLabelFont}{}
  49. \newcommand{\entrylabel}[1]{%
  50. {%
  51. \parbox[b]{\labelwidth-4pt}{%
  52. \makebox[0pt][l]{\DoxyLabelFont#1}%
  53. \vspace{1.5\baselineskip}%
  54. }%
  55. }%
  56. }
  57. \newenvironment{DoxyDesc}[1]{%
  58. \ensurespace{4\baselineskip}%
  59. \begin{list}{}{%
  60. \settowidth{\labelwidth}{20pt}%
  61. %\setlength{\parsep}{0pt}%
  62. \setlength{\itemsep}{0pt}%
  63. \setlength{\leftmargin}{\labelwidth+\labelsep}%
  64. \renewcommand{\makelabel}{\entrylabel}%
  65. }%
  66. \item[#1]%
  67. }{%
  68. \end{list}%
  69. }
  70. \newsavebox{\xrefbox}
  71. \newlength{\xreflength}
  72. \newcommand{\xreflabel}[1]{%
  73. \sbox{\xrefbox}{#1}%
  74. \setlength{\xreflength}{\wd\xrefbox}%
  75. \ifthenelse{\xreflength>\labelwidth}{%
  76. \begin{minipage}{\textwidth}%
  77. \setlength{\parindent}{0pt}%
  78. \hangindent=15pt\bfseries #1\vspace{1.2\itemsep}%
  79. \end{minipage}%
  80. }{%
  81. \parbox[b]{\labelwidth}{\makebox[0pt][l]{\textbf{#1}}}%
  82. }%
  83. }
  84. %---------- Commands used by doxygen LaTeX output generator ----------
  85. % Used by <pre> ... </pre>
  86. \newenvironment{DoxyPre}{%
  87. \small%
  88. \begin{alltt}%
  89. }{%
  90. \end{alltt}%
  91. \normalsize%
  92. }
  93. % Necessary for redefining not defined characters, i.e. "Replacement Character" in tex output.
  94. \newlength{\CodeWidthChar}
  95. \newlength{\CodeHeightChar}
  96. \settowidth{\CodeWidthChar}{?}
  97. \settoheight{\CodeHeightChar}{?}
  98. % Necessary for hanging indent
  99. \newlength{\DoxyCodeWidth}
  100. \newcommand\DoxyCodeLine[1]{\hangpara{\DoxyCodeWidth}{1}{#1}\par}
  101. \newcommand\NiceSpace{%
  102. \discretionary{}{\kern\fontdimen2\font}{\kern\fontdimen2\font}%
  103. }
  104. % Used by @code ... @endcode
  105. \newenvironment{DoxyCode}[1]{%
  106. \par%
  107. \scriptsize%
  108. \normalfont\ttfamily%
  109. \rightskip0pt plus 1fil%
  110. \settowidth{\DoxyCodeWidth}{000000}%
  111. \settowidth{\CodeWidthChar}{?}%
  112. \settoheight{\CodeHeightChar}{?}%
  113. \setlength{\parskip}{0ex plus 0ex minus 0ex}%
  114. \ifthenelse{\equal{#1}{0}}
  115. {
  116. {\lccode`~32 \lowercase{\global\let~}\NiceSpace}\obeyspaces%
  117. }
  118. {
  119. {\lccode`~32 \lowercase{\global\let~}}\obeyspaces%
  120. }
  121. }{%
  122. \normalfont%
  123. \normalsize%
  124. \settowidth{\CodeWidthChar}{?}%
  125. \settoheight{\CodeHeightChar}{?}%
  126. }
  127. % Redefining not defined characters, i.e. "Replacement Character" in tex output.
  128. \def\ucr{\adjustbox{width=\CodeWidthChar,height=\CodeHeightChar}{\stackinset{c}{}{c}{-.2pt}{%
  129. \textcolor{white}{\sffamily\bfseries\small ?}}{%
  130. \rotatebox{45}{$\blacksquare$}}}}
  131. % Used by @example, @include, @includelineno and @dontinclude
  132. \newenvironment{DoxyCodeInclude}[1]{%
  133. \DoxyCode{#1}%
  134. }{%
  135. \endDoxyCode%
  136. }
  137. % Used by @verbatim ... @endverbatim
  138. \newenvironment{DoxyVerb}{%
  139. \footnotesize%
  140. \verbatim%
  141. }{%
  142. \endverbatim%
  143. \normalsize%
  144. }
  145. % Used by @verbinclude
  146. \newenvironment{DoxyVerbInclude}{%
  147. \DoxyVerb%
  148. }{%
  149. \endDoxyVerb%
  150. }
  151. % Used by numbered lists (using '-#' or <ol> ... </ol>)
  152. \setlistdepth{12}
  153. \newlist{DoxyEnumerate}{enumerate}{12}
  154. \setlist[DoxyEnumerate,1]{label=\arabic*.}
  155. \setlist[DoxyEnumerate,2]{label=(\enumalphalphcnt*)}
  156. \setlist[DoxyEnumerate,3]{label=\roman*.}
  157. \setlist[DoxyEnumerate,4]{label=\enumAlphAlphcnt*.}
  158. \setlist[DoxyEnumerate,5]{label=\arabic*.}
  159. \setlist[DoxyEnumerate,6]{label=(\enumalphalphcnt*)}
  160. \setlist[DoxyEnumerate,7]{label=\roman*.}
  161. \setlist[DoxyEnumerate,8]{label=\enumAlphAlphcnt*.}
  162. \setlist[DoxyEnumerate,9]{label=\arabic*.}
  163. \setlist[DoxyEnumerate,10]{label=(\enumalphalphcnt*)}
  164. \setlist[DoxyEnumerate,11]{label=\roman*.}
  165. \setlist[DoxyEnumerate,12]{label=\enumAlphAlphcnt*.}
  166. % Used by bullet lists (using '-', @li, @arg, or <ul> ... </ul>)
  167. \setlistdepth{12}
  168. \newlist{DoxyItemize}{itemize}{12}
  169. \setlist[DoxyItemize]{label=\textperiodcentered}
  170. \setlist[DoxyItemize,1]{label=\textbullet}
  171. \setlist[DoxyItemize,2]{label=\normalfont\bfseries \textendash}
  172. \setlist[DoxyItemize,3]{label=\textasteriskcentered}
  173. \setlist[DoxyItemize,4]{label=\textperiodcentered}
  174. % Used by description lists (using <dl> ... </dl>)
  175. \newenvironment{DoxyDescription}{%
  176. \description%
  177. }{%
  178. \enddescription%
  179. }
  180. % Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
  181. % (only if caption is specified)
  182. \newenvironment{DoxyImage}{%
  183. \begin{figure}[H]%
  184. \centering%
  185. }{%
  186. \end{figure}%
  187. }
  188. % Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
  189. % (only if no caption is specified)
  190. \newenvironment{DoxyImageNoCaption}{%
  191. \begin{center}%
  192. }{%
  193. \end{center}%
  194. }
  195. % Used by @image
  196. % (only if inline is specified)
  197. \newenvironment{DoxyInlineImage}{%
  198. }{%
  199. }
  200. % Used by @attention
  201. \newenvironment{DoxyAttention}[1]{%
  202. \begin{DoxyDesc}{#1}%
  203. }{%
  204. \end{DoxyDesc}%
  205. }
  206. % Used by @author and @authors
  207. \newenvironment{DoxyAuthor}[1]{%
  208. \begin{DoxyDesc}{#1}%
  209. }{%
  210. \end{DoxyDesc}%
  211. }
  212. % Used by @date
  213. \newenvironment{DoxyDate}[1]{%
  214. \begin{DoxyDesc}{#1}%
  215. }{%
  216. \end{DoxyDesc}%
  217. }
  218. % Used by @invariant
  219. \newenvironment{DoxyInvariant}[1]{%
  220. \begin{DoxyDesc}{#1}%
  221. }{%
  222. \end{DoxyDesc}%
  223. }
  224. % Used by @note
  225. \newenvironment{DoxyNote}[1]{%
  226. \begin{DoxyDesc}{#1}%
  227. }{%
  228. \end{DoxyDesc}%
  229. }
  230. % Used by @post
  231. \newenvironment{DoxyPostcond}[1]{%
  232. \begin{DoxyDesc}{#1}%
  233. }{%
  234. \end{DoxyDesc}%
  235. }
  236. % Used by @pre
  237. \newenvironment{DoxyPrecond}[1]{%
  238. \begin{DoxyDesc}{#1}%
  239. }{%
  240. \end{DoxyDesc}%
  241. }
  242. % Used by @copyright
  243. \newenvironment{DoxyCopyright}[1]{%
  244. \begin{DoxyDesc}{#1}%
  245. }{%
  246. \end{DoxyDesc}%
  247. }
  248. % Used by @remark
  249. \newenvironment{DoxyRemark}[1]{%
  250. \begin{DoxyDesc}{#1}%
  251. }{%
  252. \end{DoxyDesc}%
  253. }
  254. % Used by @return and @returns
  255. \newenvironment{DoxyReturn}[1]{%
  256. \begin{DoxyDesc}{#1}%
  257. }{%
  258. \end{DoxyDesc}%
  259. }
  260. % Used by @since
  261. \newenvironment{DoxySince}[1]{%
  262. \begin{DoxyDesc}{#1}%
  263. }{%
  264. \end{DoxyDesc}%
  265. }
  266. % Used by @see
  267. \newenvironment{DoxySeeAlso}[1]{%
  268. \begin{DoxyDesc}{#1}%
  269. }{%
  270. \end{DoxyDesc}%
  271. }
  272. % Used by @version
  273. \newenvironment{DoxyVersion}[1]{%
  274. \begin{DoxyDesc}{#1}%
  275. }{%
  276. \end{DoxyDesc}%
  277. }
  278. % Used by @warning
  279. \newenvironment{DoxyWarning}[1]{%
  280. \begin{DoxyDesc}{#1}%
  281. }{%
  282. \end{DoxyDesc}%
  283. }
  284. % Used by @internal
  285. \newenvironment{DoxyInternal}[1]{%
  286. \paragraph*{#1}%
  287. }{%
  288. }
  289. % Used by @par and @paragraph
  290. \newenvironment{DoxyParagraph}[1]{%
  291. \begin{DoxyDesc}{#1}%
  292. }{%
  293. \end{DoxyDesc}%
  294. }
  295. % Used by parameter lists
  296. \newenvironment{DoxyParams}[2][]{%
  297. \tabulinesep=1mm%
  298. \par%
  299. \ifthenelse{\equal{#1}{}}%
  300. {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|}}% name + description
  301. {\ifthenelse{\equal{#1}{1}}%
  302. {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + name + desc
  303. {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + type + name + desc
  304. }
  305. \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
  306. \hline%
  307. \endfirsthead%
  308. \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
  309. \hline%
  310. \endhead%
  311. }{%
  312. \end{longtabu*}%
  313. \vspace{6pt}%
  314. }
  315. % Used for fields of simple structs
  316. \newenvironment{DoxyFields}[1]{%
  317. \tabulinesep=1mm%
  318. \par%
  319. \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|X[-1,l]|}%
  320. \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
  321. \hline%
  322. \endfirsthead%
  323. \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
  324. \hline%
  325. \endhead%
  326. }{%
  327. \end{longtabu*}%
  328. \vspace{6pt}%
  329. }
  330. % Used for fields simple class style enums
  331. \newenvironment{DoxyEnumFields}[1]{%
  332. \tabulinesep=1mm%
  333. \par%
  334. \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
  335. \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
  336. \hline%
  337. \endfirsthead%
  338. \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
  339. \hline%
  340. \endhead%
  341. }{%
  342. \end{longtabu*}%
  343. \vspace{6pt}%
  344. }
  345. % Used for parameters within a detailed function description
  346. \newenvironment{DoxyParamCaption}{%
  347. \renewcommand{\item}[2][]{\\ \hspace*{2.0cm} ##1 {\em ##2}}%
  348. }{%
  349. }
  350. % Used by return value lists
  351. \newenvironment{DoxyRetVals}[1]{%
  352. \tabulinesep=1mm%
  353. \par%
  354. \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
  355. \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
  356. \hline%
  357. \endfirsthead%
  358. \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
  359. \hline%
  360. \endhead%
  361. }{%
  362. \end{longtabu*}%
  363. \vspace{6pt}%
  364. }
  365. % Used by exception lists
  366. \newenvironment{DoxyExceptions}[1]{%
  367. \tabulinesep=1mm%
  368. \par%
  369. \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
  370. \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
  371. \hline%
  372. \endfirsthead%
  373. \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
  374. \hline%
  375. \endhead%
  376. }{%
  377. \end{longtabu*}%
  378. \vspace{6pt}%
  379. }
  380. % Used by template parameter lists
  381. \newenvironment{DoxyTemplParams}[1]{%
  382. \tabulinesep=1mm%
  383. \par%
  384. \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
  385. \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
  386. \hline%
  387. \endfirsthead%
  388. \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
  389. \hline%
  390. \endhead%
  391. }{%
  392. \end{longtabu*}%
  393. \vspace{6pt}%
  394. }
  395. % Used for member lists
  396. \newenvironment{DoxyCompactItemize}{%
  397. \begin{itemize}%
  398. \setlength{\itemsep}{-3pt}%
  399. \setlength{\parsep}{0pt}%
  400. \setlength{\topsep}{0pt}%
  401. \setlength{\partopsep}{0pt}%
  402. }{%
  403. \end{itemize}%
  404. }
  405. % Used for member descriptions
  406. \newenvironment{DoxyCompactList}{%
  407. \begin{list}{}{%
  408. \setlength{\leftmargin}{0.5cm}%
  409. \setlength{\itemsep}{0pt}%
  410. \setlength{\parsep}{0pt}%
  411. \setlength{\topsep}{0pt}%
  412. \renewcommand{\makelabel}{\hfill}%
  413. }%
  414. }{%
  415. \end{list}%
  416. }
  417. % Used for reference lists (@bug, @deprecated, @todo, etc.)
  418. \newenvironment{DoxyRefList}{%
  419. \begin{list}{}{%
  420. \setlength{\labelwidth}{10pt}%
  421. \setlength{\leftmargin}{\labelwidth}%
  422. \addtolength{\leftmargin}{\labelsep}%
  423. \renewcommand{\makelabel}{\xreflabel}%
  424. }%
  425. }{%
  426. \end{list}%
  427. }
  428. % Used by @bug, @deprecated, @todo, etc.
  429. \newenvironment{DoxyRefDesc}[1]{%
  430. \begin{list}{}{%
  431. \renewcommand\makelabel[1]{\textbf{##1}}%
  432. \settowidth\labelwidth{\makelabel{#1}}%
  433. \setlength\leftmargin{\labelwidth+\labelsep}%
  434. }%
  435. }{%
  436. \end{list}%
  437. }
  438. % Used by parameter lists and simple sections
  439. \newenvironment{Desc}
  440. {\begin{list}{}{%
  441. \settowidth{\labelwidth}{20pt}%
  442. \setlength{\parsep}{0pt}%
  443. \setlength{\itemsep}{0pt}%
  444. \setlength{\leftmargin}{\labelwidth+\labelsep}%
  445. \renewcommand{\makelabel}{\entrylabel}%
  446. }
  447. }{%
  448. \end{list}%
  449. }
  450. % Used by tables
  451. \newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp}%
  452. \newenvironment{TabularC}[1]%
  453. {\tabulinesep=1mm
  454. \begin{longtabu*}spread 0pt [c]{*#1{|X[-1]}|}}%
  455. {\end{longtabu*}\par}%
  456. \newenvironment{TabularNC}[1]%
  457. {\begin{tabu}spread 0pt [l]{*#1{|X[-1]}|}}%
  458. {\end{tabu}\par}%
  459. % Used for member group headers
  460. \newenvironment{Indent}{%
  461. \begin{list}{}{%
  462. \setlength{\leftmargin}{0.5cm}%
  463. }%
  464. \item[]\ignorespaces%
  465. }{%
  466. \unskip%
  467. \end{list}%
  468. }
  469. % Used when hyperlinks are turned off
  470. \newcommand{\doxyref}[3]{%
  471. \textbf{#1} (\textnormal{#2}\,\pageref{#3})%
  472. }
  473. % Used to link to a table when hyperlinks are turned on
  474. \newcommand{\doxytablelink}[2]{%
  475. \ref{#1}%
  476. }
  477. % Used to link to a table when hyperlinks are turned off
  478. \newcommand{\doxytableref}[3]{%
  479. \ref{#3}%
  480. }
  481. % Used by @addindex
  482. \newcommand{\lcurly}{\{}
  483. \newcommand{\rcurly}{\}}
  484. % Colors used for syntax highlighting
  485. \definecolor{comment}{rgb}{0.5,0.0,0.0}
  486. \definecolor{keyword}{rgb}{0.0,0.5,0.0}
  487. \definecolor{keywordtype}{rgb}{0.38,0.25,0.125}
  488. \definecolor{keywordflow}{rgb}{0.88,0.5,0.0}
  489. \definecolor{preprocessor}{rgb}{0.5,0.38,0.125}
  490. \definecolor{stringliteral}{rgb}{0.0,0.125,0.25}
  491. \definecolor{charliteral}{rgb}{0.0,0.5,0.5}
  492. \definecolor{vhdldigit}{rgb}{1.0,0.0,1.0}
  493. \definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43}
  494. \definecolor{vhdllogic}{rgb}{1.0,0.0,0.0}
  495. \definecolor{vhdlchar}{rgb}{0.0,0.0,0.0}
  496. % Color used for table heading
  497. \newcommand{\tableheadbgcolor}{lightgray}%
  498. % Version of hypertarget with correct landing location
  499. \newcommand{\Hypertarget}[1]{\Hy@raisedlink{\hypertarget{#1}{}}}
  500. % possibility to have sections etc. be within the margins
  501. % unfortunately had to copy part of book.cls and add \raggedright
  502. \makeatletter
  503. \newcommand\doxysection{\@startsection {section}{1}{\z@}%
  504. {-3.5ex \@plus -1ex \@minus -.2ex}%
  505. {2.3ex \@plus.2ex}%
  506. {\raggedright\normalfont\Large\bfseries}}
  507. \newcommand\doxysubsection{\@startsection{subsection}{2}{\z@}%
  508. {-3.25ex\@plus -1ex \@minus -.2ex}%
  509. {1.5ex \@plus .2ex}%
  510. {\raggedright\normalfont\large\bfseries}}
  511. \newcommand\doxysubsubsection{\@startsection{subsubsection}{3}{\z@}%
  512. {-3.25ex\@plus -1ex \@minus -.2ex}%
  513. {1.5ex \@plus .2ex}%
  514. {\raggedright\normalfont\normalsize\bfseries}}
  515. \newcommand\doxyparagraph{\@startsection{paragraph}{4}{\z@}%
  516. {3.25ex \@plus1ex \@minus.2ex}%
  517. {-1em}%
  518. {\raggedright\normalfont\normalsize\bfseries}}
  519. \newcommand\doxysubparagraph{\@startsection{subparagraph}{5}{\parindent}%
  520. {3.25ex \@plus1ex \@minus .2ex}%
  521. {-1em}%
  522. {\raggedright\normalfont\normalsize\bfseries}}
  523. \makeatother
  524. % Define caption that is also suitable in a table
  525. \makeatletter
  526. \def\doxyfigcaption{%
  527. \H@refstepcounter{figure}%
  528. \@dblarg{\@caption{figure}}}
  529. \makeatother
  530. % Define alpha enumarative names for counters > 26
  531. \makeatletter
  532. \def\enumalphalphcnt#1{\expandafter\@enumalphalphcnt\csname c@#1\endcsname}
  533. \def\@enumalphalphcnt#1{\alphalph{#1}}
  534. \def\enumAlphAlphcnt#1{\expandafter\@enumAlphAlphcnt\csname c@#1\endcsname}
  535. \def\@enumAlphAlphcnt#1{\AlphAlph{#1}}
  536. \makeatother
  537. \AddEnumerateCounter{\enumalphalphcnt}{\@enumalphalphcnt}{aa}
  538. \AddEnumerateCounter{\enumAlphAlphcnt}{\@enumAlphAlphcnt}{AA}