refman.tex 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252
  1. % Handle batch mode
  2. % to overcome problems with too many open files
  3. \let\mypdfximage\pdfximage\def\pdfximage{\immediate\mypdfximage}
  4. \RequirePackage{iftex}
  5. \ifLuaTeX
  6. \directlua{pdf.setminorversion(7)}
  7. \fi
  8. \ifXeTeX
  9. \special{pdf:minorversion 7}
  10. \fi
  11. \ifPDFTeX
  12. \pdfminorversion=7
  13. \fi
  14. % Set document class depending on configuration
  15. \documentclass[twoside]{book}
  16. \usepackage{xeCJK}
  17. \setCJKmainfont{Noto Sans CJK JP}
  18. \newenvironment{CJK}[2]{}{}
  19. \usepackage{fontspec}
  20. \setmainfont{DejaVu Serif} % または Latin Modern Roman / TeX Gyre Termes
  21. \setsansfont{DejaVu Sans} % または Arial / TeX Gyre Heros / Liberation Sans
  22. \setmonofont{DejaVu Sans Mono} % 等幅フォント(ソースコード用)
  23. % Packages required by doxygen
  24. \makeatletter
  25. \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}
  26. % suppress package identification of infwarerr as it contains the word "warning"
  27. \let\@@protected@wlog\protected@wlog
  28. \def\protected@wlog#1{\wlog{package info suppressed}}
  29. \RequirePackage{infwarerr}
  30. \let\protected@wlog\@@protected@wlog
  31. \makeatother
  32. \IfFormatAtLeastTF{2016/01/01}{}{\usepackage{fixltx2e}} % for \textsubscript
  33. \ifPDFTeX
  34. \IfFormatAtLeastTF{2015/01/01}{\pdfsuppresswarningpagegroup=1}{}
  35. \fi
  36. \newenvironment{NoHyper}{}{}
  37. \usepackage{doxygen}
  38. \usepackage{graphicx}
  39. \iftutex
  40. \usepackage{fontspec}
  41. \defaultfontfeatures{Ligatures={TeX}}
  42. \usepackage{unicode-math}
  43. \else
  44. \usepackage[utf8]{inputenc}
  45. \fi
  46. \usepackage{makeidx}
  47. \PassOptionsToPackage{warn}{textcomp}
  48. \usepackage{textcomp}
  49. \usepackage[nointegrals]{wasysym}
  50. \usepackage{ifxetex}
  51. % NLS support packages
  52. \usepackage{CJKutf8}
  53. % Define default fonts
  54. % Font selection
  55. % set main and monospaced font
  56. \usepackage[scaled=.90]{helvet}
  57. \usepackage{courier}
  58. \renewcommand{\familydefault}{\sfdefault}
  59. \doxyallsectionsfont{%
  60. \fontseries{bc}\selectfont%
  61. \color{darkgray}%
  62. }
  63. \renewcommand{\DoxyLabelFont}{%
  64. \fontseries{bc}\selectfont%
  65. \color{darkgray}%
  66. }
  67. \newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}}
  68. % Arguments of doxygenemoji:
  69. % 1) ':<text>:' form of the emoji, already LaTeX-escaped
  70. % 2) file with the name of the emoji without the .png extension
  71. % in case image exist use this otherwise use the ':<text>:' form
  72. \newcommand{\doxygenemoji}[2]{%
  73. \IfFileExists{./#2.png}{\raisebox{-0.1em}{\includegraphics[height=0.9em]{./#2.png}}}{#1}%
  74. }
  75. % Page & text layout
  76. \usepackage{geometry}
  77. \geometry{%
  78. a4paper,%
  79. top=2.5cm,%
  80. bottom=2.5cm,%
  81. left=2.5cm,%
  82. right=2.5cm%
  83. }
  84. \usepackage{changepage}
  85. % Allow a bit of overflow to go unnoticed by other means
  86. \tolerance=750
  87. \hfuzz=15pt
  88. \hbadness=750
  89. \setlength{\emergencystretch}{15pt}
  90. \setlength{\parindent}{0cm}
  91. \newcommand{\doxynormalparskip}{\setlength{\parskip}{3ex plus 2ex minus 2ex}}
  92. \newcommand{\doxytocparskip}{\setlength{\parskip}{1ex plus 0ex minus 0ex}}
  93. \doxynormalparskip
  94. % Redefine paragraph/subparagraph environments, using sectsty fonts
  95. \makeatletter
  96. \renewcommand{\paragraph}{%
  97. \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{%
  98. \normalfont\normalsize\bfseries\SS@parafont%
  99. }%
  100. }
  101. \renewcommand{\subparagraph}{%
  102. \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{%
  103. \normalfont\normalsize\bfseries\SS@subparafont%
  104. }%
  105. }
  106. \makeatother
  107. \makeatletter
  108. \newcommand\hrulefilll{\leavevmode\leaders\hrule\hskip 0pt plus 1filll\kern\z@}
  109. \makeatother
  110. % Headers & footers
  111. \usepackage{fancyhdr}
  112. \pagestyle{fancyplain}
  113. \renewcommand{\footrulewidth}{0.4pt}
  114. \fancypagestyle{fancyplain}{
  115. \fancyhf{}
  116. \fancyhead[LE, RO]{\bfseries\thepage}
  117. \fancyhead[LO]{\bfseries\rightmark}
  118. \fancyhead[RE]{\bfseries\leftmark}
  119. \fancyfoot[LO, RE]{\bfseries\scriptsize 構築: Doxygen }
  120. }
  121. \fancypagestyle{plain}{
  122. \fancyhf{}
  123. \fancyfoot[LO, RE]{\bfseries\scriptsize 構築: Doxygen }
  124. \renewcommand{\headrulewidth}{0pt}
  125. }
  126. \pagestyle{fancyplain}
  127. \renewcommand{\chaptermark}[1]{%
  128. \markboth{#1}{}%
  129. }
  130. \renewcommand{\sectionmark}[1]{%
  131. \markright{\thesection\ #1}%
  132. }
  133. % ToC, LoF, LoT, bibliography, and index
  134. % Indices & bibliography
  135. \usepackage[numbers]{natbib}
  136. \usepackage[titles]{tocloft}
  137. \setcounter{tocdepth}{3}
  138. \setcounter{secnumdepth}{5}
  139. % creating indexes
  140. \makeindex
  141. \ifPDFTeX
  142. \usepackage{newunicodechar}
  143. \makeatletter
  144. \def\doxynewunicodechar#1#2{%
  145. \@tempswafalse
  146. \edef\nuc@tempa{\detokenize{#1}}%
  147. \if\relax\nuc@tempa\relax
  148. \nuc@emptyargerr
  149. \else
  150. \edef\@tempb{\expandafter\@car\nuc@tempa\@nil}%
  151. \nuc@check
  152. \if@tempswa
  153. \@namedef{u8:\nuc@tempa}{#2}%
  154. \fi
  155. \fi
  156. }
  157. \makeatother
  158. \doxynewunicodechar{⁻}{${}^{-}$}% Superscript minus
  159. \doxynewunicodechar{²}{${}^{2}$}% Superscript two
  160. \doxynewunicodechar{³}{${}^{3}$}% Superscript three
  161. \fi
  162. % Hyperlinks
  163. % Custom commands used by the header
  164. % Custom commands
  165. \newcommand{\clearemptydoublepage}{%
  166. \newpage{\pagestyle{empty}\cleardoublepage}%
  167. }
  168. % caption style definition
  169. \usepackage{caption}
  170. \captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top}
  171. % in page table of contents
  172. \IfFormatAtLeastTF{2023/05/01}{\usepackage[deeplevels]{etoc}}{\usepackage[deeplevels]{etoc_doxygen}}
  173. \etocsettocstyle{\doxytocparskip}{\doxynormalparskip}
  174. \etocsetlevel{subsubsubsection}{4}
  175. \etocsetlevel{subsubsubsubsection}{5}
  176. \etocsetlevel{subsubsubsubsubsection}{6}
  177. \etocsetlevel{subsubsubsubsubsubsection}{7}
  178. \etocsetlevel{paragraph}{8}
  179. \etocsetlevel{subparagraph}{9}
  180. % prevent numbers overlap the titles in toc
  181. \renewcommand{\numberline}[1]{#1~}
  182. % End of preamble, now comes the document contents
  183. %===== C O N T E N T S =====
  184. \begin{document}
  185. \raggedbottom
  186. \begin{CJK}{UTF8}{min}
  187. % Titlepage & ToC
  188. \pagenumbering{alph}
  189. \begin{titlepage}
  190. \vspace*{7cm}
  191. \begin{center}%
  192. {\Large tinykernel}\\
  193. \vspace*{1cm}
  194. {\large 構築: Doxygen 1.18.0}\\
  195. \end{center}
  196. \end{titlepage}
  197. \clearemptydoublepage
  198. \pagenumbering{roman}
  199. \tableofcontents
  200. \clearemptydoublepage
  201. \pagenumbering{arabic}
  202. %--- Begin generated contents ---
  203. \chapter{ディレクトリ索引}
  204. \input{dirs}
  205. \chapter{名前空間索引}
  206. \input{namespaces}
  207. \chapter{クラス索引}
  208. \input{annotated}
  209. \chapter{ファイル索引}
  210. \input{files}
  211. \chapter{ディレクトリ詳解}
  212. \input{dir_acd5872930fa412076ba552147794c0b}
  213. \input{dir_98155c543e4e99bbf758f6a26c81127c}
  214. \input{dir_6d59b5b42f7d34a6ff723af6795d662d}
  215. \input{dir_cd190afcfbd866c24d21613b3221d9b2}
  216. \input{dir_81986ce0535ef2803d801068519a8a4c}
  217. \input{dir_53c07a1711446230771e696affad55be}
  218. \chapter{名前空間詳解}
  219. \input{namespacetk}
  220. \input{namespacetk_1_1detail}
  221. \chapter{クラス詳解}
  222. \input{classtk_1_1_actor}
  223. \input{classtk_1_1_event_hub}
  224. \input{struct_fpu_ctx}
  225. \input{classtk_1_1_lock_guard}
  226. \input{structtk_1_1_message}
  227. \input{classtk_1_1_mutex}
  228. \input{classtk_1_1_preempt_guard}
  229. \input{classtk_1_1_semaphore}
  230. \input{structtk_1_1_task_handle}
  231. \chapter{ファイル詳解}
  232. \input{actor_8hpp}
  233. \input{actor_8hpp_source}
  234. \input{kernel_8hpp}
  235. \input{kernel_8hpp_source}
  236. \input{sync_8hpp}
  237. \input{sync_8hpp_source}
  238. \input{port__m33_8c}
  239. \input{port__m33_8h}
  240. \input{port__m33_8h_source}
  241. \input{scheduler_8cpp}
  242. %--- End generated contents ---
  243. % Index
  244. \backmatter
  245. \newpage
  246. \phantomsection
  247. \clearemptydoublepage
  248. \addcontentsline{toc}{chapter}{\indexname}
  249. \printindex
  250. % Required for some languages (in combination with latexdocumentpre from the header)
  251. \end{CJK}
  252. \end{document}