\hypertarget{a01010}{\section{Preload\+Aggregator Class Reference}
\label{a01010}\index{Preload\+Aggregator@{Preload\+Aggregator}}
}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{a01010_a8009c5e6e8156b5633e8a823c11f35f9}{expect\+Loaders} (int count)
\item 
void \hyperlink{a01010_abc8befa32e352ad929498c335a3a1991}{loader\+Ready} (Q\+Plugin\+Loader $\ast$loader)
\item 
Q\+Plugin\+Loader $\ast$ \hyperlink{a01010_a54d14f0c1ff28faa77b2bdd96ea5df19}{wait\+For\+Next\+Loader} ()
\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01010_a0c9feb40f0fd87a1b9ec84c7dafbdb7c}{std\+::deque$<$ Q\+Plugin\+Loader $\ast$ $>$ {\bfseries loaders\+\_\+}}\label{a01010_a0c9feb40f0fd87a1b9ec84c7dafbdb7c}

\item 
\hypertarget{a01010_acada5b8ac27a91ebac451fb8311c7583}{Q\+Wait\+Condition {\bfseries plugin\+Available\+\_\+}}\label{a01010_acada5b8ac27a91ebac451fb8311c7583}

\item 
\hypertarget{a01010_a39cd83d5612d156019bffd1e797fbbc7}{Q\+Mutex {\bfseries loaders\+Mutex\+\_\+}}\label{a01010_a39cd83d5612d156019bffd1e797fbbc7}

\item 
\hypertarget{a01010_a270618411ad0ce935cc7dff9c9b59860}{int {\bfseries expected\+Loaders\+\_\+}}\label{a01010_a270618411ad0ce935cc7dff9c9b59860}

\end{DoxyCompactItemize}


\subsection{Detailed Description}


Definition at line 99 of file Plugin\+Loader.\+cc.



\subsection{Member Function Documentation}
\hypertarget{a01010_a8009c5e6e8156b5633e8a823c11f35f9}{\index{Preload\+Aggregator@{Preload\+Aggregator}!expect\+Loaders@{expect\+Loaders}}
\index{expect\+Loaders@{expect\+Loaders}!Preload\+Aggregator@{Preload\+Aggregator}}
\subsubsection[{expect\+Loaders}]{\setlength{\rightskip}{0pt plus 5cm}void Preload\+Aggregator\+::expect\+Loaders (
\begin{DoxyParamCaption}
\item[{int}]{count}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a01010_a8009c5e6e8156b5633e8a823c11f35f9}
Intended to be called by a \hyperlink{a01011}{Preload\+Thread} before count subsequent calls to \hyperlink{a01010_abc8befa32e352ad929498c335a3a1991}{loader\+Ready()}. May be called multiple times in which case the counts accumulate.


\begin{DoxyParams}{Parameters}
{\em count} & The number of times the calling \hyperlink{a01011}{Preload\+Thread} intents to call \hyperlink{a01010_abc8befa32e352ad929498c335a3a1991}{loader\+Ready()}. \\
\hline
\end{DoxyParams}


Definition at line 112 of file Plugin\+Loader.\+cc.

\hypertarget{a01010_abc8befa32e352ad929498c335a3a1991}{\index{Preload\+Aggregator@{Preload\+Aggregator}!loader\+Ready@{loader\+Ready}}
\index{loader\+Ready@{loader\+Ready}!Preload\+Aggregator@{Preload\+Aggregator}}
\subsubsection[{loader\+Ready}]{\setlength{\rightskip}{0pt plus 5cm}void Preload\+Aggregator\+::loader\+Ready (
\begin{DoxyParamCaption}
\item[{Q\+Plugin\+Loader $\ast$}]{loader}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a01010_abc8befa32e352ad929498c335a3a1991}
Intended to be called by a \hyperlink{a01011}{Preload\+Thread}.

Transfers ownership of the supplied loader to the \hyperlink{a01010}{Preload\+Aggregator}. 

Definition at line 123 of file Plugin\+Loader.\+cc.

\hypertarget{a01010_a54d14f0c1ff28faa77b2bdd96ea5df19}{\index{Preload\+Aggregator@{Preload\+Aggregator}!wait\+For\+Next\+Loader@{wait\+For\+Next\+Loader}}
\index{wait\+For\+Next\+Loader@{wait\+For\+Next\+Loader}!Preload\+Aggregator@{Preload\+Aggregator}}
\subsubsection[{wait\+For\+Next\+Loader}]{\setlength{\rightskip}{0pt plus 5cm}Q\+Plugin\+Loader$\ast$ Preload\+Aggregator\+::wait\+For\+Next\+Loader (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a01010_a54d14f0c1ff28faa77b2bdd96ea5df19}
If there are still loaders expected, block until the next loader becomes available and return it.

Ownership of the returned object is transferred to the caller. (I.\+e. the caller has to delete it.)

\begin{DoxyReturn}{Returns}
Null if there are no more loaders expected. The next loader, otherwise. 
\end{DoxyReturn}


Definition at line 141 of file Plugin\+Loader.\+cc.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
Open\+Flipper/\+Core/Plugin\+Loader.\+cc\end{DoxyCompactItemize}
