summaryrefslogtreecommitdiffstats
path: root/thesis
diff options
context:
space:
mode:
Diffstat (limited to 'thesis')
-rw-r--r--thesis/thesis.tex43
1 files changed, 26 insertions, 17 deletions
diff --git a/thesis/thesis.tex b/thesis/thesis.tex
index cd02e1f..643c579 100644
--- a/thesis/thesis.tex
+++ b/thesis/thesis.tex
@@ -5,7 +5,7 @@ parskip=never]{paper}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
-\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
+\usepackage[usenames,dvipsnames,rgb,svgnames,table]{xcolor}
\definecolor{osc-out}{RGB}{150,0,255}
\definecolor{osc-in}{RGB}{0,0,255}
\definecolor{audio-in}{RGB}{255,0,0}
@@ -24,6 +24,7 @@ parskip=never]{paper}
\usepackage{url}
\usepackage{graphicx}
\usepackage{pdfpages}
+\usepackage[author={David Runge}]{pdfcomment}
\usepackage{mathtools}
\usepackage{float}
@@ -492,14 +493,14 @@ parskip=never]{paper}
to be linted (error checked) before sending and again parsed, after
receiving an answer from the application.\\
- \paragraph{OSC through PureData}
- \label{par:osc_through_puredata}
+ \subsubsection{OSC through PureData}
+ \label{subsubsec:osc_through_puredata}
To allow \gls{osc} communication, the \gls{ssr} incorporates a Lua
based \gls{pd} external. It uses two externals (iemnet and pdlua)
alongside a Lua library for parsing and creating \gls{xml} (SLAXML).
- \paragraph{Sending and receiving}
- \label{par:sending_and_receiving}
+ \subsubsection{Sending and receiving}
+ \label{subsubsec:sending_and_receiving}
As mentioned in
section~\nameref{subsec:publisher_subscriber_interface}, the
NetworkSubscriber class (part of the \gls{ip} interface) implements the
@@ -570,7 +571,10 @@ parskip=never]{paper}
that of the \textbf{\nameref{subsec:ip-interface}}, expanding however in
creating a client-server architecture, controlled by
\textbf{\nameref{subsubsec:message_levels}}, using a unified
- \textbf{\nameref{subsubsec:message_interface}}.
+ \textbf{\nameref{subsubsec:message_interface}}.\\
+ \gls{ssr} client instances only evaluate messages of server instances
+ they are subscribed to. Server instances only evaluate messages of client
+ instances, that are subscribed to them.
\subsubsection{Open Sound Control}
\label{subsubsec:open-sound-control}
@@ -706,9 +710,11 @@ parskip=never]{paper}
\paragraph{Client instance}
\label{para:client-instance}
By default the \gls{ssr} is started as an \gls{osc} client on port
- 50001. As shown in Listing~\ref{lst:ssr-binaural-client-start}, it is
- possible to use a different port, by defining it with the help of the
- \textbf{-p} flag.\\
+ 50001\pdfcomment[color=red,icon=Note]{Handle failure to startup the
+ liblo ServerThread more gracefully. Instead of segfaulting in case of
+ port in use, throw error message and exit.}. As shown in
+ Listing~\ref{lst:ssr-binaural-client-start}, it is possible to use a
+ different port, by defining it with the help of the \textbf{-p} flag.\\
\begin{listing}[!htb]
\begin{mdframed}
@@ -729,12 +735,13 @@ ssr-binaural -p “50002”
\paragraph{Server instance}
\label{para:server-instance}
- With the help of the \textbf{-N} flag, it is possible to start the
- \gls{ssr} as an \gls{osc} server. In
- Listing~\ref{lst:ssr-binaural-server-start} additionally flag
- \textbf{-C} is used to specify an initial client \gls{ip} and its
- port (the flag actually accepts a comma-separated list of
- \gls{ip}-port pairs).\\
+ With the help of the \textbf{-N} flag
+ \pdfcomment[color=red,icon=Note]{Make -N start server, client is
+ default anyways}, it is possible to start the \gls{ssr} as an
+ \gls{osc} server. In Listing~\ref{lst:ssr-binaural-server-start}
+ additionally flag \textbf{-C} is used to specify an initial client
+ \gls{ip} and its port (the flag actually accepts a comma-separated
+ list of \gls{ip}-port pairs).\\
The \textbf{-p} flag, for setting a specific port is also available,
when starting a server instance.
@@ -929,8 +936,10 @@ ssr-aap -N “server” -C “127.0.0.1:50002”
To be able to distinguish between types of
clients and servers, several message levels were implemented for the
\gls{osc} interface conceived in the course of this work.\\
- The \textit{enumeration class} MessageLevel (see
- Listing~\ref{lst:ssr_global.h}) defines the four types \textit{CLIENT},
+ The \textit{enumeration class} \textit{MessageLevel}
+ \pdfcomment[color=red,icon=Note]{Don't allow static\_casts above
+ MessageLevel::GUI\_SERVER} (see Listing~\ref{lst:ssr_global.h}) defines
+ the four types \textit{CLIENT},
\textit{GUI\_CLIENT}, \textit{SERVER}, \textit{GUI\_SERVER}, which are
represented as non-negative integers (in ascending order), starting
from 0.\\