NBash

Форк
0
576 строк · 14.0 Кб
1
\NeedsTeXFormat{LaTeX2e}
2
\ProvidesPackage{doxygen}
3

4
% Packages used by this style file
5
\RequirePackage{alltt}
6
%%\RequirePackage{array} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package
7
\RequirePackage{calc}
8
\RequirePackage{float}
9
%%\RequirePackage{ifthen} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package
10
\RequirePackage{verbatim}
11
\RequirePackage[table]{xcolor}
12
\RequirePackage{longtable_doxygen}
13
\RequirePackage{tabu_doxygen}
14
\RequirePackage{fancyvrb}
15
\RequirePackage{tabularx}
16
\RequirePackage{multicol}
17
\RequirePackage{multirow}
18
\RequirePackage{hanging}
19
\RequirePackage{ifpdf}
20
\RequirePackage{adjustbox}
21
\RequirePackage{amssymb}
22
\RequirePackage{stackengine}
23
\RequirePackage[normalem]{ulem} % for strikeout, but don't modify emphasis
24

25
%---------- Internal commands used in this style file ----------------
26

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

39
\newcommand{\DoxyHorRuler}[1]{%
40
  \setlength{\parskip}{0ex plus 0ex minus 0ex}%
41
  \ifthenelse{#1=0}%
42
  {%
43
    \hrule%
44
  }%
45
  {%
46
    \hrulefilll%
47
  }%
48
}
49
\newcommand{\DoxyLabelFont}{}
50
\newcommand{\entrylabel}[1]{%
51
  {%
52
    \parbox[b]{\labelwidth-4pt}{%
53
      \makebox[0pt][l]{\DoxyLabelFont#1}%
54
      \vspace{1.5\baselineskip}%
55
    }%
56
  }%
57
}
58

59
\newenvironment{DoxyDesc}[1]{%
60
  \ensurespace{4\baselineskip}%
61
  \begin{list}{}{%
62
    \settowidth{\labelwidth}{20pt}%
63
    %\setlength{\parsep}{0pt}%
64
    \setlength{\itemsep}{0pt}%
65
    \setlength{\leftmargin}{\labelwidth+\labelsep}%
66
    \renewcommand{\makelabel}{\entrylabel}%
67
  }%
68
  \item[#1]%
69
}{%
70
  \end{list}%
71
}
72

73
\newsavebox{\xrefbox}
74
\newlength{\xreflength}
75
\newcommand{\xreflabel}[1]{%
76
  \sbox{\xrefbox}{#1}%
77
  \setlength{\xreflength}{\wd\xrefbox}%
78
  \ifthenelse{\xreflength>\labelwidth}{%
79
    \begin{minipage}{\textwidth}%
80
      \setlength{\parindent}{0pt}%
81
      \hangindent=15pt\bfseries #1\vspace{1.2\itemsep}%
82
    \end{minipage}%
83
  }{%
84
   \parbox[b]{\labelwidth}{\makebox[0pt][l]{\textbf{#1}}}%
85
  }%
86
}
87

88
%---------- Commands used by doxygen LaTeX output generator ----------
89

90
% Used by <pre> ... </pre>
91
\newenvironment{DoxyPre}{%
92
  \small%
93
  \begin{alltt}%
94
}{%
95
  \end{alltt}%
96
  \normalsize%
97
}
98
% Necessary for redefining not defined characters, i.e. "Replacement Character" in tex output.
99
\newlength{\CodeWidthChar}
100
\newlength{\CodeHeightChar}
101
\settowidth{\CodeWidthChar}{?}
102
\settoheight{\CodeHeightChar}{?}
103
% Necessary for hanging indent
104
\newlength{\DoxyCodeWidth}
105

106
\newcommand\DoxyCodeLine[1]{\hangpara{\DoxyCodeWidth}{1}{#1}\par}
107

108
\newcommand\NiceSpace{%
109
     \discretionary{}{\kern\fontdimen2\font}{\kern\fontdimen2\font}%
110
}
111

112
% Used by @code ... @endcode
113
\newenvironment{DoxyCode}[1]{%
114
  \par%
115
  \scriptsize%
116
  \normalfont\ttfamily%
117
  \rightskip0pt plus 1fil%
118
  \settowidth{\DoxyCodeWidth}{000000}%
119
  \settowidth{\CodeWidthChar}{?}%
120
  \settoheight{\CodeHeightChar}{?}%
121
  \setlength{\parskip}{0ex plus 0ex minus 0ex}%
122
  \ifthenelse{\equal{#1}{0}}
123
  {
124
    {\lccode`~32 \lowercase{\global\let~}\NiceSpace}\obeyspaces%
125
  }
126
  {
127
    {\lccode`~32 \lowercase{\global\let~}}\obeyspaces%
128
  }
129

130
}{%
131
  \normalfont%
132
  \normalsize%
133
  \settowidth{\CodeWidthChar}{?}%
134
  \settoheight{\CodeHeightChar}{?}%
135
}
136

137
% Redefining not defined characters, i.e. "Replacement Character" in tex output.
138
\def\ucr{\adjustbox{width=\CodeWidthChar,height=\CodeHeightChar}{\stackinset{c}{}{c}{-.2pt}{%
139
   \textcolor{white}{\sffamily\bfseries\small ?}}{%
140
   \rotatebox{45}{$\blacksquare$}}}}
141

142
% Used by @example, @include, @includelineno and @dontinclude
143
\newenvironment{DoxyCodeInclude}[1]{%
144
	\DoxyCode{#1}%
145
}{%
146
  \endDoxyCode%
147
}
148

149
% Used by @verbatim ... @endverbatim
150
\newenvironment{DoxyVerb}{%
151
  \footnotesize%
152
  \verbatim%
153
}{%
154
  \endverbatim%
155
  \normalsize%
156
}
157

158
% Used by @verbinclude
159
\newenvironment{DoxyVerbInclude}{%
160
  \DoxyVerb%
161
}{%
162
  \endDoxyVerb%
163
}
164

165
% Used by numbered lists (using '-#' or <ol> ... </ol>)
166
\newenvironment{DoxyEnumerate}{%
167
  \enumerate%
168
}{%
169
  \endenumerate%
170
}
171

172
% Used by bullet lists (using '-', @li, @arg, or <ul> ... </ul>)
173
\newenvironment{DoxyItemize}{%
174
  \itemize%
175
}{%
176
  \enditemize%
177
}
178

179
% Used by description lists (using <dl> ... </dl>)
180
\newenvironment{DoxyDescription}{%
181
  \description%
182
}{%
183
  \enddescription%
184
}
185

186
% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
187
% (only if caption is specified)
188
\newenvironment{DoxyImage}{%
189
  \begin{figure}[H]%
190
    \centering%
191
}{%
192
  \end{figure}%
193
}
194

195
% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
196
% (only if no caption is specified)
197
\newenvironment{DoxyImageNoCaption}{%
198
  \begin{center}%
199
}{%
200
  \end{center}%
201
}
202

203
% Used by @image
204
% (only if inline is specified)
205
\newenvironment{DoxyInlineImage}{%
206
}{%
207
}
208

209
% Used by @attention
210
\newenvironment{DoxyAttention}[1]{%
211
  \begin{DoxyDesc}{#1}%
212
}{%
213
  \end{DoxyDesc}%
214
}
215

216
% Used by @author and @authors
217
\newenvironment{DoxyAuthor}[1]{%
218
  \begin{DoxyDesc}{#1}%
219
}{%
220
  \end{DoxyDesc}%
221
}
222

223
% Used by @date
224
\newenvironment{DoxyDate}[1]{%
225
  \begin{DoxyDesc}{#1}%
226
}{%
227
  \end{DoxyDesc}%
228
}
229

230
% Used by @invariant
231
\newenvironment{DoxyInvariant}[1]{%
232
  \begin{DoxyDesc}{#1}%
233
}{%
234
  \end{DoxyDesc}%
235
}
236

237
% Used by @note
238
\newenvironment{DoxyNote}[1]{%
239
  \begin{DoxyDesc}{#1}%
240
}{%
241
  \end{DoxyDesc}%
242
}
243

244
% Used by @post
245
\newenvironment{DoxyPostcond}[1]{%
246
  \begin{DoxyDesc}{#1}%
247
}{%
248
  \end{DoxyDesc}%
249
}
250

251
% Used by @pre
252
\newenvironment{DoxyPrecond}[1]{%
253
  \begin{DoxyDesc}{#1}%
254
}{%
255
  \end{DoxyDesc}%
256
}
257

258
% Used by @copyright
259
\newenvironment{DoxyCopyright}[1]{%
260
  \begin{DoxyDesc}{#1}%
261
}{%
262
  \end{DoxyDesc}%
263
}
264

265
% Used by @remark
266
\newenvironment{DoxyRemark}[1]{%
267
  \begin{DoxyDesc}{#1}%
268
}{%
269
  \end{DoxyDesc}%
270
}
271

272
% Used by @return and @returns
273
\newenvironment{DoxyReturn}[1]{%
274
  \begin{DoxyDesc}{#1}%
275
}{%
276
  \end{DoxyDesc}%
277
}
278

279
% Used by @since
280
\newenvironment{DoxySince}[1]{%
281
  \begin{DoxyDesc}{#1}%
282
}{%
283
  \end{DoxyDesc}%
284
}
285

286
% Used by @see
287
\newenvironment{DoxySeeAlso}[1]{%
288
  \begin{DoxyDesc}{#1}%
289
}{%
290
  \end{DoxyDesc}%
291
}
292

293
% Used by @version
294
\newenvironment{DoxyVersion}[1]{%
295
  \begin{DoxyDesc}{#1}%
296
}{%
297
  \end{DoxyDesc}%
298
}
299

300
% Used by @warning
301
\newenvironment{DoxyWarning}[1]{%
302
  \begin{DoxyDesc}{#1}%
303
}{%
304
  \end{DoxyDesc}%
305
}
306

307
% Used by @internal
308
\newenvironment{DoxyInternal}[1]{%
309
  \paragraph*{#1}%
310
}{%
311
}
312

313
% Used by @par and @paragraph
314
\newenvironment{DoxyParagraph}[1]{%
315
  \begin{DoxyDesc}{#1}%
316
}{%
317
  \end{DoxyDesc}%
318
}
319

320
% Used by parameter lists
321
\newenvironment{DoxyParams}[2][]{%
322
    \tabulinesep=1mm%
323
    \par%
324
    \ifthenelse{\equal{#1}{}}%
325
      {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|}}% name + description
326
    {\ifthenelse{\equal{#1}{1}}%
327
      {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + name + desc
328
      {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + type + name + desc
329
    }
330
    \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
331
    \hline%
332
    \endfirsthead%
333
    \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
334
    \hline%
335
    \endhead%
336
}{%
337
    \end{longtabu*}%
338
    \vspace{6pt}%
339
}
340

341
% Used for fields of simple structs
342
\newenvironment{DoxyFields}[1]{%
343
    \tabulinesep=1mm%
344
    \par%
345
    \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|X[-1,l]|}%
346
    \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
347
    \hline%
348
    \endfirsthead%
349
    \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
350
    \hline%
351
    \endhead%
352
}{%
353
    \end{longtabu*}%
354
    \vspace{6pt}%
355
}
356

357
% Used for fields simple class style enums
358
\newenvironment{DoxyEnumFields}[1]{%
359
    \tabulinesep=1mm%
360
    \par%
361
    \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
362
    \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
363
    \hline%
364
    \endfirsthead%
365
    \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
366
    \hline%
367
    \endhead%
368
}{%
369
    \end{longtabu*}%
370
    \vspace{6pt}%
371
}
372

373
% Used for parameters within a detailed function description
374
\newenvironment{DoxyParamCaption}{%
375
  \renewcommand{\item}[2][]{\\ \hspace*{2.0cm} ##1 {\em ##2}}% 
376
}{%
377
}
378

379
% Used by return value lists
380
\newenvironment{DoxyRetVals}[1]{%
381
    \tabulinesep=1mm%
382
    \par%
383
    \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
384
    \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
385
    \hline%
386
    \endfirsthead%
387
    \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
388
    \hline%
389
    \endhead%
390
}{%
391
    \end{longtabu*}%
392
    \vspace{6pt}%
393
}
394

395
% Used by exception lists
396
\newenvironment{DoxyExceptions}[1]{%
397
    \tabulinesep=1mm%
398
    \par%
399
    \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
400
    \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
401
    \hline%
402
    \endfirsthead%
403
    \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
404
    \hline%
405
    \endhead%
406
}{%
407
    \end{longtabu*}%
408
    \vspace{6pt}%
409
}
410

411
% Used by template parameter lists
412
\newenvironment{DoxyTemplParams}[1]{%
413
    \tabulinesep=1mm%
414
    \par%
415
    \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
416
    \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
417
    \hline%
418
    \endfirsthead%
419
    \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
420
    \hline%
421
    \endhead%
422
}{%
423
    \end{longtabu*}%
424
    \vspace{6pt}%
425
}
426

427
% Used for member lists
428
\newenvironment{DoxyCompactItemize}{%
429
  \begin{itemize}%
430
    \setlength{\itemsep}{-3pt}%
431
    \setlength{\parsep}{0pt}%
432
    \setlength{\topsep}{0pt}%
433
    \setlength{\partopsep}{0pt}%
434
}{%
435
  \end{itemize}%
436
}
437

438
% Used for member descriptions
439
\newenvironment{DoxyCompactList}{%
440
  \begin{list}{}{%
441
    \setlength{\leftmargin}{0.5cm}%
442
    \setlength{\itemsep}{0pt}%
443
    \setlength{\parsep}{0pt}%
444
    \setlength{\topsep}{0pt}%
445
    \renewcommand{\makelabel}{\hfill}%
446
  }%
447
}{%
448
  \end{list}%
449
}
450

451
% Used for reference lists (@bug, @deprecated, @todo, etc.)
452
\newenvironment{DoxyRefList}{%
453
  \begin{list}{}{%
454
    \setlength{\labelwidth}{10pt}%
455
    \setlength{\leftmargin}{\labelwidth}%
456
    \addtolength{\leftmargin}{\labelsep}%
457
    \renewcommand{\makelabel}{\xreflabel}%
458
  }%
459
}{%
460
  \end{list}%
461
}
462

463
% Used by @bug, @deprecated, @todo, etc.
464
\newenvironment{DoxyRefDesc}[1]{%
465
  \begin{list}{}{%
466
    \renewcommand\makelabel[1]{\textbf{##1}}%
467
    \settowidth\labelwidth{\makelabel{#1}}%
468
    \setlength\leftmargin{\labelwidth+\labelsep}%
469
  }%
470
}{%
471
  \end{list}%
472
}
473

474
% Used by parameter lists and simple sections
475
\newenvironment{Desc}
476
{\begin{list}{}{%
477
    \settowidth{\labelwidth}{20pt}%
478
    \setlength{\parsep}{0pt}%
479
    \setlength{\itemsep}{0pt}%
480
    \setlength{\leftmargin}{\labelwidth+\labelsep}%
481
    \renewcommand{\makelabel}{\entrylabel}%
482
  }
483
}{%
484
  \end{list}%
485
}
486

487
% Used by tables
488
\newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp}%
489
\newenvironment{TabularC}[1]%
490
{\tabulinesep=1mm
491
\begin{longtabu*}spread 0pt [c]{*#1{|X[-1]}|}}%
492
{\end{longtabu*}\par}%
493

494
\newenvironment{TabularNC}[1]%
495
{\begin{tabu}spread 0pt [l]{*#1{|X[-1]}|}}%
496
{\end{tabu}\par}%
497

498
% Used for member group headers
499
\newenvironment{Indent}{%
500
  \begin{list}{}{%
501
    \setlength{\leftmargin}{0.5cm}%
502
  }%
503
  \item[]\ignorespaces%
504
}{%
505
  \unskip%
506
  \end{list}%
507
}
508

509
% Used when hyperlinks are turned off
510
\newcommand{\doxyref}[3]{%
511
  \textbf{#1} (\textnormal{#2}\,\pageref{#3})%
512
}
513

514
% Used to link to a table when hyperlinks are turned on
515
\newcommand{\doxytablelink}[2]{%
516
  \ref{#1}%
517
}
518

519
% Used to link to a table when hyperlinks are turned off
520
\newcommand{\doxytableref}[3]{%
521
  \ref{#3}%
522
}
523

524
% Used by @addindex
525
\newcommand{\lcurly}{\{}
526
\newcommand{\rcurly}{\}}
527

528
% Colors used for syntax highlighting
529
\definecolor{comment}{rgb}{0.5,0.0,0.0}
530
\definecolor{keyword}{rgb}{0.0,0.5,0.0}
531
\definecolor{keywordtype}{rgb}{0.38,0.25,0.125}
532
\definecolor{keywordflow}{rgb}{0.88,0.5,0.0}
533
\definecolor{preprocessor}{rgb}{0.5,0.38,0.125}
534
\definecolor{stringliteral}{rgb}{0.0,0.125,0.25}
535
\definecolor{charliteral}{rgb}{0.0,0.5,0.5}
536
\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0}
537
\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43}
538
\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0}
539
\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0}
540

541
% Color used for table heading
542
\newcommand{\tableheadbgcolor}{lightgray}%
543

544
% Version of hypertarget with correct landing location
545
\newcommand{\Hypertarget}[1]{\Hy@raisedlink{\hypertarget{#1}{}}}
546

547
% possibility to have sections etc. be within the margins
548
% unfortunately had to copy part of book.cls and add \raggedright
549
\makeatletter
550
\newcommand\doxysection{\@startsection {section}{1}{\z@}%
551
                                   {-3.5ex \@plus -1ex \@minus -.2ex}%
552
                                   {2.3ex \@plus.2ex}%
553
                                   {\raggedright\normalfont\Large\bfseries}}
554
\newcommand\doxysubsection{\@startsection{subsection}{2}{\z@}%
555
                                     {-3.25ex\@plus -1ex \@minus -.2ex}%
556
                                     {1.5ex \@plus .2ex}%
557
                                     {\raggedright\normalfont\large\bfseries}}
558
\newcommand\doxysubsubsection{\@startsection{subsubsection}{3}{\z@}%
559
                                     {-3.25ex\@plus -1ex \@minus -.2ex}%
560
                                     {1.5ex \@plus .2ex}%
561
                                     {\raggedright\normalfont\normalsize\bfseries}}
562
\newcommand\doxyparagraph{\@startsection{paragraph}{4}{\z@}%
563
                                    {3.25ex \@plus1ex \@minus.2ex}%
564
                                    {-1em}%
565
                                    {\raggedright\normalfont\normalsize\bfseries}}
566
\newcommand\doxysubparagraph{\@startsection{subparagraph}{5}{\parindent}%
567
                                       {3.25ex \@plus1ex \@minus .2ex}%
568
                                       {-1em}%
569
                                      {\raggedright\normalfont\normalsize\bfseries}}
570
\makeatother
571
% Define caption that is also suitable in a table
572
\makeatletter
573
\def\doxyfigcaption{%
574
\H@refstepcounter{figure}%
575
\@dblarg{\@caption{figure}}}
576
\makeatother
577

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.