\doxysection{User\+Agent Class Reference}
\hypertarget{classUserAgent}{}\label{classUserAgent}\index{UserAgent@{UserAgent}}
Inheritance diagram for User\+Agent\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classUserAgent}
\end{center}
\end{figure}
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
void \mbox{\hyperlink{classUserAgent_a35505e0f6ffdebfaecdf71be1152710d}{set\+PCB}} (const std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{classPCBoard}{PCBoard}} $>$ \&) override
\item 
void \mbox{\hyperlink{classUserAgent_af54b2699b84e98e1ebdd5042c21efa19}{set\+Managed\+Connections}} (const std\+::set$<$ \mbox{\hyperlink{classConnection}{Connection}} \texorpdfstring{$\ast$}{*} $>$ \&) override
\item 
void \mbox{\hyperlink{classUserAgent_a0036b13890530426290f130b765fbf73}{set\+State\+Representation\+Params}} (Py\+Object \texorpdfstring{$\ast$}{*}) override
\item 
void \mbox{\hyperlink{classUserAgent_a4cc66c0d26be9a71a1ea0b3ad103bc69}{set\+Parameter}} (const std\+::string \&name, int index, Py\+Object \texorpdfstring{$\ast$}{*}) override
\item 
Py\+Object \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{classUserAgent_ad16c2324fd763d8066f83b44a1e80976}{step}} (Py\+Object \texorpdfstring{$\ast$}{*}) override
\item 
Py\+Object \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{classUserAgent_afec71cf213f486bf7f9c95058e7f5b6e}{get\+\_\+state}} (Py\+Object \texorpdfstring{$\ast$}{*}) override
\item 
Py\+Object \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{classUserAgent_a696d0afa85dcbf61e2d95d9dca61d858}{reset}} () override
\end{DoxyCompactItemize}
\doxysubsection*{Public Member Functions inherited from \mbox{\hyperlink{classAgent}{Agent}}}
\begin{DoxyCompactItemize}
\item 
{\bfseries Agent} (const std\+::string \&name)
\item 
const std\+::string \& {\bfseries name} () const
\item 
void {\bfseries set\+Parameters} (Py\+Object \texorpdfstring{$\ast$}{*})
\item 
const std\+::map$<$ std\+::string, \mbox{\hyperlink{classParameter}{Parameter}} \texorpdfstring{$\ast$}{*} $>$ \& {\bfseries get\+Parameters} () const
\item 
void {\bfseries set\+Python\+Interface} (Py\+Object \texorpdfstring{$\ast$}{*})
\item 
void {\bfseries set\+Training\+Mode} (bool on)
\item 
void {\bfseries set\+Managed\+Connections\+To\+Unrouted} ()
\item 
void {\bfseries set\+Action\+Space} (const \mbox{\hyperlink{classActionSpace}{Action\+Space}} \&)
\item 
void {\bfseries set\+Policy} (\mbox{\hyperlink{classPolicy}{Policy}} \texorpdfstring{$\ast$}{*})
\begin{DoxyCompactList}\small\item\em Ownership of \doxylink{classPolicy}{Policy}, \doxylink{classRewardFunction}{Reward\+Function}, and \doxylink{classStateRepresentation}{State\+Representation} are transferred to the agent. \end{DoxyCompactList}\item 
void {\bfseries set\+Reward\+Fn} (\mbox{\hyperlink{classRewardFunction}{Reward\+Function}} \texorpdfstring{$\ast$}{*})
\item 
void {\bfseries set\+State\+Representation} (\mbox{\hyperlink{classStateRepresentation}{State\+Representation}} \texorpdfstring{$\ast$}{*})
\item 
virtual bool {\bfseries \+\_\+run} ()
\item 
bool {\bfseries run} ()
\item 
void {\bfseries set\+Run\+Args} (Py\+Object \texorpdfstring{$\ast$}{*})
\item 
void {\bfseries set\+Timeout} (uint64\+\_\+t usec)
\item 
void {\bfseries set\+Timeout\+Expired} ()
\item 
void {\bfseries set\+Action\+Limit} (int64\+\_\+t count)
\item 
void {\bfseries set\+Clear\+Board\+Before\+Run} (bool)
\item 
float {\bfseries get\+Progress} () const
\item 
void {\bfseries erase\+Managed\+Connections} ()
\item 
\mbox{\hyperlink{classPCBoard}{PCBoard}} \texorpdfstring{$\ast$}{*} {\bfseries get\+PCB} () const
\begin{DoxyCompactList}\small\item\em These are only valid as long as you have got a hold of the agent. \end{DoxyCompactList}\item 
\mbox{\hyperlink{classRewardFunction}{Reward\+Function}} \& {\bfseries get\+Reward\+Fn} () const
\item 
\mbox{\hyperlink{classPolicy}{Policy}} \texorpdfstring{$\ast$}{*} {\bfseries get\+Policy} () const
\item 
\mbox{\hyperlink{classStateRepresentation}{State\+Representation}} \texorpdfstring{$\ast$}{*} {\bfseries get\+SR} () const
\item 
uint32\+\_\+t {\bfseries get\+Iteration} () const
\item 
uint64\+\_\+t {\bfseries num\+Actions} () const
\item 
uint64\+\_\+t {\bfseries usecs\+Since\+Start} () const
\item 
const std\+::vector$<$ \mbox{\hyperlink{classConnection}{Connection}} \texorpdfstring{$\ast$}{*} $>$ \& {\bfseries get\+Connections} () const
\item 
const std\+::set$<$ \mbox{\hyperlink{classConnection}{Connection}} \texorpdfstring{$\ast$}{*} $>$ \& {\bfseries get\+Connection\+Set} () const
\item 
\mbox{\hyperlink{classConnection}{Connection}} \texorpdfstring{$\ast$}{*} {\bfseries set\+Connection\+LRU} (Py\+Object \texorpdfstring{$\ast$}{*})
\item 
\mbox{\hyperlink{classConnection}{Connection}} \texorpdfstring{$\ast$}{*} {\bfseries get\+Connection\+LRU} () const
\item 
\mbox{\hyperlink{structAction_1_1Result}{Action\+::\+Result}} {\bfseries evaluate\+Current\+State} () const
\item 
void {\bfseries start\+Timer} ()
\item 
bool {\bfseries has\+Timer\+Expired} () const
\item 
void {\bfseries reset\+Action\+Count} ()
\item 
void {\bfseries reset\+Action\+Limit} ()
\item 
void {\bfseries count\+Actions} (int)
\item 
bool {\bfseries action\+Limit\+Exceeded} () const
\item 
std\+::vector$<$ float $>$ \mbox{\hyperlink{classAgent_afa9959a7e57b0dd01ac6b92cbe9a31f0}{py\+\_\+V}} (Py\+Object \texorpdfstring{$\ast$}{*}states)
\item 
std\+::vector$<$ float $>$ {\bfseries py\+\_\+Q} (Py\+Object \texorpdfstring{$\ast$}{*}states)
\item 
std\+::vector$<$ float $>$ {\bfseries py\+\_\+P} (Py\+Object \texorpdfstring{$\ast$}{*}states)
\item 
std\+::vector$<$ float $>$ {\bfseries py\+\_\+\+P\+\_\+V} (Py\+Object \texorpdfstring{$\ast$}{*}states)
\item 
void {\bfseries py\+\_\+event} (Py\+Object \texorpdfstring{$\ast$}{*}event)
\begin{DoxyCompactList}\small\item\em Tell anything else to your Python interface. \end{DoxyCompactList}\item 
\mbox{\hyperlink{classStepLock}{Step\+Lock}} \& {\bfseries get\+Step\+Lock} ()
\end{DoxyCompactItemize}
\doxysubsubsection*{Additional Inherited Members}
\doxysubsection*{Static Public Member Functions inherited from \mbox{\hyperlink{classAgent}{Agent}}}
\begin{DoxyCompactItemize}
\item 
static \mbox{\hyperlink{classAgent}{Agent}} \texorpdfstring{$\ast$}{*} {\bfseries create} (const std\+::string \&type)
\end{DoxyCompactItemize}
\doxysubsection*{Protected Member Functions inherited from \mbox{\hyperlink{classAgent}{Agent}}}
\begin{DoxyCompactItemize}
\item 
void {\bfseries init\+Parameters} ()
\end{DoxyCompactItemize}
\doxysubsection*{Protected Attributes inherited from \mbox{\hyperlink{classAgent}{Agent}}}
\begin{DoxyCompactItemize}
\item 
std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{classPCBoard}{PCBoard}} $>$ {\bfseries m\+PCB}
\item 
std\+::vector$<$ \mbox{\hyperlink{classConnection}{Connection}} \texorpdfstring{$\ast$}{*} $>$ {\bfseries m\+Connections}
\item 
std\+::set$<$ \mbox{\hyperlink{classConnection}{Connection}} \texorpdfstring{$\ast$}{*} $>$ {\bfseries m\+Connection\+Set}
\item 
\mbox{\hyperlink{classConnection}{Connection}} \texorpdfstring{$\ast$}{*} {\bfseries m\+Connection\+LRU} \{0\}
\item 
const \mbox{\hyperlink{classActionSpace}{Action\+Space}} \texorpdfstring{$\ast$}{*} {\bfseries m\+Action\+Space} \{0\}
\item 
std\+::unique\+\_\+ptr$<$ \mbox{\hyperlink{classPolicy}{Policy}} $>$ {\bfseries m\+Policy}
\item 
std\+::unique\+\_\+ptr$<$ \mbox{\hyperlink{classStateRepresentation}{State\+Representation}} $>$ {\bfseries m\+State\+Rep}
\item 
std\+::unique\+\_\+ptr$<$ \mbox{\hyperlink{classRewardFunction}{Reward\+Function}} $>$ {\bfseries m\+Reward\+Fn}
\item 
\mbox{\hyperlink{structResultCollection}{Result\+Collection}} {\bfseries m\+Stats}
\item 
uint32\+\_\+t {\bfseries m\+Iteration} \{0\}
\item 
float {\bfseries m\+Progress} \{-\/1.\+0f\}
\item 
bool {\bfseries m\+Clear\+Board\+Before\+Run} \{false\}
\item 
\mbox{\hyperlink{classSignalContext}{Signal\+Context}} {\bfseries m\+Signals}
\item 
std\+::map$<$ std\+::string, \mbox{\hyperlink{classParameter}{Parameter}} \texorpdfstring{$\ast$}{*} $>$ {\bfseries m\+Parameters}
\item 
Py\+Object \texorpdfstring{$\ast$}{*} {\bfseries m\+Python} \{0\}
\item 
Py\+Object \texorpdfstring{$\ast$}{*} {\bfseries m\+Method\+Names\+Py} \mbox{[}5\mbox{]} \{0,0,0,0,0\}
\end{DoxyCompactItemize}


\label{doc-func-members}
\Hypertarget{classUserAgent_doc-func-members}
\doxysubsection{Member Function Documentation}
\Hypertarget{classUserAgent_afec71cf213f486bf7f9c95058e7f5b6e}\index{UserAgent@{UserAgent}!get\_state@{get\_state}}
\index{get\_state@{get\_state}!UserAgent@{UserAgent}}
\doxysubsubsection{\texorpdfstring{get\_state()}{get\_state()}}
{\footnotesize\ttfamily \label{classUserAgent_afec71cf213f486bf7f9c95058e7f5b6e} 
Py\+Object \texorpdfstring{$\ast$}{*} User\+Agent\+::get\+\_\+state (\begin{DoxyParamCaption}\item[{Py\+Object \texorpdfstring{$\ast$}{*}}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}



Reimplemented from \mbox{\hyperlink{classAgent}{Agent}}.

\Hypertarget{classUserAgent_a696d0afa85dcbf61e2d95d9dca61d858}\index{UserAgent@{UserAgent}!reset@{reset}}
\index{reset@{reset}!UserAgent@{UserAgent}}
\doxysubsubsection{\texorpdfstring{reset()}{reset()}}
{\footnotesize\ttfamily \label{classUserAgent_a696d0afa85dcbf61e2d95d9dca61d858} 
Py\+Object \texorpdfstring{$\ast$}{*} User\+Agent\+::reset (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}



Reimplemented from \mbox{\hyperlink{classAgent}{Agent}}.

\Hypertarget{classUserAgent_af54b2699b84e98e1ebdd5042c21efa19}\index{UserAgent@{UserAgent}!setManagedConnections@{setManagedConnections}}
\index{setManagedConnections@{setManagedConnections}!UserAgent@{UserAgent}}
\doxysubsubsection{\texorpdfstring{setManagedConnections()}{setManagedConnections()}}
{\footnotesize\ttfamily \label{classUserAgent_af54b2699b84e98e1ebdd5042c21efa19} 
void User\+Agent\+::set\+Managed\+Connections (\begin{DoxyParamCaption}\item[{const std\+::set$<$ \mbox{\hyperlink{classConnection}{Connection}} \texorpdfstring{$\ast$}{*} $>$ \&}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}



Reimplemented from \mbox{\hyperlink{classAgent}{Agent}}.

\Hypertarget{classUserAgent_a4cc66c0d26be9a71a1ea0b3ad103bc69}\index{UserAgent@{UserAgent}!setParameter@{setParameter}}
\index{setParameter@{setParameter}!UserAgent@{UserAgent}}
\doxysubsubsection{\texorpdfstring{setParameter()}{setParameter()}}
{\footnotesize\ttfamily \label{classUserAgent_a4cc66c0d26be9a71a1ea0b3ad103bc69} 
void User\+Agent\+::set\+Parameter (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{name}{, }\item[{int}]{index}{, }\item[{Py\+Object \texorpdfstring{$\ast$}{*}}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}



Reimplemented from \mbox{\hyperlink{classAgent}{Agent}}.

\Hypertarget{classUserAgent_a35505e0f6ffdebfaecdf71be1152710d}\index{UserAgent@{UserAgent}!setPCB@{setPCB}}
\index{setPCB@{setPCB}!UserAgent@{UserAgent}}
\doxysubsubsection{\texorpdfstring{setPCB()}{setPCB()}}
{\footnotesize\ttfamily \label{classUserAgent_a35505e0f6ffdebfaecdf71be1152710d} 
void User\+Agent\+::set\+PCB (\begin{DoxyParamCaption}\item[{const std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{classPCBoard}{PCBoard}} $>$ \&}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}



Reimplemented from \mbox{\hyperlink{classAgent}{Agent}}.

\Hypertarget{classUserAgent_a0036b13890530426290f130b765fbf73}\index{UserAgent@{UserAgent}!setStateRepresentationParams@{setStateRepresentationParams}}
\index{setStateRepresentationParams@{setStateRepresentationParams}!UserAgent@{UserAgent}}
\doxysubsubsection{\texorpdfstring{setStateRepresentationParams()}{setStateRepresentationParams()}}
{\footnotesize\ttfamily \label{classUserAgent_a0036b13890530426290f130b765fbf73} 
void User\+Agent\+::set\+State\+Representation\+Params (\begin{DoxyParamCaption}\item[{Py\+Object \texorpdfstring{$\ast$}{*}}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}



Reimplemented from \mbox{\hyperlink{classAgent}{Agent}}.

\Hypertarget{classUserAgent_ad16c2324fd763d8066f83b44a1e80976}\index{UserAgent@{UserAgent}!step@{step}}
\index{step@{step}!UserAgent@{UserAgent}}
\doxysubsubsection{\texorpdfstring{step()}{step()}}
{\footnotesize\ttfamily \label{classUserAgent_ad16c2324fd763d8066f83b44a1e80976} 
Py\+Object \texorpdfstring{$\ast$}{*} User\+Agent\+::step (\begin{DoxyParamCaption}\item[{Py\+Object \texorpdfstring{$\ast$}{*}}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}



Reimplemented from \mbox{\hyperlink{classAgent}{Agent}}.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
/home/chr/devel/\+Ph\+D/\+Environment/pub/\+PCBEnv/pcbenv/cxx/\+RL/User\+Agent.\+hpp\end{DoxyCompactItemize}
