\hypertarget{classkdb_1_1tools_1_1MockPluginDatabase}{\section{kdb\+:\+:tools\+:\+:Mock\+Plugin\+Database Class Reference}
\label{classkdb_1_1tools_1_1MockPluginDatabase}\index{kdb\+::tools\+::\+Mock\+Plugin\+Database@{kdb\+::tools\+::\+Mock\+Plugin\+Database}}
}


A plugin database that works with added fake data.  




{\ttfamily \#include $<$plugindatabase.\+hpp$>$}



Inheritance diagram for kdb\+:\+:tools\+:\+:Mock\+Plugin\+Database\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=244pt]{classkdb_1_1tools_1_1MockPluginDatabase__inherit__graph}
\end{center}
\end{figure}


Collaboration diagram for kdb\+:\+:tools\+:\+:Mock\+Plugin\+Database\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=244pt]{classkdb_1_1tools_1_1MockPluginDatabase__coll__graph}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
std\+::vector$<$ std\+::string $>$ \hyperlink{classkdb_1_1tools_1_1MockPluginDatabase_afb3aef79c6e8447f2555dae303ce1893}{list\+All\+Plugins} () const 
\begin{DoxyCompactList}\small\item\em list all plugins \end{DoxyCompactList}\item 
std\+::string \hyperlink{classkdb_1_1tools_1_1MockPluginDatabase_af1e8fa2f1ff8a1c5ac7005dd65101e93}{lookup\+Info} (\hyperlink{classkdb_1_1tools_1_1PluginSpec}{Plugin\+Spec} const \&spec, std\+::string const \&which) const 
\begin{DoxyCompactList}\small\item\em lookup contract clauses or dynamic information \end{DoxyCompactList}\item 
func\+\_\+t \hyperlink{classkdb_1_1tools_1_1MockPluginDatabase_acd897bc945b2b57620c2bf1860be515d}{get\+Symbol} (\hyperlink{classkdb_1_1tools_1_1PluginSpec}{Plugin\+Spec} const \&whichplugin, std\+::string const \&which) const 
\begin{DoxyCompactList}\small\item\em get exported plugin symbol \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
std\+::unordered\+\_\+map$<$ \hyperlink{classkdb_1_1tools_1_1PluginSpec}{Plugin\+Spec}, \\*
std\+::unordered\+\_\+map\\*
$<$ std\+::string, std\+::string $>$\\*
, \hyperlink{structkdb_1_1tools_1_1PluginSpecHash}{Plugin\+Spec\+Hash}, \\*
Plugin\+Spec\+Name $>$ \hyperlink{classkdb_1_1tools_1_1MockPluginDatabase_a5de7756d9e7fb78d53903c92208d7fbe}{data}
\begin{DoxyCompactList}\small\item\em only data from here will be returned \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}
A plugin database that works with added fake data. 

\subsection{Member Function Documentation}
\hypertarget{classkdb_1_1tools_1_1MockPluginDatabase_acd897bc945b2b57620c2bf1860be515d}{\index{kdb\+::tools\+::\+Mock\+Plugin\+Database@{kdb\+::tools\+::\+Mock\+Plugin\+Database}!get\+Symbol@{get\+Symbol}}
\index{get\+Symbol@{get\+Symbol}!kdb\+::tools\+::\+Mock\+Plugin\+Database@{kdb\+::tools\+::\+Mock\+Plugin\+Database}}
\subsubsection[{get\+Symbol}]{\setlength{\rightskip}{0pt plus 5cm}Plugin\+Database\+::func\+\_\+t kdb\+::tools\+::\+Mock\+Plugin\+Database\+::get\+Symbol (
\begin{DoxyParamCaption}
\item[{{\bf Plugin\+Spec} const \&}]{whichplugin, }
\item[{std\+::string const \&}]{which}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classkdb_1_1tools_1_1MockPluginDatabase_acd897bc945b2b57620c2bf1860be515d}


get exported plugin symbol 


\begin{DoxyParams}{Parameters}
{\em whichplugin} & from which plugin? \\
\hline
{\em which} & which symbol would you like to look up?\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
the function pointer to the exported symbol or N\+U\+L\+L if the symbol was not found 
\end{DoxyReturn}


Reimplemented from \hyperlink{classkdb_1_1tools_1_1ModulesPluginDatabase_aa126810a0a5522cc410af6b5f77edf7a}{kdb\+::tools\+::\+Modules\+Plugin\+Database}.

\hypertarget{classkdb_1_1tools_1_1MockPluginDatabase_afb3aef79c6e8447f2555dae303ce1893}{\index{kdb\+::tools\+::\+Mock\+Plugin\+Database@{kdb\+::tools\+::\+Mock\+Plugin\+Database}!list\+All\+Plugins@{list\+All\+Plugins}}
\index{list\+All\+Plugins@{list\+All\+Plugins}!kdb\+::tools\+::\+Mock\+Plugin\+Database@{kdb\+::tools\+::\+Mock\+Plugin\+Database}}
\subsubsection[{list\+All\+Plugins}]{\setlength{\rightskip}{0pt plus 5cm}std\+::vector$<$ std\+::string $>$ kdb\+::tools\+::\+Mock\+Plugin\+Database\+::list\+All\+Plugins (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classkdb_1_1tools_1_1MockPluginDatabase_afb3aef79c6e8447f2555dae303ce1893}


list all plugins 

If Elektra is compiled with plugins, it will search for shared libraries. In any case, if no shared libraries were found it will fallback to an internal list (plugins that were compiled together with Elektra).

\begin{DoxyReturn}{Returns}
a list of all available plugins 
\end{DoxyReturn}


Reimplemented from \hyperlink{classkdb_1_1tools_1_1ModulesPluginDatabase_a0aa3ca734a18da8f3818e0278697eaef}{kdb\+::tools\+::\+Modules\+Plugin\+Database}.

\hypertarget{classkdb_1_1tools_1_1MockPluginDatabase_af1e8fa2f1ff8a1c5ac7005dd65101e93}{\index{kdb\+::tools\+::\+Mock\+Plugin\+Database@{kdb\+::tools\+::\+Mock\+Plugin\+Database}!lookup\+Info@{lookup\+Info}}
\index{lookup\+Info@{lookup\+Info}!kdb\+::tools\+::\+Mock\+Plugin\+Database@{kdb\+::tools\+::\+Mock\+Plugin\+Database}}
\subsubsection[{lookup\+Info}]{\setlength{\rightskip}{0pt plus 5cm}std\+::string kdb\+::tools\+::\+Mock\+Plugin\+Database\+::lookup\+Info (
\begin{DoxyParamCaption}
\item[{{\bf Plugin\+Spec} const \&}]{whichplugin, }
\item[{std\+::string const \&}]{which}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classkdb_1_1tools_1_1MockPluginDatabase_af1e8fa2f1ff8a1c5ac7005dd65101e93}


lookup contract clauses or dynamic information 


\begin{DoxyParams}{Parameters}
{\em whichplugin} & about which plugin? \\
\hline
{\em which} & about which clause in the contract?\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
the clause of the contract 
\end{DoxyReturn}


Reimplemented from \hyperlink{classkdb_1_1tools_1_1ModulesPluginDatabase_a3d06a4b33e4bcc879dd6f562a8876390}{kdb\+::tools\+::\+Modules\+Plugin\+Database}.



\subsection{Field Documentation}
\hypertarget{classkdb_1_1tools_1_1MockPluginDatabase_a5de7756d9e7fb78d53903c92208d7fbe}{\index{kdb\+::tools\+::\+Mock\+Plugin\+Database@{kdb\+::tools\+::\+Mock\+Plugin\+Database}!data@{data}}
\index{data@{data}!kdb\+::tools\+::\+Mock\+Plugin\+Database@{kdb\+::tools\+::\+Mock\+Plugin\+Database}}
\subsubsection[{data}]{\setlength{\rightskip}{0pt plus 5cm}std\+::unordered\+\_\+map$<${\bf Plugin\+Spec}, std\+::unordered\+\_\+map$<$std\+::string, std\+::string$>$, {\bf Plugin\+Spec\+Hash}, Plugin\+Spec\+Name$>$ kdb\+::tools\+::\+Mock\+Plugin\+Database\+::data\hspace{0.3cm}{\ttfamily [mutable]}}}\label{classkdb_1_1tools_1_1MockPluginDatabase_a5de7756d9e7fb78d53903c92208d7fbe}


only data from here will be returned 

\begin{DoxyNote}{Note}
that it is ordered by name, i.\+e., different ref-\/names cannot be distinguished 
\end{DoxyNote}


The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
\hyperlink{plugindatabase_8hpp}{plugindatabase.\+hpp}\item 
\hyperlink{plugindatabase_8cpp}{plugindatabase.\+cpp}\end{DoxyCompactItemize}
