chore: I'm allergic to latex
All checks were successful
Simple Mirror to GitHub / mirror (push) Successful in 7s

This commit is contained in:
xbazzi 2025-08-21 23:56:43 -06:00
parent fb463f3b78
commit aef4cc81bc
121 changed files with 2 additions and 7923 deletions

1
.gitignore vendored
View File

@ -2,3 +2,4 @@ build/
.direnv/
.vscode
html/
latex/

View File

@ -1,13 +0,0 @@
\doxysection{src/\+Algo.cc File Reference}
\hypertarget{Algo_8cc}{}\label{Algo_8cc}\index{src/Algo.cc@{src/Algo.cc}}
{\ttfamily \#include $<$sstream$>$}\newline
{\ttfamily \#include $<$Algo.\+hh$>$}\newline
{\ttfamily \#include $<$readers/\+JSONReader.\+hh$>$}\newline
{\ttfamily \#include $<$nlohmann/json.\+hpp$>$}\newline
Include dependency graph for Algo.\+cc\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{Algo_8cc__incl}
\end{center}
\end{figure}

View File

@ -1 +0,0 @@
211613c6e72476857da5ac76c9123075

Binary file not shown.

View File

@ -1,29 +0,0 @@
\doxysection{include/\+Algo.hh File Reference}
\hypertarget{Algo_8hh}{}\label{Algo_8hh}\index{include/Algo.hh@{include/Algo.hh}}
{\ttfamily \#include $<$memory$>$}\newline
{\ttfamily \#include $<$queue$>$}\newline
{\ttfamily \#include $<$atomic$>$}\newline
{\ttfamily \#include $<$thread$>$}\newline
{\ttfamily \#include $<$future$>$}\newline
{\ttfamily \#include "{}Publisher.\+hh"{}}\newline
{\ttfamily \#include "{}utils/\+Thread\+Safe\+Queue.\+hh"{}}\newline
{\ttfamily \#include "{}utils/\+Thread\+Pool.\+hh"{}}\newline
Include dependency graph for Algo.\+hh\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{Algo_8hh__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{Algo_8hh__dep__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item
class \mbox{\hyperlink{classAlgo}{Algo}}
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
2324aef205f53e56df9c6dc641c08f0f

Binary file not shown.

View File

@ -1 +0,0 @@
0ce3da1853fde40a77e31708fc4d4b83

Binary file not shown.

View File

@ -1,46 +0,0 @@
\doxysection{Algo.\+hh}
\hypertarget{Algo_8hh_source}{}\label{Algo_8hh_source}\index{include/Algo.hh@{include/Algo.hh}}
\mbox{\hyperlink{Algo_8hh}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{preprocessor}{\#pragma\ once}}
\DoxyCodeLine{00002\ }
\DoxyCodeLine{00003\ \textcolor{comment}{//\ C++\ Includes}}
\DoxyCodeLine{00004\ \textcolor{preprocessor}{\#include\ <memory>}}
\DoxyCodeLine{00005\ \textcolor{preprocessor}{\#include\ <queue>}}
\DoxyCodeLine{00006\ \textcolor{preprocessor}{\#include\ <atomic>}}
\DoxyCodeLine{00007\ \textcolor{preprocessor}{\#include\ <thread>}}
\DoxyCodeLine{00008\ \textcolor{preprocessor}{\#include\ <future>}}
\DoxyCodeLine{00009\ }
\DoxyCodeLine{00010\ }
\DoxyCodeLine{00011\ \textcolor{comment}{//\ FastInAHurry\ includes}}
\DoxyCodeLine{00012\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{Publisher_8hh}{Publisher.hh}}"{}}}
\DoxyCodeLine{00013\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{ThreadSafeQueue_8hh}{utils/ThreadSafeQueue.hh}}"{}}}
\DoxyCodeLine{00014\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{ThreadPool_8hh}{utils/ThreadPool.hh}}"{}}}
\DoxyCodeLine{00015\ }
\DoxyCodeLine{00016\ }
\DoxyCodeLine{00017\ \textcolor{keyword}{class\ }\mbox{\hyperlink{classAlgo_aaf4f951979fc60411ed84c558f081867}{Algo}}\ \{}
\DoxyCodeLine{00018\ \textcolor{keyword}{public}:}
\DoxyCodeLine{00019\ \ \ \ \ \mbox{\hyperlink{classAlgo_aaf4f951979fc60411ed84c558f081867}{Algo}}();}
\DoxyCodeLine{00020\ }
\DoxyCodeLine{00021\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{classAlgo_ac8b70d722d4b2c1ad5cad4a63c3b7c62}{initialize}}();}
\DoxyCodeLine{00022\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{classAlgo_ac223b246cd2f8851c4e0893ff41547fa}{generate\_orders}}();}
\DoxyCodeLine{00023\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{classAlgo_a8fcaaeaa5ad212a126490a19370c9b7e}{process}}();}
\DoxyCodeLine{00024\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{classAlgo_ac556564d232b2d90cec73718538ec804}{send}}(trading::Order\&);}
\DoxyCodeLine{00025\ \ \ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classAlgo_a6fef1866e14e8a08788cb1d54afcedaf}{initialized}}();}
\DoxyCodeLine{00026\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{classAlgo_a330f03f9df9e5d1e2b701bc3f5e94524}{stop}}();}
\DoxyCodeLine{00027\ \textcolor{keyword}{private}:}
\DoxyCodeLine{00028\ \ \ \ \ std::queue<trading::Order>\ \mbox{\hyperlink{classAlgo_a889e1362976e78c4904007ee5edfd3fe}{\_orders}};}
\DoxyCodeLine{00029\ \ \ \ \ std::atomic<bool>\ \mbox{\hyperlink{classAlgo_a6cffb1f6d087978eba685bcb1d06b11d}{\_initialized}}\{\textcolor{keyword}{false}\};}
\DoxyCodeLine{00030\ \ \ \ \ std::atomic<bool>\ \mbox{\hyperlink{classAlgo_a3ce5d714379ab5094b6d82b99421b4a3}{\_running}}\{\textcolor{keyword}{false}\};}
\DoxyCodeLine{00031\ \ \ \ \ std::shared\_ptr<Publisher>\ \ \mbox{\hyperlink{classAlgo_af5bcfa2719e948826f71983a18ec017d}{\_pub}};}
\DoxyCodeLine{00032\ }
\DoxyCodeLine{00033\ \ \ \ \ \mbox{\hyperlink{classutils_1_1ThreadSafeQueue}{utils::ThreadSafeQueue<trading::Order>}}\ \mbox{\hyperlink{classAlgo_ac4f2da176cc2dc9ba757140a635fe9b8}{\_order\_queue}};}
\DoxyCodeLine{00034\ \ \ \ \ \mbox{\hyperlink{classutils_1_1ThreadPool}{utils::ThreadPool}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{classAlgo_adb85594bf1d2e7c9357d353b5e97787d}{\_thread\_pool}};}
\DoxyCodeLine{00035\ }
\DoxyCodeLine{00036\ \ \ \ \ std::mutex\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{classAlgo_a4943cab875d5261b0abec360b68878e8}{\_send\_mutex}};}
\DoxyCodeLine{00037\ \ \ \ \ std::jthread\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{classAlgo_a743ddc60baad0afa7f036a529c340460}{\_reader\_thread}};}
\DoxyCodeLine{00038\ \ \ \ \ std::vector<std::jthread>\ \ \ \ \ \ \ \mbox{\hyperlink{classAlgo_ac72ec5a778fce0be42ebf635f2c504d0}{\_worker\_threads}};}
\DoxyCodeLine{00039\ \ \ \ \ std::vector<std::future<bool>>\ \ \mbox{\hyperlink{classAlgo_a671449864b2d1a1af9a57970eb104a0f}{\_futures}};}
\DoxyCodeLine{00040\ \};}
\end{DoxyCode}

View File

@ -1,10 +0,0 @@
\doxysection{src/\+Controller.cc File Reference}
\hypertarget{Controller_8cc}{}\label{Controller_8cc}\index{src/Controller.cc@{src/Controller.cc}}
{\ttfamily \#include "{}Controller.\+hh"{}}\newline
Include dependency graph for Controller.\+cc\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{Controller_8cc__incl}
\end{center}
\end{figure}

View File

@ -1 +0,0 @@
12029bdb832ea7f6a5407cf57bb316d6

Binary file not shown.

View File

@ -1,22 +0,0 @@
\doxysection{include/\+Controller.hh File Reference}
\hypertarget{Controller_8hh}{}\label{Controller_8hh}\index{include/Controller.hh@{include/Controller.hh}}
{\ttfamily \#include "{}Algo.\+hh"{}}\newline
Include dependency graph for Controller.\+hh\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{Controller_8hh__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=197pt]{Controller_8hh__dep__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item
class \mbox{\hyperlink{classController}{Controller}}
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
e273f69f3dc18dda64848675fb1b0abd

Binary file not shown.

View File

@ -1 +0,0 @@
281a2fa6788bcfd1efb77b625fb59289

Binary file not shown.

View File

@ -1,15 +0,0 @@
\doxysection{Controller.\+hh}
\hypertarget{Controller_8hh_source}{}\label{Controller_8hh_source}\index{include/Controller.hh@{include/Controller.hh}}
\mbox{\hyperlink{Controller_8hh}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{Algo_8hh}{Algo.hh}}"{}}}
\DoxyCodeLine{00002\ }
\DoxyCodeLine{00003\ \textcolor{keyword}{class\ }\mbox{\hyperlink{classController_a9bf20649bd5268f6c25d206eddcd3fc5}{Controller}}\ \{}
\DoxyCodeLine{00004\ \textcolor{keyword}{public}:}
\DoxyCodeLine{00005\ \ \ \ \ \textcolor{keyword}{explicit}\ \mbox{\hyperlink{classController_a9bf20649bd5268f6c25d206eddcd3fc5}{Controller}}(\textcolor{keywordtype}{int},\ \textcolor{keywordtype}{char}*[]);}
\DoxyCodeLine{00006\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{classController_ad535ad74055e645b7f44b7feeb4e82a8}{start}}();}
\DoxyCodeLine{00007\ \textcolor{keyword}{private}:}
\DoxyCodeLine{00008\ \ \ \ \ std::unique\_ptr<Algo>\ \mbox{\hyperlink{classController_af469cf532ccb25e9256a9e71d35072ed}{\_algo}};}
\DoxyCodeLine{00009\ \};}
\end{DoxyCode}

View File

@ -1,26 +0,0 @@
\doxysection{src/readers/\+JSONReader.cc File Reference}
\hypertarget{JSONReader_8cc}{}\label{JSONReader_8cc}\index{src/readers/JSONReader.cc@{src/readers/JSONReader.cc}}
{\ttfamily \#include $<$fstream$>$}\newline
{\ttfamily \#include $<$iostream$>$}\newline
{\ttfamily \#include "{}readers/\+JSONReader.\+hh"{}}\newline
{\ttfamily \#include $<$Algo.\+hh$>$}\newline
{\ttfamily \#include "{}trading.\+pb.\+h"{}}\newline
Include dependency graph for JSONReader.\+cc\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{JSONReader_8cc__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
namespace \mbox{\hyperlink{namespacereaders}{readers}}
\item
namespace \mbox{\hyperlink{namespacereaders_1_1json}{readers\+::json}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{namespacereaders_1_1json_aa2743dc5b5ec05c84803e442f21f43d1}{Order\+Queue}} \mbox{\hyperlink{namespacereaders_1_1json_a05735378dfc87c287094d7aa33ac8209}{readers\+::json\+::read\+\_\+orders\+\_\+from\+\_\+json}} (const std\+::string \&filename)
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
7e113c0a54ccca514ca8e252062f14c5

Binary file not shown.

View File

@ -1,40 +0,0 @@
\doxysection{include/readers/\+JSONReader.hh File Reference}
\hypertarget{JSONReader_8hh}{}\label{JSONReader_8hh}\index{include/readers/JSONReader.hh@{include/readers/JSONReader.hh}}
{\ttfamily \#include $<$queue$>$}\newline
{\ttfamily \#include $<$string$>$}\newline
{\ttfamily \#include $<$memory$>$}\newline
{\ttfamily \#include "{}trading.\+pb.\+h"{}}\newline
{\ttfamily \#include $<$nlohmann/json.\+hpp$>$}\newline
Include dependency graph for JSONReader.\+hh\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{JSONReader_8hh__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=310pt]{JSONReader_8hh__dep__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
namespace \mbox{\hyperlink{namespacereaders}{readers}}
\item
namespace \mbox{\hyperlink{namespacereaders_1_1json}{readers\+::json}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item
using \mbox{\hyperlink{namespacereaders_1_1json_a5f54a39f5770ab1576f53a06a159cb42}{readers\+::json\+::\+JSON}} = nlohmann\+::json
\item
using \mbox{\hyperlink{namespacereaders_1_1json_aa2743dc5b5ec05c84803e442f21f43d1}{readers\+::json\+::\+Order\+Queue}} = std\+::queue$<$trading\+::\+Order$>$
\end{DoxyCompactItemize}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{namespacereaders_1_1json_aa2743dc5b5ec05c84803e442f21f43d1}{Order\+Queue}} \mbox{\hyperlink{namespacereaders_1_1json_a05735378dfc87c287094d7aa33ac8209}{readers\+::json\+::read\+\_\+orders\+\_\+from\+\_\+json}} (const std\+::string \&filename)
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
ec098445606982883bedccfed91b5862

Binary file not shown.

View File

@ -1 +0,0 @@
1f6755b0cedd876e089e33ad2e048562

Binary file not shown.

View File

@ -1,23 +0,0 @@
\doxysection{JSONReader.\+hh}
\hypertarget{JSONReader_8hh_source}{}\label{JSONReader_8hh_source}\index{include/readers/JSONReader.hh@{include/readers/JSONReader.hh}}
\mbox{\hyperlink{JSONReader_8hh}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{preprocessor}{\#pragma\ once}}
\DoxyCodeLine{00002\ }
\DoxyCodeLine{00003\ \textcolor{comment}{//\ C++\ Includes}}
\DoxyCodeLine{00004\ \textcolor{preprocessor}{\#include\ <queue>}}
\DoxyCodeLine{00005\ \textcolor{preprocessor}{\#include\ <string>}}
\DoxyCodeLine{00006\ \textcolor{preprocessor}{\#include\ <memory>}}
\DoxyCodeLine{00007\ }
\DoxyCodeLine{00008\ \textcolor{comment}{//\ Third\ Party\ Includes}}
\DoxyCodeLine{00009\ \textcolor{preprocessor}{\#include\ "{}trading.pb.h"{}}}
\DoxyCodeLine{00010\ \textcolor{preprocessor}{\#include\ <nlohmann/json.hpp>}}
\DoxyCodeLine{00011\ }
\DoxyCodeLine{00012\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespacereaders_1_1json}{readers::json}}\ \{}
\DoxyCodeLine{00013\ \textcolor{keyword}{using\ }\mbox{\hyperlink{namespacereaders_1_1json_a5f54a39f5770ab1576f53a06a159cb42}{JSON}}\ =\ nlohmann::json;}
\DoxyCodeLine{00014\ \textcolor{keyword}{using\ }\mbox{\hyperlink{namespacereaders_1_1json_aa2743dc5b5ec05c84803e442f21f43d1}{OrderQueue}}\ =\ std::queue<trading::Order>;}
\DoxyCodeLine{00015\ }
\DoxyCodeLine{00016\ \mbox{\hyperlink{namespacereaders_1_1json_aa2743dc5b5ec05c84803e442f21f43d1}{OrderQueue}}\ \mbox{\hyperlink{namespacereaders_1_1json_a05735378dfc87c287094d7aa33ac8209}{read\_orders\_from\_json}}(\textcolor{keyword}{const}\ std::string\&\ filename);}
\DoxyCodeLine{00017\ \}\ \textcolor{comment}{//\ End\ json\ namespace}}
\end{DoxyCode}

View File

@ -1,42 +0,0 @@
LATEX_CMD?=pdflatex
MKIDX_CMD?=makeindex
BIBTEX_CMD?=bibtex
LATEX_COUNT?=8
MANUAL_FILE?=refman
all: $(MANUAL_FILE).pdf
pdf: $(MANUAL_FILE).pdf
$(MANUAL_FILE).pdf: clean $(MANUAL_FILE).tex
$(LATEX_CMD) $(MANUAL_FILE) || \
if [ $$? != 0 ] ; then \
\echo "Please consult $(MANUAL_FILE).log to see the error messages" ; \
false; \
fi
$(MKIDX_CMD) $(MANUAL_FILE).idx
$(LATEX_CMD) $(MANUAL_FILE) || \
if [ $$? != 0 ] ; then \
\echo "Please consult $(MANUAL_FILE).log to see the error messages" ; \
false; \
fi
latex_count=$(LATEX_COUNT) ; \
while grep -E -s 'Rerun (LaTeX|to get cross-references right|to get bibliographical references right)' $(MANUAL_FILE).log && [ $$latex_count -gt 0 ] ;\
do \
echo "Rerunning latex...." ;\
$(LATEX_CMD) $(MANUAL_FILE) || \
if [ $$? != 0 ] ; then \
\echo "Please consult $(MANUAL_FILE).log to see the error messages" ; \
false; \
fi; \
latex_count=`expr $$latex_count - 1` ;\
done
$(MKIDX_CMD) $(MANUAL_FILE).idx
$(LATEX_CMD) $(MANUAL_FILE) || \
if [ $$? != 0 ] ; then \
\echo "Please consult $(MANUAL_FILE).log to see the error messages" ; \
false; \
fi
clean:
rm -f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl $(MANUAL_FILE).pdf

View File

@ -1,11 +0,0 @@
\doxysection{src/\+Publisher.cc File Reference}
\hypertarget{Publisher_8cc}{}\label{Publisher_8cc}\index{src/Publisher.cc@{src/Publisher.cc}}
{\ttfamily \#include "{}Publisher.\+hh"{}}\newline
{\ttfamily \#include $<$iostream$>$}\newline
Include dependency graph for Publisher.\+cc\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{Publisher_8cc__incl}
\end{center}
\end{figure}

View File

@ -1 +0,0 @@
2d136351ebf2617e47a2431fe6cf3158

Binary file not shown.

View File

@ -1,24 +0,0 @@
\doxysection{include/\+Publisher.hh File Reference}
\hypertarget{Publisher_8hh}{}\label{Publisher_8hh}\index{include/Publisher.hh@{include/Publisher.hh}}
{\ttfamily \#include "{}trading.\+grpc.\+pb.\+h"{}}\newline
{\ttfamily \#include $<$grpcpp/grpcpp.\+h$>$}\newline
{\ttfamily \#include $<$memory$>$}\newline
Include dependency graph for Publisher.\+hh\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{Publisher_8hh__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{Publisher_8hh__dep__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item
class \mbox{\hyperlink{classPublisher}{Publisher}}
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
5bf9bae782ee8e3e8516e2e0453bc2c5

Binary file not shown.

View File

@ -1 +0,0 @@
e78cf47d5e8ae292dbba712ea3a137d4

Binary file not shown.

View File

@ -1,20 +0,0 @@
\doxysection{Publisher.\+hh}
\hypertarget{Publisher_8hh_source}{}\label{Publisher_8hh_source}\index{include/Publisher.hh@{include/Publisher.hh}}
\mbox{\hyperlink{Publisher_8hh}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{preprocessor}{\#pragma\ once}}
\DoxyCodeLine{00002\ }
\DoxyCodeLine{00003\ \textcolor{preprocessor}{\#include\ "{}trading.grpc.pb.h"{}}}
\DoxyCodeLine{00004\ \textcolor{preprocessor}{\#include\ <grpcpp/grpcpp.h>}}
\DoxyCodeLine{00005\ \textcolor{preprocessor}{\#include\ <memory>}}
\DoxyCodeLine{00006\ }
\DoxyCodeLine{00007\ \textcolor{keyword}{class\ }\mbox{\hyperlink{classPublisher_ac829a82a3cb7aeeaece86419ffb0119d}{Publisher}}\ \{}
\DoxyCodeLine{00008\ \textcolor{keyword}{public}:}
\DoxyCodeLine{00009\ \ \ \ \ \textcolor{keyword}{explicit}\ \mbox{\hyperlink{classPublisher_ac829a82a3cb7aeeaece86419ffb0119d}{Publisher}}(std::shared\_ptr<grpc::Channel>\ channel);}
\DoxyCodeLine{00010\ }
\DoxyCodeLine{00011\ \ \ \ \ grpc::Status\ \mbox{\hyperlink{classPublisher_a2fe75fa23a11f43f31e0d2d2261c86e8}{send\_order}}(\textcolor{keyword}{const}\ trading::Order\&\ order);}
\DoxyCodeLine{00012\ \textcolor{keyword}{private}:}
\DoxyCodeLine{00013\ \ \ \ \ std::unique\_ptr<trading::TradingService::Stub>\ \mbox{\hyperlink{classPublisher_ac495a5e279a5531eddb94314bdbd04ac}{\_stub}};}
\DoxyCodeLine{00014\ \};}
\end{DoxyCode}

View File

@ -1,22 +0,0 @@
\doxysection{src/utils/\+Thread\+Pool.cc File Reference}
\hypertarget{ThreadPool_8cc}{}\label{ThreadPool_8cc}\index{src/utils/ThreadPool.cc@{src/utils/ThreadPool.cc}}
{\ttfamily \#include $<$vector$>$}\newline
{\ttfamily \#include $<$queue$>$}\newline
{\ttfamily \#include $<$thread$>$}\newline
{\ttfamily \#include $<$functional$>$}\newline
{\ttfamily \#include $<$condition\+\_\+variable$>$}\newline
{\ttfamily \#include $<$mutex$>$}\newline
{\ttfamily \#include $<$future$>$}\newline
{\ttfamily \#include "{}utils/\+Thread\+Pool.\+hh"{}}\newline
Include dependency graph for Thread\+Pool.\+cc\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{ThreadPool_8cc__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
namespace \mbox{\hyperlink{namespaceutils}{utils}}
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
a1eefb259b52d70ba5b2f8d600c8d7e7

Binary file not shown.

View File

@ -1,33 +0,0 @@
\doxysection{include/utils/\+Thread\+Pool.hh File Reference}
\hypertarget{ThreadPool_8hh}{}\label{ThreadPool_8hh}\index{include/utils/ThreadPool.hh@{include/utils/ThreadPool.hh}}
{\ttfamily \#include $<$vector$>$}\newline
{\ttfamily \#include $<$queue$>$}\newline
{\ttfamily \#include $<$thread$>$}\newline
{\ttfamily \#include $<$functional$>$}\newline
{\ttfamily \#include $<$condition\+\_\+variable$>$}\newline
{\ttfamily \#include $<$mutex$>$}\newline
{\ttfamily \#include $<$future$>$}\newline
Include dependency graph for Thread\+Pool.\+hh\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{ThreadPool_8hh__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{ThreadPool_8hh__dep__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item
class \mbox{\hyperlink{classutils_1_1ThreadPool}{utils\+::\+Thread\+Pool}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
namespace \mbox{\hyperlink{namespaceutils}{utils}}
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
7fc62ea7e035c32c7bb2e8e282ccf661

Binary file not shown.

View File

@ -1 +0,0 @@
d4b3a5bf89e3c451af8aaef193ad8e31

Binary file not shown.

View File

@ -1,52 +0,0 @@
\doxysection{Thread\+Pool.\+hh}
\hypertarget{ThreadPool_8hh_source}{}\label{ThreadPool_8hh_source}\index{include/utils/ThreadPool.hh@{include/utils/ThreadPool.hh}}
\mbox{\hyperlink{ThreadPool_8hh}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{comment}{//\ C++\ Includes}}
\DoxyCodeLine{00002\ \textcolor{preprocessor}{\#include\ <vector>}}
\DoxyCodeLine{00003\ \textcolor{preprocessor}{\#include\ <queue>}}
\DoxyCodeLine{00004\ \textcolor{preprocessor}{\#include\ <thread>}}
\DoxyCodeLine{00005\ \textcolor{preprocessor}{\#include\ <functional>}}
\DoxyCodeLine{00006\ \textcolor{preprocessor}{\#include\ <condition\_variable>}}
\DoxyCodeLine{00007\ \textcolor{preprocessor}{\#include\ <mutex>}}
\DoxyCodeLine{00008\ \textcolor{preprocessor}{\#include\ <future>}}
\DoxyCodeLine{00009\ }
\DoxyCodeLine{00010\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespaceutils}{utils}}\ \{}
\DoxyCodeLine{00011\ }
\DoxyCodeLine{00012\ \textcolor{keyword}{class\ }\mbox{\hyperlink{classutils_1_1ThreadPool_a02ccb8118692092d5d4132eab7c751e2}{ThreadPool}}\ \{}
\DoxyCodeLine{00013\ \textcolor{keyword}{private}:}
\DoxyCodeLine{00014\ \ \ \ \ std::vector<std::thread>\ \mbox{\hyperlink{classutils_1_1ThreadPool_a3113eec4fac2948b403a0d94c42a3732}{\_workers}};}
\DoxyCodeLine{00015\ \ \ \ \ std::queue<std::function<void()>>\ \mbox{\hyperlink{classutils_1_1ThreadPool_acbc332a452776263a9e6557131495aee}{\_tasks}};}
\DoxyCodeLine{00016\ }
\DoxyCodeLine{00017\ \ \ \ \ std::mutex\ \mbox{\hyperlink{classutils_1_1ThreadPool_ad59af3c00e330ac777fb5eb349e0e291}{\_queue\_mutex}};}
\DoxyCodeLine{00018\ \ \ \ \ std::condition\_variable\ \mbox{\hyperlink{classutils_1_1ThreadPool_ad0284bde5203396b2e3cf95e07893748}{\_cv}};}
\DoxyCodeLine{00019\ \ \ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classutils_1_1ThreadPool_a6a2a828a76092e3170cb6a93d679043f}{\_stop}}\{\textcolor{keyword}{false}\};}
\DoxyCodeLine{00020\ }
\DoxyCodeLine{00021\ \textcolor{keyword}{public}:}
\DoxyCodeLine{00022\ \ \ \ \ \textcolor{keyword}{explicit}\ \mbox{\hyperlink{classutils_1_1ThreadPool_a02ccb8118692092d5d4132eab7c751e2}{ThreadPool}}(std::size\_t\ threads\ =\ std::thread::hardware\_concurrency());}
\DoxyCodeLine{00023\ \ \ \ \ \mbox{\hyperlink{classutils_1_1ThreadPool_a6f0428a4b19a724f956d82e408013108}{\string~ThreadPool}}();}
\DoxyCodeLine{00024\ }
\DoxyCodeLine{00025\ \ \ \ \ \textcolor{keyword}{template}<\textcolor{keyword}{class\ }F,\ \textcolor{keyword}{class}...\ Args>}
\DoxyCodeLine{00026\ \ \ \ \ \textcolor{keyword}{auto}\ \mbox{\hyperlink{classutils_1_1ThreadPool_a06f6b246fd98c4970c0510d48141a29d}{enqueue}}(F\&\&\ f,\ Args\&\&...\ args)\ -\/>\ std::future<std::invoke\_result\_t<F,\ Args...>>\ \{}
\DoxyCodeLine{00027\ \ \ \ \ \ \ \ \ \textcolor{keyword}{using\ }return\_type\ =\ std::invoke\_result\_t<F,\ Args...>;}
\DoxyCodeLine{00028\ }
\DoxyCodeLine{00029\ \ \ \ \ \ \ \ \ \textcolor{keyword}{auto}\ task\_ptr\ =\ std::make\_shared<std::packaged\_task<return\_type()>>(}
\DoxyCodeLine{00030\ \ \ \ \ \ \ \ \ \ \ \ \ std::bind(std::forward<F>(f),\ std::forward<Args>(args)...)}
\DoxyCodeLine{00031\ \ \ \ \ \ \ \ \ );}
\DoxyCodeLine{00032\ }
\DoxyCodeLine{00033\ \ \ \ \ \ \ \ \ std::future<return\_type>\ result\ =\ task\_ptr-\/>get\_future();}
\DoxyCodeLine{00034\ }
\DoxyCodeLine{00035\ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00036\ \ \ \ \ \ \ \ \ \ \ \ \ std::unique\_lock\ lock(\mbox{\hyperlink{classutils_1_1ThreadPool_ad59af3c00e330ac777fb5eb349e0e291}{\_queue\_mutex}});}
\DoxyCodeLine{00037\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{classutils_1_1ThreadPool_a6a2a828a76092e3170cb6a93d679043f}{\_stop}})}
\DoxyCodeLine{00038\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ std::runtime\_error(\textcolor{stringliteral}{"{}Tried\ to\ enqueue\ on\ stopped\ ThreadPool"{}});}
\DoxyCodeLine{00039\ }
\DoxyCodeLine{00040\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{classutils_1_1ThreadPool_acbc332a452776263a9e6557131495aee}{\_tasks}}.emplace([task\_ptr]()\ \{\ (*task\_ptr)();\ \});}
\DoxyCodeLine{00041\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00042\ \ \ \ \ \ \ \ \ \mbox{\hyperlink{classutils_1_1ThreadPool_ad0284bde5203396b2e3cf95e07893748}{\_cv}}.notify\_one();}
\DoxyCodeLine{00043\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ result;}
\DoxyCodeLine{00044\ \ \ \ \ \}}
\DoxyCodeLine{00045\ \};}
\DoxyCodeLine{00046\ \}\ \textcolor{comment}{//\ End\ utils\ namespace}}
\end{DoxyCode}

View File

@ -1,2 +0,0 @@
\doxysection{src/utils/\+Thread\+Safe\+Queue.cc File Reference}
\hypertarget{ThreadSafeQueue_8cc}{}\label{ThreadSafeQueue_8cc}\index{src/utils/ThreadSafeQueue.cc@{src/utils/ThreadSafeQueue.cc}}

View File

@ -1,31 +0,0 @@
\doxysection{include/utils/\+Thread\+Safe\+Queue.hh File Reference}
\hypertarget{ThreadSafeQueue_8hh}{}\label{ThreadSafeQueue_8hh}\index{include/utils/ThreadSafeQueue.hh@{include/utils/ThreadSafeQueue.hh}}
{\ttfamily \#include $<$queue$>$}\newline
{\ttfamily \#include $<$thread$>$}\newline
{\ttfamily \#include $<$functional$>$}\newline
{\ttfamily \#include $<$mutex$>$}\newline
{\ttfamily \#include $<$condition\+\_\+variable$>$}\newline
Include dependency graph for Thread\+Safe\+Queue.\+hh\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{ThreadSafeQueue_8hh__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{ThreadSafeQueue_8hh__dep__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item
class \mbox{\hyperlink{classutils_1_1ThreadSafeQueue}{utils\+::\+Thread\+Safe\+Queue$<$ T $>$}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
namespace \mbox{\hyperlink{namespaceutils}{utils}}
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
e523521ad6faba19f0abd2aea07289a8

View File

@ -1 +0,0 @@
9070d690ac1c16410ccfa8f2d185154d

Binary file not shown.

View File

@ -1,41 +0,0 @@
\doxysection{Thread\+Safe\+Queue.\+hh}
\hypertarget{ThreadSafeQueue_8hh_source}{}\label{ThreadSafeQueue_8hh_source}\index{include/utils/ThreadSafeQueue.hh@{include/utils/ThreadSafeQueue.hh}}
\mbox{\hyperlink{ThreadSafeQueue_8hh}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{comment}{//\ C++\ Includes}}
\DoxyCodeLine{00002\ \textcolor{preprocessor}{\#include\ <queue>}}
\DoxyCodeLine{00003\ \textcolor{preprocessor}{\#include\ <thread>}}
\DoxyCodeLine{00004\ \textcolor{preprocessor}{\#include\ <functional>}}
\DoxyCodeLine{00005\ \textcolor{preprocessor}{\#include\ <mutex>}}
\DoxyCodeLine{00006\ \textcolor{preprocessor}{\#include\ <condition\_variable>}}
\DoxyCodeLine{00007\ }
\DoxyCodeLine{00008\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespaceutils}{utils}}\ \{}
\DoxyCodeLine{00009\ }
\DoxyCodeLine{00010\ \textcolor{keyword}{template}<\textcolor{keyword}{typename}\ T>}
\DoxyCodeLine{00011\ \textcolor{keyword}{class\ }\mbox{\hyperlink{classutils_1_1ThreadSafeQueue}{ThreadSafeQueue}}\ \{}
\DoxyCodeLine{00012\ \textcolor{keyword}{private}:}
\DoxyCodeLine{00013\ \ \ \ \ std::queue<T>\ \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a970596f4c9a6d1a806b06d46807e06ee}{\_queue}};}
\DoxyCodeLine{00014\ \ \ \ \ std::mutex\ \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a43fef8c13f23363c48bac7a6a49a565b}{\_mutex}};}
\DoxyCodeLine{00015\ \ \ \ \ std::condition\_variable\ \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_aa8f60ba625a00977e004c6641325671e}{\_cv}};}
\DoxyCodeLine{00016\ }
\DoxyCodeLine{00017\ \textcolor{keyword}{public}:}
\DoxyCodeLine{00018\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a00347d38cfa085d97c67796779da2f33}{push}}(T\ value)\ \{}
\DoxyCodeLine{00019\ }
\DoxyCodeLine{00020\ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00021\ \ \ \ \ \ \ \ \ \ \ \ \ std::lock\_guard<std::mutex>\ lock(\mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a43fef8c13f23363c48bac7a6a49a565b}{\_mutex}});}
\DoxyCodeLine{00022\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a970596f4c9a6d1a806b06d46807e06ee}{\_queue}}.push(std::move(value));}
\DoxyCodeLine{00023\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00024\ \ \ \ \ \ \ \ \ \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_aa8f60ba625a00977e004c6641325671e}{\_cv}}.notify\_one();}
\DoxyCodeLine{00025\ \ \ \ \ \}}
\DoxyCodeLine{00026\ }
\DoxyCodeLine{00027\ \ \ \ \ T\ \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a0fc878c7c3ed27b4c65bcf277b99a48b}{wait\_and\_pop}}()\ \{}
\DoxyCodeLine{00028\ \ \ \ \ \ \ \ \ std::unique\_lock<std::mutex>\ lock(\mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a43fef8c13f23363c48bac7a6a49a565b}{\_mutex}});}
\DoxyCodeLine{00029\ \ \ \ \ \ \ \ \ \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_aa8f60ba625a00977e004c6641325671e}{\_cv}}.wait(lock,\ [\&]\ \{\ \textcolor{keywordflow}{return}\ !\mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a970596f4c9a6d1a806b06d46807e06ee}{\_queue}}.empty();\ \});}
\DoxyCodeLine{00030\ \ \ \ \ \ \ \ \ T\ val\ =\ std::move(\mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a970596f4c9a6d1a806b06d46807e06ee}{\_queue}}.front());}
\DoxyCodeLine{00031\ \ \ \ \ \ \ \ \ \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a970596f4c9a6d1a806b06d46807e06ee}{\_queue}}.pop();}
\DoxyCodeLine{00032\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ val;}
\DoxyCodeLine{00033\ \ \ \ \ \}}
\DoxyCodeLine{00034\ \};}
\DoxyCodeLine{00035\ \}\ \textcolor{comment}{//\ End\ utils\ namespace}}
\end{DoxyCode}

View File

@ -1,10 +0,0 @@
\doxysection{Class List}
Here are the classes, structs, unions and interfaces with brief descriptions\+:\begin{DoxyCompactList}
\item\contentsline{section}{\mbox{\hyperlink{classAlgo}{Algo}} }{\pageref{classAlgo}}{}
\item\contentsline{section}{\mbox{\hyperlink{classController}{Controller}} }{\pageref{classController}}{}
\item\contentsline{section}{\mbox{\hyperlink{classPublisher}{Publisher}} }{\pageref{classPublisher}}{}
\item\contentsline{section}{\mbox{\hyperlink{classutils_1_1ThreadPool}{utils\+::\+Thread\+Pool}} }{\pageref{classutils_1_1ThreadPool}}{}
\item\contentsline{section}{\mbox{\hyperlink{classutils_1_1ThreadSafeQueue}{utils\+::\+Thread\+Safe\+Queue$<$ T $>$}} }{\pageref{classutils_1_1ThreadSafeQueue}}{}
\item\contentsline{section}{\mbox{\hyperlink{classTraderClient}{Trader\+Client}} }{\pageref{classTraderClient}}{}
\item\contentsline{section}{\mbox{\hyperlink{classTradingServiceImpl}{Trading\+Service\+Impl}} }{\pageref{classTradingServiceImpl}}{}
\end{DoxyCompactList}

View File

@ -1,246 +0,0 @@
\doxysection{Algo Class Reference}
\hypertarget{classAlgo}{}\label{classAlgo}\index{Algo@{Algo}}
{\ttfamily \#include $<$Algo.\+hh$>$}
Collaboration diagram for Algo\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=550pt]{classAlgo__coll__graph}
\end{center}
\end{figure}
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{classAlgo_aaf4f951979fc60411ed84c558f081867}{Algo}} ()
\item
void \mbox{\hyperlink{classAlgo_ac8b70d722d4b2c1ad5cad4a63c3b7c62}{initialize}} ()
\item
void \mbox{\hyperlink{classAlgo_ac223b246cd2f8851c4e0893ff41547fa}{generate\+\_\+orders}} ()
\item
void \mbox{\hyperlink{classAlgo_a8fcaaeaa5ad212a126490a19370c9b7e}{process}} ()
\item
void \mbox{\hyperlink{classAlgo_ac556564d232b2d90cec73718538ec804}{send}} (trading\+::\+Order \&)
\item
bool \mbox{\hyperlink{classAlgo_a6fef1866e14e8a08788cb1d54afcedaf}{initialized}} ()
\item
void \mbox{\hyperlink{classAlgo_a330f03f9df9e5d1e2b701bc3f5e94524}{stop}} ()
\end{DoxyCompactItemize}
\doxysubsubsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item
std\+::queue$<$ trading\+::\+Order $>$ \mbox{\hyperlink{classAlgo_a889e1362976e78c4904007ee5edfd3fe}{\+\_\+orders}}
\item
std\+::atomic$<$ bool $>$ \mbox{\hyperlink{classAlgo_a6cffb1f6d087978eba685bcb1d06b11d}{\+\_\+initialized}} \{false\}
\item
std\+::atomic$<$ bool $>$ \mbox{\hyperlink{classAlgo_a3ce5d714379ab5094b6d82b99421b4a3}{\+\_\+running}} \{false\}
\item
std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{classPublisher}{Publisher}} $>$ \mbox{\hyperlink{classAlgo_af5bcfa2719e948826f71983a18ec017d}{\+\_\+pub}}
\item
\mbox{\hyperlink{classutils_1_1ThreadSafeQueue}{utils\+::\+Thread\+Safe\+Queue}}$<$ trading\+::\+Order $>$ \mbox{\hyperlink{classAlgo_ac4f2da176cc2dc9ba757140a635fe9b8}{\+\_\+order\+\_\+queue}}
\item
\mbox{\hyperlink{classutils_1_1ThreadPool}{utils\+::\+Thread\+Pool}} \mbox{\hyperlink{classAlgo_adb85594bf1d2e7c9357d353b5e97787d}{\+\_\+thread\+\_\+pool}}
\item
std\+::mutex \mbox{\hyperlink{classAlgo_a4943cab875d5261b0abec360b68878e8}{\+\_\+send\+\_\+mutex}}
\item
std\+::jthread \mbox{\hyperlink{classAlgo_a743ddc60baad0afa7f036a529c340460}{\+\_\+reader\+\_\+thread}}
\item
std\+::vector$<$ std\+::jthread $>$ \mbox{\hyperlink{classAlgo_ac72ec5a778fce0be42ebf635f2c504d0}{\+\_\+worker\+\_\+threads}}
\item
std\+::vector$<$ std\+::future$<$ bool $>$ $>$ \mbox{\hyperlink{classAlgo_a671449864b2d1a1af9a57970eb104a0f}{\+\_\+futures}}
\end{DoxyCompactItemize}
\doxysubsection{Constructor \& Destructor Documentation}
\Hypertarget{classAlgo_aaf4f951979fc60411ed84c558f081867}\index{Algo@{Algo}!Algo@{Algo}}
\index{Algo@{Algo}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{Algo()}{Algo()}}
{\footnotesize\ttfamily \label{classAlgo_aaf4f951979fc60411ed84c558f081867}
Algo\+::\+Algo (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}
\doxysubsection{Member Function Documentation}
\Hypertarget{classAlgo_ac223b246cd2f8851c4e0893ff41547fa}\index{Algo@{Algo}!generate\_orders@{generate\_orders}}
\index{generate\_orders@{generate\_orders}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{generate\_orders()}{generate\_orders()}}
{\footnotesize\ttfamily \label{classAlgo_ac223b246cd2f8851c4e0893ff41547fa}
void Algo\+::generate\+\_\+orders (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}
References \mbox{\hyperlink{classAlgo_a889e1362976e78c4904007ee5edfd3fe}{\+\_\+orders}}, and \mbox{\hyperlink{namespacereaders_1_1json_a05735378dfc87c287094d7aa33ac8209}{readers\+::json\+::read\+\_\+orders\+\_\+from\+\_\+json()}}.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=346pt]{classAlgo_ac223b246cd2f8851c4e0893ff41547fa_cgraph}
\end{center}
\end{figure}
\Hypertarget{classAlgo_ac8b70d722d4b2c1ad5cad4a63c3b7c62}\index{Algo@{Algo}!initialize@{initialize}}
\index{initialize@{initialize}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{initialize()}{initialize()}}
{\footnotesize\ttfamily \label{classAlgo_ac8b70d722d4b2c1ad5cad4a63c3b7c62}
void Algo\+::initialize (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}
References \mbox{\hyperlink{classAlgo_a6cffb1f6d087978eba685bcb1d06b11d}{\+\_\+initialized}}, and \mbox{\hyperlink{classAlgo_af5bcfa2719e948826f71983a18ec017d}{\+\_\+pub}}.
\Hypertarget{classAlgo_a6fef1866e14e8a08788cb1d54afcedaf}\index{Algo@{Algo}!initialized@{initialized}}
\index{initialized@{initialized}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{initialized()}{initialized()}}
{\footnotesize\ttfamily \label{classAlgo_a6fef1866e14e8a08788cb1d54afcedaf}
bool Algo\+::initialized (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}
References \mbox{\hyperlink{classAlgo_a6cffb1f6d087978eba685bcb1d06b11d}{\+\_\+initialized}}.
\Hypertarget{classAlgo_a8fcaaeaa5ad212a126490a19370c9b7e}\index{Algo@{Algo}!process@{process}}
\index{process@{process}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{process()}{process()}}
{\footnotesize\ttfamily \label{classAlgo_a8fcaaeaa5ad212a126490a19370c9b7e}
void Algo\+::process (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}
References \mbox{\hyperlink{classAlgo_a671449864b2d1a1af9a57970eb104a0f}{\+\_\+futures}}, \mbox{\hyperlink{classAlgo_ac4f2da176cc2dc9ba757140a635fe9b8}{\+\_\+order\+\_\+queue}}, \mbox{\hyperlink{classAlgo_af5bcfa2719e948826f71983a18ec017d}{\+\_\+pub}}, \mbox{\hyperlink{classAlgo_a743ddc60baad0afa7f036a529c340460}{\+\_\+reader\+\_\+thread}}, \mbox{\hyperlink{classAlgo_a4943cab875d5261b0abec360b68878e8}{\+\_\+send\+\_\+mutex}}, \mbox{\hyperlink{classAlgo_adb85594bf1d2e7c9357d353b5e97787d}{\+\_\+thread\+\_\+pool}}, \mbox{\hyperlink{classAlgo_ac72ec5a778fce0be42ebf635f2c504d0}{\+\_\+worker\+\_\+threads}}, and \mbox{\hyperlink{namespacereaders_1_1json_a05735378dfc87c287094d7aa33ac8209}{readers\+::json\+::read\+\_\+orders\+\_\+from\+\_\+json()}}.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=304pt]{classAlgo_a8fcaaeaa5ad212a126490a19370c9b7e_cgraph}
\end{center}
\end{figure}
\Hypertarget{classAlgo_ac556564d232b2d90cec73718538ec804}\index{Algo@{Algo}!send@{send}}
\index{send@{send}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{send()}{send()}}
{\footnotesize\ttfamily \label{classAlgo_ac556564d232b2d90cec73718538ec804}
void Algo\+::send (\begin{DoxyParamCaption}\item[{trading\+::\+Order \&}]{order}{}\end{DoxyParamCaption})}
References \mbox{\hyperlink{classAlgo_af5bcfa2719e948826f71983a18ec017d}{\+\_\+pub}}.
\Hypertarget{classAlgo_a330f03f9df9e5d1e2b701bc3f5e94524}\index{Algo@{Algo}!stop@{stop}}
\index{stop@{stop}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{stop()}{stop()}}
{\footnotesize\ttfamily \label{classAlgo_a330f03f9df9e5d1e2b701bc3f5e94524}
void Algo\+::stop (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}
References \mbox{\hyperlink{classAlgo_a671449864b2d1a1af9a57970eb104a0f}{\+\_\+futures}}, \mbox{\hyperlink{classAlgo_a743ddc60baad0afa7f036a529c340460}{\+\_\+reader\+\_\+thread}}, and \mbox{\hyperlink{classAlgo_ac72ec5a778fce0be42ebf635f2c504d0}{\+\_\+worker\+\_\+threads}}.
\doxysubsection{Member Data Documentation}
\Hypertarget{classAlgo_a671449864b2d1a1af9a57970eb104a0f}\index{Algo@{Algo}!\_futures@{\_futures}}
\index{\_futures@{\_futures}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{\_futures}{\_futures}}
{\footnotesize\ttfamily \label{classAlgo_a671449864b2d1a1af9a57970eb104a0f}
std\+::vector$<$std\+::future$<$bool$>$ $>$ Algo\+::\+\_\+futures\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classAlgo_a8fcaaeaa5ad212a126490a19370c9b7e}{process()}}, and \mbox{\hyperlink{classAlgo_a330f03f9df9e5d1e2b701bc3f5e94524}{stop()}}.
\Hypertarget{classAlgo_a6cffb1f6d087978eba685bcb1d06b11d}\index{Algo@{Algo}!\_initialized@{\_initialized}}
\index{\_initialized@{\_initialized}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{\_initialized}{\_initialized}}
{\footnotesize\ttfamily \label{classAlgo_a6cffb1f6d087978eba685bcb1d06b11d}
std\+::atomic$<$bool$>$ Algo\+::\+\_\+initialized \{false\}\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classAlgo_ac8b70d722d4b2c1ad5cad4a63c3b7c62}{initialize()}}, and \mbox{\hyperlink{classAlgo_a6fef1866e14e8a08788cb1d54afcedaf}{initialized()}}.
\Hypertarget{classAlgo_ac4f2da176cc2dc9ba757140a635fe9b8}\index{Algo@{Algo}!\_order\_queue@{\_order\_queue}}
\index{\_order\_queue@{\_order\_queue}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{\_order\_queue}{\_order\_queue}}
{\footnotesize\ttfamily \label{classAlgo_ac4f2da176cc2dc9ba757140a635fe9b8}
\mbox{\hyperlink{classutils_1_1ThreadSafeQueue}{utils\+::\+Thread\+Safe\+Queue}}$<$trading\+::\+Order$>$ Algo\+::\+\_\+order\+\_\+queue\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classAlgo_a8fcaaeaa5ad212a126490a19370c9b7e}{process()}}.
\Hypertarget{classAlgo_a889e1362976e78c4904007ee5edfd3fe}\index{Algo@{Algo}!\_orders@{\_orders}}
\index{\_orders@{\_orders}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{\_orders}{\_orders}}
{\footnotesize\ttfamily \label{classAlgo_a889e1362976e78c4904007ee5edfd3fe}
std\+::queue$<$trading\+::\+Order$>$ Algo\+::\+\_\+orders\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classAlgo_ac223b246cd2f8851c4e0893ff41547fa}{generate\+\_\+orders()}}.
\Hypertarget{classAlgo_af5bcfa2719e948826f71983a18ec017d}\index{Algo@{Algo}!\_pub@{\_pub}}
\index{\_pub@{\_pub}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{\_pub}{\_pub}}
{\footnotesize\ttfamily \label{classAlgo_af5bcfa2719e948826f71983a18ec017d}
std\+::shared\+\_\+ptr$<$\mbox{\hyperlink{classPublisher}{Publisher}}$>$ Algo\+::\+\_\+pub\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classAlgo_ac8b70d722d4b2c1ad5cad4a63c3b7c62}{initialize()}}, \mbox{\hyperlink{classAlgo_a8fcaaeaa5ad212a126490a19370c9b7e}{process()}}, and \mbox{\hyperlink{classAlgo_ac556564d232b2d90cec73718538ec804}{send()}}.
\Hypertarget{classAlgo_a743ddc60baad0afa7f036a529c340460}\index{Algo@{Algo}!\_reader\_thread@{\_reader\_thread}}
\index{\_reader\_thread@{\_reader\_thread}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{\_reader\_thread}{\_reader\_thread}}
{\footnotesize\ttfamily \label{classAlgo_a743ddc60baad0afa7f036a529c340460}
std\+::jthread Algo\+::\+\_\+reader\+\_\+thread\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classAlgo_a8fcaaeaa5ad212a126490a19370c9b7e}{process()}}, and \mbox{\hyperlink{classAlgo_a330f03f9df9e5d1e2b701bc3f5e94524}{stop()}}.
\Hypertarget{classAlgo_a3ce5d714379ab5094b6d82b99421b4a3}\index{Algo@{Algo}!\_running@{\_running}}
\index{\_running@{\_running}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{\_running}{\_running}}
{\footnotesize\ttfamily \label{classAlgo_a3ce5d714379ab5094b6d82b99421b4a3}
std\+::atomic$<$bool$>$ Algo\+::\+\_\+running \{false\}\hspace{0.3cm}{\ttfamily [private]}}
\Hypertarget{classAlgo_a4943cab875d5261b0abec360b68878e8}\index{Algo@{Algo}!\_send\_mutex@{\_send\_mutex}}
\index{\_send\_mutex@{\_send\_mutex}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{\_send\_mutex}{\_send\_mutex}}
{\footnotesize\ttfamily \label{classAlgo_a4943cab875d5261b0abec360b68878e8}
std\+::mutex Algo\+::\+\_\+send\+\_\+mutex\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classAlgo_a8fcaaeaa5ad212a126490a19370c9b7e}{process()}}.
\Hypertarget{classAlgo_adb85594bf1d2e7c9357d353b5e97787d}\index{Algo@{Algo}!\_thread\_pool@{\_thread\_pool}}
\index{\_thread\_pool@{\_thread\_pool}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{\_thread\_pool}{\_thread\_pool}}
{\footnotesize\ttfamily \label{classAlgo_adb85594bf1d2e7c9357d353b5e97787d}
\mbox{\hyperlink{classutils_1_1ThreadPool}{utils\+::\+Thread\+Pool}} Algo\+::\+\_\+thread\+\_\+pool\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classAlgo_a8fcaaeaa5ad212a126490a19370c9b7e}{process()}}.
\Hypertarget{classAlgo_ac72ec5a778fce0be42ebf635f2c504d0}\index{Algo@{Algo}!\_worker\_threads@{\_worker\_threads}}
\index{\_worker\_threads@{\_worker\_threads}!Algo@{Algo}}
\doxysubsubsection{\texorpdfstring{\_worker\_threads}{\_worker\_threads}}
{\footnotesize\ttfamily \label{classAlgo_ac72ec5a778fce0be42ebf635f2c504d0}
std\+::vector$<$std\+::jthread$>$ Algo\+::\+\_\+worker\+\_\+threads\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classAlgo_a8fcaaeaa5ad212a126490a19370c9b7e}{process()}}, and \mbox{\hyperlink{classAlgo_a330f03f9df9e5d1e2b701bc3f5e94524}{stop()}}.
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
include/\mbox{\hyperlink{Algo_8hh}{Algo.\+hh}}\item
src/\mbox{\hyperlink{Algo_8cc}{Algo.\+cc}}\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
3e2df6efa8420a71219eeace5d6a30a3

Binary file not shown.

View File

@ -1 +0,0 @@
fa26d0f3e1e2934bc38af245463fd28d

View File

@ -1 +0,0 @@
4a386fcb3bc2ee89994392afc1f2c3cd

View File

@ -1,72 +0,0 @@
\doxysection{Controller Class Reference}
\hypertarget{classController}{}\label{classController}\index{Controller@{Controller}}
{\ttfamily \#include $<$Controller.\+hh$>$}
Collaboration diagram for Controller\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=156pt]{classController__coll__graph}
\end{center}
\end{figure}
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{classController_a9bf20649bd5268f6c25d206eddcd3fc5}{Controller}} (int, char \texorpdfstring{$\ast$}{*}\mbox{[}$\,$\mbox{]})
\item
void \mbox{\hyperlink{classController_ad535ad74055e645b7f44b7feeb4e82a8}{start}} ()
\end{DoxyCompactItemize}
\doxysubsubsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item
std\+::unique\+\_\+ptr$<$ \mbox{\hyperlink{classAlgo}{Algo}} $>$ \mbox{\hyperlink{classController_af469cf532ccb25e9256a9e71d35072ed}{\+\_\+algo}}
\end{DoxyCompactItemize}
\doxysubsection{Constructor \& Destructor Documentation}
\Hypertarget{classController_a9bf20649bd5268f6c25d206eddcd3fc5}\index{Controller@{Controller}!Controller@{Controller}}
\index{Controller@{Controller}!Controller@{Controller}}
\doxysubsubsection{\texorpdfstring{Controller()}{Controller()}}
{\footnotesize\ttfamily \label{classController_a9bf20649bd5268f6c25d206eddcd3fc5}
Controller\+::\+Controller (\begin{DoxyParamCaption}\item[{int}]{argc}{, }\item[{char \texorpdfstring{$\ast$}{*}}]{argv}{\mbox{[}$\,$\mbox{]}}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [explicit]}}
References \mbox{\hyperlink{classController_af469cf532ccb25e9256a9e71d35072ed}{\+\_\+algo}}.
\doxysubsection{Member Function Documentation}
\Hypertarget{classController_ad535ad74055e645b7f44b7feeb4e82a8}\index{Controller@{Controller}!start@{start}}
\index{start@{start}!Controller@{Controller}}
\doxysubsubsection{\texorpdfstring{start()}{start()}}
{\footnotesize\ttfamily \label{classController_ad535ad74055e645b7f44b7feeb4e82a8}
void Controller\+::start (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}
References \mbox{\hyperlink{classController_af469cf532ccb25e9256a9e71d35072ed}{\+\_\+algo}}.
\doxysubsection{Member Data Documentation}
\Hypertarget{classController_af469cf532ccb25e9256a9e71d35072ed}\index{Controller@{Controller}!\_algo@{\_algo}}
\index{\_algo@{\_algo}!Controller@{Controller}}
\doxysubsubsection{\texorpdfstring{\_algo}{\_algo}}
{\footnotesize\ttfamily \label{classController_af469cf532ccb25e9256a9e71d35072ed}
std\+::unique\+\_\+ptr$<$\mbox{\hyperlink{classAlgo}{Algo}}$>$ Controller\+::\+\_\+algo\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classController_a9bf20649bd5268f6c25d206eddcd3fc5}{Controller()}}, and \mbox{\hyperlink{classController_ad535ad74055e645b7f44b7feeb4e82a8}{start()}}.
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
include/\mbox{\hyperlink{Controller_8hh}{Controller.\+hh}}\item
src/\mbox{\hyperlink{Controller_8cc}{Controller.\+cc}}\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
8c944e19a7c34e404a4783004416612c

View File

@ -1,72 +0,0 @@
\doxysection{Publisher Class Reference}
\hypertarget{classPublisher}{}\label{classPublisher}\index{Publisher@{Publisher}}
{\ttfamily \#include $<$Publisher.\+hh$>$}
Collaboration diagram for Publisher\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=162pt]{classPublisher__coll__graph}
\end{center}
\end{figure}
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{classPublisher_ac829a82a3cb7aeeaece86419ffb0119d}{Publisher}} (std\+::shared\+\_\+ptr$<$ grpc\+::\+Channel $>$ channel)
\item
grpc\+::\+Status \mbox{\hyperlink{classPublisher_a2fe75fa23a11f43f31e0d2d2261c86e8}{send\+\_\+order}} (const trading\+::\+Order \&order)
\end{DoxyCompactItemize}
\doxysubsubsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item
std\+::unique\+\_\+ptr$<$ trading\+::\+Trading\+Service\+::\+Stub $>$ \mbox{\hyperlink{classPublisher_ac495a5e279a5531eddb94314bdbd04ac}{\+\_\+stub}}
\end{DoxyCompactItemize}
\doxysubsection{Constructor \& Destructor Documentation}
\Hypertarget{classPublisher_ac829a82a3cb7aeeaece86419ffb0119d}\index{Publisher@{Publisher}!Publisher@{Publisher}}
\index{Publisher@{Publisher}!Publisher@{Publisher}}
\doxysubsubsection{\texorpdfstring{Publisher()}{Publisher()}}
{\footnotesize\ttfamily \label{classPublisher_ac829a82a3cb7aeeaece86419ffb0119d}
Publisher\+::\+Publisher (\begin{DoxyParamCaption}\item[{std\+::shared\+\_\+ptr$<$ grpc\+::\+Channel $>$}]{channel}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [explicit]}}
References \mbox{\hyperlink{classPublisher_ac495a5e279a5531eddb94314bdbd04ac}{\+\_\+stub}}.
\doxysubsection{Member Function Documentation}
\Hypertarget{classPublisher_a2fe75fa23a11f43f31e0d2d2261c86e8}\index{Publisher@{Publisher}!send\_order@{send\_order}}
\index{send\_order@{send\_order}!Publisher@{Publisher}}
\doxysubsubsection{\texorpdfstring{send\_order()}{send\_order()}}
{\footnotesize\ttfamily \label{classPublisher_a2fe75fa23a11f43f31e0d2d2261c86e8}
grpc\+::\+Status Publisher\+::send\+\_\+order (\begin{DoxyParamCaption}\item[{const trading\+::\+Order \&}]{order}{}\end{DoxyParamCaption})}
References \mbox{\hyperlink{classPublisher_ac495a5e279a5531eddb94314bdbd04ac}{\+\_\+stub}}.
\doxysubsection{Member Data Documentation}
\Hypertarget{classPublisher_ac495a5e279a5531eddb94314bdbd04ac}\index{Publisher@{Publisher}!\_stub@{\_stub}}
\index{\_stub@{\_stub}!Publisher@{Publisher}}
\doxysubsubsection{\texorpdfstring{\_stub}{\_stub}}
{\footnotesize\ttfamily \label{classPublisher_ac495a5e279a5531eddb94314bdbd04ac}
std\+::unique\+\_\+ptr$<$trading\+::\+Trading\+Service\+::\+Stub$>$ Publisher\+::\+\_\+stub\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classPublisher_ac829a82a3cb7aeeaece86419ffb0119d}{Publisher()}}, and \mbox{\hyperlink{classPublisher_a2fe75fa23a11f43f31e0d2d2261c86e8}{send\+\_\+order()}}.
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
include/\mbox{\hyperlink{Publisher_8hh}{Publisher.\+hh}}\item
src/\mbox{\hyperlink{Publisher_8cc}{Publisher.\+cc}}\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
8c65c8bd47d6f5bdbc15b527e1c62fd2

View File

@ -1,52 +0,0 @@
\doxysection{Trader\+Client Class Reference}
\hypertarget{classTraderClient}{}\label{classTraderClient}\index{TraderClient@{TraderClient}}
Collaboration diagram for Trader\+Client\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=166pt]{classTraderClient__coll__graph}
\end{center}
\end{figure}
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{classTraderClient_a5e478d7e846a47fde9fec75e8158c7a2}{Trader\+Client}} (std\+::shared\+\_\+ptr$<$ Channel $>$ channel)
\end{DoxyCompactItemize}
\doxysubsubsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item
std\+::unique\+\_\+ptr$<$ Trading\+Service\+::\+Stub $>$ \mbox{\hyperlink{classTraderClient_afddee074efdcb23b84d1c78b7757fe56}{stub\+\_\+}}
\end{DoxyCompactItemize}
\doxysubsection{Constructor \& Destructor Documentation}
\Hypertarget{classTraderClient_a5e478d7e846a47fde9fec75e8158c7a2}\index{TraderClient@{TraderClient}!TraderClient@{TraderClient}}
\index{TraderClient@{TraderClient}!TraderClient@{TraderClient}}
\doxysubsubsection{\texorpdfstring{TraderClient()}{TraderClient()}}
{\footnotesize\ttfamily \label{classTraderClient_a5e478d7e846a47fde9fec75e8158c7a2}
Trader\+Client\+::\+Trader\+Client (\begin{DoxyParamCaption}\item[{std\+::shared\+\_\+ptr$<$ Channel $>$}]{channel}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
References \mbox{\hyperlink{classTraderClient_afddee074efdcb23b84d1c78b7757fe56}{stub\+\_\+}}.
\doxysubsection{Member Data Documentation}
\Hypertarget{classTraderClient_afddee074efdcb23b84d1c78b7757fe56}\index{TraderClient@{TraderClient}!stub\_@{stub\_}}
\index{stub\_@{stub\_}!TraderClient@{TraderClient}}
\doxysubsubsection{\texorpdfstring{stub\_}{stub\_}}
{\footnotesize\ttfamily \label{classTraderClient_afddee074efdcb23b84d1c78b7757fe56}
std\+::unique\+\_\+ptr$<$Trading\+Service\+::\+Stub$>$ Trader\+Client\+::stub\+\_\+\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classTraderClient_a5e478d7e846a47fde9fec75e8158c7a2}{Trader\+Client()}}.
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item
src/\mbox{\hyperlink{grpc__client_8cc}{grpc\+\_\+client.\+cc}}\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
509dcdeb02ad0910f409cf550cf4b770

View File

@ -1,197 +0,0 @@
%!PS-Adobe-2.0 EPSF-2.0
%%Title: ClassName
%%Creator: Doxygen
%%CreationDate: Time
%%For:
%Magnification: 1.00
%%Orientation: Portrait
%%BoundingBox: 0 0 500 254.777069
%%Pages: 0
%%BeginSetup
%%EndSetup
%%EndComments
% ----- variables -----
/boxwidth 0 def
/boxheight 40 def
/fontheight 24 def
/marginwidth 10 def
/distx 20 def
/disty 40 def
/boundaspect 1.962500 def % aspect ratio of the BoundingBox (width/height)
/boundx 500 def
/boundy boundx boundaspect div def
/xspacing 0 def
/yspacing 0 def
/rows 2 def
/cols 1 def
/scalefactor 0 def
/boxfont /Times-Roman findfont fontheight scalefont def
% ----- procedures -----
/dotted { [1 4] 0 setdash } def
/dashed { [5] 0 setdash } def
/solid { [] 0 setdash } def
/max % result = MAX(arg1,arg2)
{
/a exch def
/b exch def
a b gt {a} {b} ifelse
} def
/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2)
{
0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max
} def
/cw % boxwidth = MAX(boxwidth, stringwidth(arg1))
{
/str exch def
/boxwidth boxwidth str stringwidth pop max def
} def
/box % draws a box with text 'arg1' at grid pos (arg2,arg3)
{ gsave
2 setlinewidth
newpath
exch xspacing mul xoffset add
exch yspacing mul
moveto
boxwidth 0 rlineto
0 boxheight rlineto
boxwidth neg 0 rlineto
0 boxheight neg rlineto
closepath
dup stringwidth pop neg boxwidth add 2 div
boxheight fontheight 2 div sub 2 div
rmoveto show stroke
grestore
} def
/mark
{ newpath
exch xspacing mul xoffset add boxwidth add
exch yspacing mul
moveto
0 boxheight 4 div rlineto
boxheight neg 4 div boxheight neg 4 div rlineto
closepath
eofill
stroke
} def
/arrow
{ newpath
moveto
3 -8 rlineto
-6 0 rlineto
3 8 rlineto
closepath
eofill
stroke
} def
/out % draws an output connector for the block at (arg1,arg2)
{
newpath
exch xspacing mul xoffset add boxwidth 2 div add
exch yspacing mul boxheight add
/y exch def
/x exch def
x y moveto
0 disty 2 div rlineto
stroke
1 eq { x y disty 2 div add arrow } if
} def
/in % draws an input connector for the block at (arg1,arg2)
{
newpath
exch xspacing mul xoffset add boxwidth 2 div add
exch yspacing mul disty 2 div sub
/y exch def
/x exch def
x y moveto
0 disty 2 div rlineto
stroke
1 eq { x y disty 2 div add arrow } if
} def
/hedge
{
exch xspacing mul xoffset add boxwidth 2 div add
exch yspacing mul boxheight 2 div sub
/y exch def
/x exch def
newpath
x y moveto
boxwidth 2 div distx add 0 rlineto
stroke
1 eq
{ newpath x boxwidth 2 div distx add add y moveto
-8 3 rlineto
0 -6 rlineto
8 3 rlineto
closepath
eofill
stroke
} if
} def
/vedge
{
/ye exch def
/ys exch def
/xs exch def
newpath
xs xspacing mul xoffset add boxwidth 2 div add dup
ys yspacing mul boxheight 2 div sub
moveto
ye yspacing mul boxheight 2 div sub
lineto
stroke
} def
/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3'
{
/ys exch def
/xe exch def
/xs exch def
newpath
xs xspacing mul xoffset add boxwidth 2 div add
ys yspacing mul disty 2 div sub
moveto
xspacing xe xs sub mul 0
rlineto
stroke
} def
% ----- main ------
boxfont setfont
1 boundaspect scale
(TradingServiceImpl) cw
(TradingService::Service) cw
/boxwidth boxwidth marginwidth 2 mul add def
/xspacing boxwidth distx add def
/yspacing boxheight disty add def
/scalefactor
boxwidth cols mul distx cols 1 sub mul add
boxheight rows mul disty rows 1 sub mul add boundaspect mul
max def
boundx scalefactor div boundy scalefactor div scale
% ----- classes -----
(TradingServiceImpl) 0.000000 0.000000 box
(TradingService::Service) 0.000000 1.000000 box
% ----- relations -----
solid
0 0.000000 0.000000 out
solid
1 0.000000 1.000000 in

View File

@ -1,47 +0,0 @@
\doxysection{Trading\+Service\+Impl Class Reference}
\hypertarget{classTradingServiceImpl}{}\label{classTradingServiceImpl}\index{TradingServiceImpl@{TradingServiceImpl}}
Inheritance diagram for Trading\+Service\+Impl\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=201pt]{classTradingServiceImpl__inherit__graph}
\end{center}
\end{figure}
Collaboration diagram for Trading\+Service\+Impl\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=201pt]{classTradingServiceImpl__coll__graph}
\end{center}
\end{figure}
\doxysubsubsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item
Status \mbox{\hyperlink{classTradingServiceImpl_a8bc4ca1225b76d0fdb9d971c105e9e6c}{Send\+Order}} (Server\+Context \texorpdfstring{$\ast$}{*}ctx, const Order \texorpdfstring{$\ast$}{*}req, Order\+Ack \texorpdfstring{$\ast$}{*}res) override
\item
Status \mbox{\hyperlink{classTradingServiceImpl_ac047a3c1ac78bddd357d89229d29ff95}{Stream\+Market\+Data}} (Server\+Context \texorpdfstring{$\ast$}{*}ctx, const Market\+Request \texorpdfstring{$\ast$}{*}req, grpc\+::\+Server\+Writer$<$ Market\+Data $>$ \texorpdfstring{$\ast$}{*}writer) override
\end{DoxyCompactItemize}
\doxysubsection{Member Function Documentation}
\Hypertarget{classTradingServiceImpl_a8bc4ca1225b76d0fdb9d971c105e9e6c}\index{TradingServiceImpl@{TradingServiceImpl}!SendOrder@{SendOrder}}
\index{SendOrder@{SendOrder}!TradingServiceImpl@{TradingServiceImpl}}
\doxysubsubsection{\texorpdfstring{SendOrder()}{SendOrder()}}
{\footnotesize\ttfamily \label{classTradingServiceImpl_a8bc4ca1225b76d0fdb9d971c105e9e6c}
Status Trading\+Service\+Impl\+::\+Send\+Order (\begin{DoxyParamCaption}\item[{Server\+Context \texorpdfstring{$\ast$}{*}}]{ctx}{, }\item[{const Order \texorpdfstring{$\ast$}{*}}]{req}{, }\item[{Order\+Ack \texorpdfstring{$\ast$}{*}}]{res}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [override]}, {\ttfamily [private]}}
\Hypertarget{classTradingServiceImpl_ac047a3c1ac78bddd357d89229d29ff95}\index{TradingServiceImpl@{TradingServiceImpl}!StreamMarketData@{StreamMarketData}}
\index{StreamMarketData@{StreamMarketData}!TradingServiceImpl@{TradingServiceImpl}}
\doxysubsubsection{\texorpdfstring{StreamMarketData()}{StreamMarketData()}}
{\footnotesize\ttfamily \label{classTradingServiceImpl_ac047a3c1ac78bddd357d89229d29ff95}
Status Trading\+Service\+Impl\+::\+Stream\+Market\+Data (\begin{DoxyParamCaption}\item[{Server\+Context \texorpdfstring{$\ast$}{*}}]{ctx}{, }\item[{const Market\+Request \texorpdfstring{$\ast$}{*}}]{req}{, }\item[{grpc\+::\+Server\+Writer$<$ Market\+Data $>$ \texorpdfstring{$\ast$}{*}}]{writer}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [override]}, {\ttfamily [private]}}
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item
src/\mbox{\hyperlink{grpc__server_8cc}{grpc\+\_\+server.\+cc}}\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
c644db1db8f5590171e6738c3d36bc88

View File

@ -1 +0,0 @@
c644db1db8f5590171e6738c3d36bc88

View File

@ -1,133 +0,0 @@
\doxysection{utils\+::Thread\+Pool Class Reference}
\hypertarget{classutils_1_1ThreadPool}{}\label{classutils_1_1ThreadPool}\index{utils::ThreadPool@{utils::ThreadPool}}
{\ttfamily \#include $<$Thread\+Pool.\+hh$>$}
Collaboration diagram for utils\+::Thread\+Pool\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=172pt]{classutils_1_1ThreadPool__coll__graph}
\end{center}
\end{figure}
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{classutils_1_1ThreadPool_a02ccb8118692092d5d4132eab7c751e2}{Thread\+Pool}} (std\+::size\+\_\+t threads=std\+::thread\+::hardware\+\_\+concurrency())
\item
\mbox{\hyperlink{classutils_1_1ThreadPool_a6f0428a4b19a724f956d82e408013108}{\texorpdfstring{$\sim$}{\string~}\+Thread\+Pool}} ()
\item
{\footnotesize template$<$class F, class... Args$>$ }\\auto \mbox{\hyperlink{classutils_1_1ThreadPool_a06f6b246fd98c4970c0510d48141a29d}{enqueue}} (F \&\&f, Args \&\&... args) -\/$>$ std\+::future$<$ std\+::invoke\+\_\+result\+\_\+t$<$ F, Args... $>$ $>$
\end{DoxyCompactItemize}
\doxysubsubsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item
std\+::vector$<$ std\+::thread $>$ \mbox{\hyperlink{classutils_1_1ThreadPool_a3113eec4fac2948b403a0d94c42a3732}{\+\_\+workers}}
\item
std\+::queue$<$ std\+::function$<$ void()$>$ $>$ \mbox{\hyperlink{classutils_1_1ThreadPool_acbc332a452776263a9e6557131495aee}{\+\_\+tasks}}
\item
std\+::mutex \mbox{\hyperlink{classutils_1_1ThreadPool_ad59af3c00e330ac777fb5eb349e0e291}{\+\_\+queue\+\_\+mutex}}
\item
std\+::condition\+\_\+variable \mbox{\hyperlink{classutils_1_1ThreadPool_ad0284bde5203396b2e3cf95e07893748}{\+\_\+cv}}
\item
bool \mbox{\hyperlink{classutils_1_1ThreadPool_a6a2a828a76092e3170cb6a93d679043f}{\+\_\+stop}} \{false\}
\end{DoxyCompactItemize}
\doxysubsection{Constructor \& Destructor Documentation}
\Hypertarget{classutils_1_1ThreadPool_a02ccb8118692092d5d4132eab7c751e2}\index{utils::ThreadPool@{utils::ThreadPool}!ThreadPool@{ThreadPool}}
\index{ThreadPool@{ThreadPool}!utils::ThreadPool@{utils::ThreadPool}}
\doxysubsubsection{\texorpdfstring{ThreadPool()}{ThreadPool()}}
{\footnotesize\ttfamily \label{classutils_1_1ThreadPool_a02ccb8118692092d5d4132eab7c751e2}
utils\+::\+Thread\+Pool\+::\+Thread\+Pool (\begin{DoxyParamCaption}\item[{std\+::size\+\_\+t}]{threads}{ = {\ttfamily std\+:\+:thread\+:\+:hardware\+\_\+concurrency()}}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [explicit]}}
References \mbox{\hyperlink{classutils_1_1ThreadPool_ad0284bde5203396b2e3cf95e07893748}{\+\_\+cv}}, \mbox{\hyperlink{classutils_1_1ThreadPool_ad59af3c00e330ac777fb5eb349e0e291}{\+\_\+queue\+\_\+mutex}}, \mbox{\hyperlink{classutils_1_1ThreadPool_a6a2a828a76092e3170cb6a93d679043f}{\+\_\+stop}}, \mbox{\hyperlink{classutils_1_1ThreadPool_acbc332a452776263a9e6557131495aee}{\+\_\+tasks}}, and \mbox{\hyperlink{classutils_1_1ThreadPool_a3113eec4fac2948b403a0d94c42a3732}{\+\_\+workers}}.
\Hypertarget{classutils_1_1ThreadPool_a6f0428a4b19a724f956d82e408013108}\index{utils::ThreadPool@{utils::ThreadPool}!````~ThreadPool@{\texorpdfstring{$\sim$}{\string~}ThreadPool}}
\index{````~ThreadPool@{\texorpdfstring{$\sim$}{\string~}ThreadPool}!utils::ThreadPool@{utils::ThreadPool}}
\doxysubsubsection{\texorpdfstring{\texorpdfstring{$\sim$}{\string~}ThreadPool()}{\string~ThreadPool()}}
{\footnotesize\ttfamily \label{classutils_1_1ThreadPool_a6f0428a4b19a724f956d82e408013108}
utils\+::\+Thread\+Pool\+::\texorpdfstring{$\sim$}{\string~}\+Thread\+Pool (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}
References \mbox{\hyperlink{classutils_1_1ThreadPool_ad0284bde5203396b2e3cf95e07893748}{\+\_\+cv}}, \mbox{\hyperlink{classutils_1_1ThreadPool_ad59af3c00e330ac777fb5eb349e0e291}{\+\_\+queue\+\_\+mutex}}, \mbox{\hyperlink{classutils_1_1ThreadPool_a6a2a828a76092e3170cb6a93d679043f}{\+\_\+stop}}, and \mbox{\hyperlink{classutils_1_1ThreadPool_a3113eec4fac2948b403a0d94c42a3732}{\+\_\+workers}}.
\doxysubsection{Member Function Documentation}
\Hypertarget{classutils_1_1ThreadPool_a06f6b246fd98c4970c0510d48141a29d}\index{utils::ThreadPool@{utils::ThreadPool}!enqueue@{enqueue}}
\index{enqueue@{enqueue}!utils::ThreadPool@{utils::ThreadPool}}
\doxysubsubsection{\texorpdfstring{enqueue()}{enqueue()}}
{\footnotesize\ttfamily \label{classutils_1_1ThreadPool_a06f6b246fd98c4970c0510d48141a29d}
template$<$class F, class... Args$>$ \\
auto utils\+::\+Thread\+Pool\+::enqueue (\begin{DoxyParamCaption}\item[{F \&\&}]{f}{, }\item[{Args \&\&...}]{args}{}\end{DoxyParamCaption}) -\/$>$ std\+::future$<$std\+::invoke\+\_\+result\+\_\+t$<$F, Args...$>$$>$ \hspace{0.3cm}{\ttfamily [inline]}}
References \mbox{\hyperlink{classutils_1_1ThreadPool_ad0284bde5203396b2e3cf95e07893748}{\+\_\+cv}}, \mbox{\hyperlink{classutils_1_1ThreadPool_ad59af3c00e330ac777fb5eb349e0e291}{\+\_\+queue\+\_\+mutex}}, \mbox{\hyperlink{classutils_1_1ThreadPool_a6a2a828a76092e3170cb6a93d679043f}{\+\_\+stop}}, and \mbox{\hyperlink{classutils_1_1ThreadPool_acbc332a452776263a9e6557131495aee}{\+\_\+tasks}}.
\doxysubsection{Member Data Documentation}
\Hypertarget{classutils_1_1ThreadPool_ad0284bde5203396b2e3cf95e07893748}\index{utils::ThreadPool@{utils::ThreadPool}!\_cv@{\_cv}}
\index{\_cv@{\_cv}!utils::ThreadPool@{utils::ThreadPool}}
\doxysubsubsection{\texorpdfstring{\_cv}{\_cv}}
{\footnotesize\ttfamily \label{classutils_1_1ThreadPool_ad0284bde5203396b2e3cf95e07893748}
std\+::condition\+\_\+variable utils\+::\+Thread\+Pool\+::\+\_\+cv\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classutils_1_1ThreadPool_a06f6b246fd98c4970c0510d48141a29d}{enqueue()}}, \mbox{\hyperlink{classutils_1_1ThreadPool_a02ccb8118692092d5d4132eab7c751e2}{Thread\+Pool()}}, and \mbox{\hyperlink{classutils_1_1ThreadPool_a6f0428a4b19a724f956d82e408013108}{\texorpdfstring{$\sim$}{\string~}\+Thread\+Pool()}}.
\Hypertarget{classutils_1_1ThreadPool_ad59af3c00e330ac777fb5eb349e0e291}\index{utils::ThreadPool@{utils::ThreadPool}!\_queue\_mutex@{\_queue\_mutex}}
\index{\_queue\_mutex@{\_queue\_mutex}!utils::ThreadPool@{utils::ThreadPool}}
\doxysubsubsection{\texorpdfstring{\_queue\_mutex}{\_queue\_mutex}}
{\footnotesize\ttfamily \label{classutils_1_1ThreadPool_ad59af3c00e330ac777fb5eb349e0e291}
std\+::mutex utils\+::\+Thread\+Pool\+::\+\_\+queue\+\_\+mutex\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classutils_1_1ThreadPool_a06f6b246fd98c4970c0510d48141a29d}{enqueue()}}, \mbox{\hyperlink{classutils_1_1ThreadPool_a02ccb8118692092d5d4132eab7c751e2}{Thread\+Pool()}}, and \mbox{\hyperlink{classutils_1_1ThreadPool_a6f0428a4b19a724f956d82e408013108}{\texorpdfstring{$\sim$}{\string~}\+Thread\+Pool()}}.
\Hypertarget{classutils_1_1ThreadPool_a6a2a828a76092e3170cb6a93d679043f}\index{utils::ThreadPool@{utils::ThreadPool}!\_stop@{\_stop}}
\index{\_stop@{\_stop}!utils::ThreadPool@{utils::ThreadPool}}
\doxysubsubsection{\texorpdfstring{\_stop}{\_stop}}
{\footnotesize\ttfamily \label{classutils_1_1ThreadPool_a6a2a828a76092e3170cb6a93d679043f}
bool utils\+::\+Thread\+Pool\+::\+\_\+stop \{false\}\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classutils_1_1ThreadPool_a06f6b246fd98c4970c0510d48141a29d}{enqueue()}}, \mbox{\hyperlink{classutils_1_1ThreadPool_a02ccb8118692092d5d4132eab7c751e2}{Thread\+Pool()}}, and \mbox{\hyperlink{classutils_1_1ThreadPool_a6f0428a4b19a724f956d82e408013108}{\texorpdfstring{$\sim$}{\string~}\+Thread\+Pool()}}.
\Hypertarget{classutils_1_1ThreadPool_acbc332a452776263a9e6557131495aee}\index{utils::ThreadPool@{utils::ThreadPool}!\_tasks@{\_tasks}}
\index{\_tasks@{\_tasks}!utils::ThreadPool@{utils::ThreadPool}}
\doxysubsubsection{\texorpdfstring{\_tasks}{\_tasks}}
{\footnotesize\ttfamily \label{classutils_1_1ThreadPool_acbc332a452776263a9e6557131495aee}
std\+::queue$<$std\+::function$<$void()$>$ $>$ utils\+::\+Thread\+Pool\+::\+\_\+tasks\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classutils_1_1ThreadPool_a06f6b246fd98c4970c0510d48141a29d}{enqueue()}}, and \mbox{\hyperlink{classutils_1_1ThreadPool_a02ccb8118692092d5d4132eab7c751e2}{Thread\+Pool()}}.
\Hypertarget{classutils_1_1ThreadPool_a3113eec4fac2948b403a0d94c42a3732}\index{utils::ThreadPool@{utils::ThreadPool}!\_workers@{\_workers}}
\index{\_workers@{\_workers}!utils::ThreadPool@{utils::ThreadPool}}
\doxysubsubsection{\texorpdfstring{\_workers}{\_workers}}
{\footnotesize\ttfamily \label{classutils_1_1ThreadPool_a3113eec4fac2948b403a0d94c42a3732}
std\+::vector$<$std\+::thread$>$ utils\+::\+Thread\+Pool\+::\+\_\+workers\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classutils_1_1ThreadPool_a02ccb8118692092d5d4132eab7c751e2}{Thread\+Pool()}}, and \mbox{\hyperlink{classutils_1_1ThreadPool_a6f0428a4b19a724f956d82e408013108}{\texorpdfstring{$\sim$}{\string~}\+Thread\+Pool()}}.
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
include/utils/\mbox{\hyperlink{ThreadPool_8hh}{Thread\+Pool.\+hh}}\item
src/utils/\mbox{\hyperlink{ThreadPool_8cc}{Thread\+Pool.\+cc}}\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
a162b6fbc5641bbe6452d013cac3e320

View File

@ -1,97 +0,0 @@
\doxysection{utils\+::Thread\+Safe\+Queue\texorpdfstring{$<$}{<} T \texorpdfstring{$>$}{>} Class Template Reference}
\hypertarget{classutils_1_1ThreadSafeQueue}{}\label{classutils_1_1ThreadSafeQueue}\index{utils::ThreadSafeQueue$<$ T $>$@{utils::ThreadSafeQueue$<$ T $>$}}
{\ttfamily \#include $<$Thread\+Safe\+Queue.\+hh$>$}
Collaboration diagram for utils\+::Thread\+Safe\+Queue\texorpdfstring{$<$}{<} T \texorpdfstring{$>$}{>}\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=231pt]{classutils_1_1ThreadSafeQueue__coll__graph}
\end{center}
\end{figure}
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
void \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a00347d38cfa085d97c67796779da2f33}{push}} (T value)
\item
T \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a0fc878c7c3ed27b4c65bcf277b99a48b}{wait\+\_\+and\+\_\+pop}} ()
\end{DoxyCompactItemize}
\doxysubsubsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item
std\+::queue$<$ T $>$ \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a970596f4c9a6d1a806b06d46807e06ee}{\+\_\+queue}}
\item
std\+::mutex \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a43fef8c13f23363c48bac7a6a49a565b}{\+\_\+mutex}}
\item
std\+::condition\+\_\+variable \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_aa8f60ba625a00977e004c6641325671e}{\+\_\+cv}}
\end{DoxyCompactItemize}
\doxysubsection{Member Function Documentation}
\Hypertarget{classutils_1_1ThreadSafeQueue_a00347d38cfa085d97c67796779da2f33}\index{utils::ThreadSafeQueue$<$ T $>$@{utils::ThreadSafeQueue$<$ T $>$}!push@{push}}
\index{push@{push}!utils::ThreadSafeQueue$<$ T $>$@{utils::ThreadSafeQueue$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{push()}{push()}}
{\footnotesize\ttfamily \label{classutils_1_1ThreadSafeQueue_a00347d38cfa085d97c67796779da2f33}
template$<$typename T$>$ \\
void \mbox{\hyperlink{classutils_1_1ThreadSafeQueue}{utils\+::\+Thread\+Safe\+Queue}}$<$ T $>$\+::push (\begin{DoxyParamCaption}\item[{T}]{value}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
References \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_aa8f60ba625a00977e004c6641325671e}{\+\_\+cv}}, \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a43fef8c13f23363c48bac7a6a49a565b}{\+\_\+mutex}}, and \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a970596f4c9a6d1a806b06d46807e06ee}{\+\_\+queue}}.
\Hypertarget{classutils_1_1ThreadSafeQueue_a0fc878c7c3ed27b4c65bcf277b99a48b}\index{utils::ThreadSafeQueue$<$ T $>$@{utils::ThreadSafeQueue$<$ T $>$}!wait\_and\_pop@{wait\_and\_pop}}
\index{wait\_and\_pop@{wait\_and\_pop}!utils::ThreadSafeQueue$<$ T $>$@{utils::ThreadSafeQueue$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{wait\_and\_pop()}{wait\_and\_pop()}}
{\footnotesize\ttfamily \label{classutils_1_1ThreadSafeQueue_a0fc878c7c3ed27b4c65bcf277b99a48b}
template$<$typename T$>$ \\
T \mbox{\hyperlink{classutils_1_1ThreadSafeQueue}{utils\+::\+Thread\+Safe\+Queue}}$<$ T $>$\+::wait\+\_\+and\+\_\+pop (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
References \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_aa8f60ba625a00977e004c6641325671e}{\+\_\+cv}}, \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a43fef8c13f23363c48bac7a6a49a565b}{\+\_\+mutex}}, and \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a970596f4c9a6d1a806b06d46807e06ee}{\+\_\+queue}}.
\doxysubsection{Member Data Documentation}
\Hypertarget{classutils_1_1ThreadSafeQueue_aa8f60ba625a00977e004c6641325671e}\index{utils::ThreadSafeQueue$<$ T $>$@{utils::ThreadSafeQueue$<$ T $>$}!\_cv@{\_cv}}
\index{\_cv@{\_cv}!utils::ThreadSafeQueue$<$ T $>$@{utils::ThreadSafeQueue$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{\_cv}{\_cv}}
{\footnotesize\ttfamily \label{classutils_1_1ThreadSafeQueue_aa8f60ba625a00977e004c6641325671e}
template$<$typename T$>$ \\
std\+::condition\+\_\+variable \mbox{\hyperlink{classutils_1_1ThreadSafeQueue}{utils\+::\+Thread\+Safe\+Queue}}$<$ T $>$\+::\+\_\+cv\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a00347d38cfa085d97c67796779da2f33}{push()}}, and \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a0fc878c7c3ed27b4c65bcf277b99a48b}{wait\+\_\+and\+\_\+pop()}}.
\Hypertarget{classutils_1_1ThreadSafeQueue_a43fef8c13f23363c48bac7a6a49a565b}\index{utils::ThreadSafeQueue$<$ T $>$@{utils::ThreadSafeQueue$<$ T $>$}!\_mutex@{\_mutex}}
\index{\_mutex@{\_mutex}!utils::ThreadSafeQueue$<$ T $>$@{utils::ThreadSafeQueue$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{\_mutex}{\_mutex}}
{\footnotesize\ttfamily \label{classutils_1_1ThreadSafeQueue_a43fef8c13f23363c48bac7a6a49a565b}
template$<$typename T$>$ \\
std\+::mutex \mbox{\hyperlink{classutils_1_1ThreadSafeQueue}{utils\+::\+Thread\+Safe\+Queue}}$<$ T $>$\+::\+\_\+mutex\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a00347d38cfa085d97c67796779da2f33}{push()}}, and \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a0fc878c7c3ed27b4c65bcf277b99a48b}{wait\+\_\+and\+\_\+pop()}}.
\Hypertarget{classutils_1_1ThreadSafeQueue_a970596f4c9a6d1a806b06d46807e06ee}\index{utils::ThreadSafeQueue$<$ T $>$@{utils::ThreadSafeQueue$<$ T $>$}!\_queue@{\_queue}}
\index{\_queue@{\_queue}!utils::ThreadSafeQueue$<$ T $>$@{utils::ThreadSafeQueue$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{\_queue}{\_queue}}
{\footnotesize\ttfamily \label{classutils_1_1ThreadSafeQueue_a970596f4c9a6d1a806b06d46807e06ee}
template$<$typename T$>$ \\
std\+::queue$<$T$>$ \mbox{\hyperlink{classutils_1_1ThreadSafeQueue}{utils\+::\+Thread\+Safe\+Queue}}$<$ T $>$\+::\+\_\+queue\hspace{0.3cm}{\ttfamily [private]}}
Referenced by \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a00347d38cfa085d97c67796779da2f33}{push()}}, and \mbox{\hyperlink{classutils_1_1ThreadSafeQueue_a0fc878c7c3ed27b4c65bcf277b99a48b}{wait\+\_\+and\+\_\+pop()}}.
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item
include/utils/\mbox{\hyperlink{ThreadSafeQueue_8hh}{Thread\+Safe\+Queue.\+hh}}\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
2bab52784053277ebef1b99ca75ae9fb

View File

@ -1,16 +0,0 @@
\doxysection{src/utils Directory Reference}
\hypertarget{dir_313caf1132e152dd9b58bea13a4052ca}{}\label{dir_313caf1132e152dd9b58bea13a4052ca}\index{src/utils Directory Reference@{src/utils Directory Reference}}
Directory dependency graph for utils\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=150pt]{dir_313caf1132e152dd9b58bea13a4052ca_dep}
\end{center}
\end{figure}
\doxysubsubsection*{Files}
\begin{DoxyCompactItemize}
\item
file \mbox{\hyperlink{ThreadPool_8cc}{Thread\+Pool.\+cc}}
\item
file \mbox{\hyperlink{ThreadSafeQueue_8cc}{Thread\+Safe\+Queue.\+cc}}
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
c4e47c700a10ab85fcab83003b05fd68

View File

@ -1,14 +0,0 @@
\doxysection{include/readers Directory Reference}
\hypertarget{dir_61c57797386c8fb992d55e625d187773}{}\label{dir_61c57797386c8fb992d55e625d187773}\index{include/readers Directory Reference@{include/readers Directory Reference}}
Directory dependency graph for readers\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=164pt]{dir_61c57797386c8fb992d55e625d187773_dep}
\end{center}
\end{figure}
\doxysubsubsection*{Files}
\begin{DoxyCompactItemize}
\item
file \mbox{\hyperlink{JSONReader_8hh}{JSONReader.\+hh}}
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
0d7384fbb22a212459d4ace02a48d8d9

View File

@ -1,29 +0,0 @@
\doxysection{src Directory Reference}
\hypertarget{dir_68267d1309a1af8e8297ef4c3efbcdba}{}\label{dir_68267d1309a1af8e8297ef4c3efbcdba}\index{src Directory Reference@{src Directory Reference}}
Directory dependency graph for src\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=269pt]{dir_68267d1309a1af8e8297ef4c3efbcdba_dep}
\end{center}
\end{figure}
\doxysubsubsection*{Directories}
\begin{DoxyCompactItemize}
\item
directory \mbox{\hyperlink{dir_e509a0fe39cd155e5ddab576f8fee000}{readers}}
\item
directory \mbox{\hyperlink{dir_313caf1132e152dd9b58bea13a4052ca}{utils}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Files}
\begin{DoxyCompactItemize}
\item
file \mbox{\hyperlink{Algo_8cc}{Algo.\+cc}}
\item
file \mbox{\hyperlink{Controller_8cc}{Controller.\+cc}}
\item
file \mbox{\hyperlink{grpc__client_8cc}{grpc\+\_\+client.\+cc}}
\item
file \mbox{\hyperlink{grpc__server_8cc}{grpc\+\_\+server.\+cc}}
\item
file \mbox{\hyperlink{Publisher_8cc}{Publisher.\+cc}}
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
9bdd3881757c588224bf22fd76749d5b

View File

@ -1,16 +0,0 @@
\doxysection{include/utils Directory Reference}
\hypertarget{dir_821002d4f10779a80d4fb17bc32f21f1}{}\label{dir_821002d4f10779a80d4fb17bc32f21f1}\index{include/utils Directory Reference@{include/utils Directory Reference}}
Directory dependency graph for utils\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=150pt]{dir_821002d4f10779a80d4fb17bc32f21f1_dep}
\end{center}
\end{figure}
\doxysubsubsection*{Files}
\begin{DoxyCompactItemize}
\item
file \mbox{\hyperlink{ThreadPool_8hh}{Thread\+Pool.\+hh}}
\item
file \mbox{\hyperlink{ThreadSafeQueue_8hh}{Thread\+Safe\+Queue.\+hh}}
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
e1a113e2154198092a904007fc766036

View File

@ -1,25 +0,0 @@
\doxysection{include Directory Reference}
\hypertarget{dir_d44c64559bbebec7f509842c48db8b23}{}\label{dir_d44c64559bbebec7f509842c48db8b23}\index{include Directory Reference@{include Directory Reference}}
Directory dependency graph for include\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=234pt]{dir_d44c64559bbebec7f509842c48db8b23_dep}
\end{center}
\end{figure}
\doxysubsubsection*{Directories}
\begin{DoxyCompactItemize}
\item
directory \mbox{\hyperlink{dir_61c57797386c8fb992d55e625d187773}{readers}}
\item
directory \mbox{\hyperlink{dir_821002d4f10779a80d4fb17bc32f21f1}{utils}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Files}
\begin{DoxyCompactItemize}
\item
file \mbox{\hyperlink{Algo_8hh}{Algo.\+hh}}
\item
file \mbox{\hyperlink{Controller_8hh}{Controller.\+hh}}
\item
file \mbox{\hyperlink{Publisher_8hh}{Publisher.\+hh}}
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
bc5c1166c3c7c6216c2f4f2f9ce1b0a3

View File

@ -1,14 +0,0 @@
\doxysection{src/readers Directory Reference}
\hypertarget{dir_e509a0fe39cd155e5ddab576f8fee000}{}\label{dir_e509a0fe39cd155e5ddab576f8fee000}\index{src/readers Directory Reference@{src/readers Directory Reference}}
Directory dependency graph for readers\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=164pt]{dir_e509a0fe39cd155e5ddab576f8fee000_dep}
\end{center}
\end{figure}
\doxysubsubsection*{Files}
\begin{DoxyCompactItemize}
\item
file \mbox{\hyperlink{JSONReader_8cc}{JSONReader.\+cc}}
\end{DoxyCompactItemize}

View File

@ -1 +0,0 @@
7f09f2f4417aa3cd41c6a881d5103ad6

Some files were not shown because too many files have changed in this diff Show More