\documentclass[../thesis.tex]{subfiles}
-\include{subfilepreamble}
+\input{subfilepreamble}
+
\begin{document}
-\chapter{Auxiliary \texorpdfstring{\glsentrytext{MTASK}}{mTask} type classes}%
+\input{subfileprefix}
+\ifSubfilesClassLoaded{\appendix\setcounter{chapter}{1}}{}
+\chapter{Auxiliary mTask type classes}%
\label{chp:mtask_aux}
\lstset{basicstyle=\tt\footnotesize}
\section{Peripherals}\label{sec:aux_peripherals}
soundLevel :: (v SoundDetector) -> MTask v Bool | tupl, aio v
\end{lstClean}
-\subsection{\texorpdfstring{\gls{I2C}}{I\textsuperscript{2}C} buttons}
+\subsection{\IIC{} buttons}
The \gls{MTASK} language supports one type of \gls{I2C} buttons (the \gls{I2C} buttons from the \gls{WEMOS} d1 mini \gls{OLED} shield).
The buttons from this shield provide more information than just the status (see \cleaninline{ButtonStatus}).
The complete interface containing the constructor and the measurement tasks is shown in \cref{lst:mtask_i2cbutton}.
BButton :: (v I2CButton) -> MTask v ButtonStatus
\end{lstClean}
-\subsection{\texorpdfstring{\gls{LED}}{LED} matrix}
+\subsection{LED matrix}
The \gls{MTASK} language supports one type of \gls{LED} matrix (the $8\times8$ \gls{LED} matrix shield for the \gls{WEMOS} d1 mini).
Instead of containing a \gls{TOP}-like interface, the \gls{ARDUINO} interface is directly translated to \gls{MTASK}.
As a result, every task immediately returns a stable value indicating the result.
LMDisplay :: (v LEDMatrix) -> MTask v ()
\end{lstClean}
+\subsection{Connection types}\label{lst:connection_types}
+\begin{lstClean}[caption={}]
+:: TCPSettings =
+ { host :: String
+ , port :: Int
+ , pingTimeout :: ?Int
+ }
+:: MQTTSettings =
+ { host :: String
+ , port :: Int
+ , mcuId :: String
+ , serverId :: String
+ , auth :: MQTTAuth
+ }
+:: TTYSettings = {
+ devicePath :: String,
+ baudrate :: BaudRate,
+ bytesize :: ByteSize,
+ parity :: Parity,
+ stop2bits :: Bool,
+ xonxoff :: Bool,
+ sleepTime :: Int
+ }
+\end{lstClean}
+
+
\lstset{basicstyle=\tt}
\input{subfilepostamble}
\end{document}