\hypertarget{classOpCommand}{
\section{OpCommand Class Reference}
\label{classOpCommand}\index{OpCommand@{OpCommand}}
}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classOpCommand_aed899494cfb3892817184788d3965386}{
{\bfseries OpCommand} (\hyperlink{classOpCommandList}{OpCommandList} \&ocl, const list$<$ string $>$ \&command\_\-parts)}
\label{classOpCommand_aed899494cfb3892817184788d3965386}

\item 
\hypertarget{classOpCommand_a1726fd476bee47f735ce70bc59dd171c}{
const list$<$ string $>$ \& {\bfseries command\_\-parts} () const }
\label{classOpCommand_a1726fd476bee47f735ce70bc59dd171c}

\item 
\hypertarget{classOpCommand_a2dd3fbb0e690244eed0a9280b5f61796}{
const string \& {\bfseries command\_\-name} () const }
\label{classOpCommand_a2dd3fbb0e690244eed0a9280b5f61796}

\item 
\hypertarget{classOpCommand_a9aa27d5a35d7f74bddc1e2bc0ac14707}{
const string \& {\bfseries help\_\-string} () const }
\label{classOpCommand_a9aa27d5a35d7f74bddc1e2bc0ac14707}

\item 
\hypertarget{classOpCommand_a719d8d2eaeac6179b7a98fba0fd3d219}{
const string \& {\bfseries module} () const }
\label{classOpCommand_a719d8d2eaeac6179b7a98fba0fd3d219}

\item 
\hypertarget{classOpCommand_a11c72abba334d68f19a4d804ee5f78d5}{
const string \& {\bfseries command\_\-action} () const }
\label{classOpCommand_a11c72abba334d68f19a4d804ee5f78d5}

\item 
\hypertarget{classOpCommand_a100f5053e9be24d7d60c5a8177499650}{
void {\bfseries set\_\-help\_\-string} (const string \&v)}
\label{classOpCommand_a100f5053e9be24d7d60c5a8177499650}

\item 
\hypertarget{classOpCommand_ac03fac99ff50074bc1242f8e607172a5}{
void {\bfseries set\_\-module} (const string \&v)}
\label{classOpCommand_ac03fac99ff50074bc1242f8e607172a5}

\item 
\hypertarget{classOpCommand_a19368b673392a3880e87e4458f531c5c}{
void {\bfseries set\_\-command\_\-action} (const string \&v)}
\label{classOpCommand_a19368b673392a3880e87e4458f531c5c}

\item 
\hypertarget{classOpCommand_a2005e4e4d76e7bed8d517141b6dfabe4}{
void {\bfseries set\_\-command\_\-action\_\-filename} (const string \&v)}
\label{classOpCommand_a2005e4e4d76e7bed8d517141b6dfabe4}

\item 
\hypertarget{classOpCommand_a03bf09542cbdc336f4babd7bf2c4c646}{
void {\bfseries set\_\-command\_\-action\_\-argument\_\-list} (const list$<$ string $>$ \&v)}
\label{classOpCommand_a03bf09542cbdc336f4babd7bf2c4c646}

\item 
\hypertarget{classOpCommand_aba915293cc9112e706d6ffdc8bdbbef5}{
void {\bfseries set\_\-command\_\-executable\_\-filename} (const string \&v)}
\label{classOpCommand_aba915293cc9112e706d6ffdc8bdbbef5}

\item 
\hypertarget{classOpCommand_ac73dd8a84719532e02510070fc5e4d95}{
bool {\bfseries is\_\-executable} () const }
\label{classOpCommand_ac73dd8a84719532e02510070fc5e4d95}

\item 
\hypertarget{classOpCommand_a73900149a8612d11a157a292b09a09af}{
bool {\bfseries can\_\-pipe} () const }
\label{classOpCommand_a73900149a8612d11a157a292b09a09af}

\item 
bool \hyperlink{classOpCommand_ab08bdfa005b7ced732b0073f61308de2}{default\_\-nomore\_\-mode} () const 
\begin{DoxyCompactList}\small\item\em Test if \char`\"{}no-\/more\char`\"{} (i.e., unpaged) is \hyperlink{protocolthe-p}{the} default output mode. \item\end{DoxyCompactList}\item 
void \hyperlink{classOpCommand_aa19a2b12d61cd31623f0afdd3692a148}{set\_\-default\_\-nomore\_\-mode} (bool v)
\begin{DoxyCompactList}\small\item\em Set \hyperlink{protocolthe-p}{the} default paging mode. \item\end{DoxyCompactList}\item 
\hypertarget{classOpCommand_a686d0c0b4a38480031c451eba4404e46}{
void {\bfseries add\_\-opt\_\-param} (const string \&opt\_\-param, const string \&opt\_\-param\_\-help)}
\label{classOpCommand_a686d0c0b4a38480031c451eba4404e46}

\item 
\hypertarget{classOpCommand_a0ea8864fb4d2aa03df67b46bb23f831a}{
bool {\bfseries has\_\-opt\_\-param} (const string \&opt\_\-param) const }
\label{classOpCommand_a0ea8864fb4d2aa03df67b46bb23f831a}

\item 
\hypertarget{classOpCommand_aa70d122fee8482f212363ccad5c80c07}{
string {\bfseries str} () const }
\label{classOpCommand_aa70d122fee8482f212363ccad5c80c07}

\item 
\hyperlink{classOpInstance}{OpInstance} $\ast$ \hyperlink{classOpCommand_a2fdf580b7aa0946e9416c3d3616f73a1}{execute} (\hyperlink{classEventLoop}{EventLoop} \&eventloop, const list$<$ string $>$ \&command\_\-line, RouterCLI::OpModePrintCallback print\_\-cb, RouterCLI::OpModeDoneCallback done\_\-cb)
\begin{DoxyCompactList}\small\item\em Execute an operational mode command. \item\end{DoxyCompactList}\item 
\hypertarget{classOpCommand_a567c4a74aa673867b1923e24040bda30}{
bool {\bfseries command\_\-match} (const list$<$ string $>$ \&path\_\-parts, \hyperlink{classSlaveConfigTree}{SlaveConfigTree} $\ast$sct, bool exact\_\-match) const }
\label{classOpCommand_a567c4a74aa673867b1923e24040bda30}

\item 
\hypertarget{classOpCommand_a8ce9ad1f6efc1bc4075b7e34b868cda5}{
void {\bfseries get\_\-matches} (size\_\-t wordnum, \hyperlink{classSlaveConfigTree}{SlaveConfigTree} $\ast$sct, map$<$ string, \hyperlink{classCliCommandMatch}{CliCommandMatch} $>$ \&return\_\-matches) const }
\label{classOpCommand_a8ce9ad1f6efc1bc4075b7e34b868cda5}

\item 
\hypertarget{classOpCommand_aebf4ccacf0298fdf6c94a59507ed8317}{
bool {\bfseries type\_\-match} (const string \&s, string \&errmsg) const }
\label{classOpCommand_aebf4ccacf0298fdf6c94a59507ed8317}

\item 
\hypertarget{classOpCommand_a0469ccee916797988b88322e647aa66a}{
void {\bfseries add\_\-instance} (\hyperlink{classOpInstance}{OpInstance} $\ast$instance)}
\label{classOpCommand_a0469ccee916797988b88322e647aa66a}

\item 
\hypertarget{classOpCommand_ad48a60101bc4c4e232b14eaacbcb7af0}{
void {\bfseries remove\_\-instance} (\hyperlink{classOpInstance}{OpInstance} $\ast$instance)}
\label{classOpCommand_ad48a60101bc4c4e232b14eaacbcb7af0}

\item 
\hypertarget{classOpCommand_a829d1e099036d9d685d2b4d36776fb0f}{
bool {\bfseries is\_\-invalid} () const }
\label{classOpCommand_a829d1e099036d9d685d2b4d36776fb0f}

\item 
\hypertarget{classOpCommand_aea2902873a03611c1bd4ffa81141279c}{
void {\bfseries set\_\-is\_\-invalid} (bool v)}
\label{classOpCommand_aea2902873a03611c1bd4ffa81141279c}

\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classOpCommand_aac67f6fb9668535103af5b67c7632f03}{
static string {\bfseries command\_\-parts2command\_\-name} (const list$<$ string $>$ \&command\_\-parts)}
\label{classOpCommand_aac67f6fb9668535103af5b67c7632f03}

\item 
static list$<$ string $>$ \hyperlink{classOpCommand_a9b6398ee969562daab162c5eea18e822}{select\_\-positional\_\-argument} (const list$<$ string $>$ \&argument\_\-list, const string \&position, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Select a positional argument. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classOpCommand_afb986a17a77edcd895f5a42ef4d97950}{
\hyperlink{classOpCommandList}{OpCommandList} $\ast$ {\bfseries \_\-ocl}}
\label{classOpCommand_afb986a17a77edcd895f5a42ef4d97950}

\item 
\hypertarget{classOpCommand_a6ae6e164b9312f8316be6da2b6c0e297}{
list$<$ string $>$ {\bfseries \_\-command\_\-parts}}
\label{classOpCommand_a6ae6e164b9312f8316be6da2b6c0e297}

\item 
\hypertarget{classOpCommand_a81ee00749af3b62c5bf88ad9259ef79c}{
string {\bfseries \_\-command\_\-name}}
\label{classOpCommand_a81ee00749af3b62c5bf88ad9259ef79c}

\item 
\hypertarget{classOpCommand_a36061a9bd5c92d89406b41328d0a0fec}{
string {\bfseries \_\-help\_\-string}}
\label{classOpCommand_a36061a9bd5c92d89406b41328d0a0fec}

\item 
\hypertarget{classOpCommand_afafbaac7d0f4d2d087890f2dd3571a03}{
string {\bfseries \_\-module}}
\label{classOpCommand_afafbaac7d0f4d2d087890f2dd3571a03}

\item 
\hypertarget{classOpCommand_a52980206512b542a9b11fc1103677978}{
string {\bfseries \_\-command\_\-action}}
\label{classOpCommand_a52980206512b542a9b11fc1103677978}

\item 
\hypertarget{classOpCommand_abcdb24f4384755813220d9bdc0038b51}{
string {\bfseries \_\-command\_\-action\_\-filename}}
\label{classOpCommand_abcdb24f4384755813220d9bdc0038b51}

\item 
\hypertarget{classOpCommand_aa0d9eb40f60b2a0831028e9a44311269}{
list$<$ string $>$ {\bfseries \_\-command\_\-action\_\-argument\_\-list}}
\label{classOpCommand_aa0d9eb40f60b2a0831028e9a44311269}

\item 
\hypertarget{classOpCommand_ad25b8ceb364a213b86522278b684aae5}{
string {\bfseries \_\-command\_\-executable\_\-filename}}
\label{classOpCommand_ad25b8ceb364a213b86522278b684aae5}

\item 
\hypertarget{classOpCommand_a4e3b247c28287628276092139692cc42}{
map$<$ string, string $>$ {\bfseries \_\-opt\_\-params}}
\label{classOpCommand_a4e3b247c28287628276092139692cc42}

\item 
\hypertarget{classOpCommand_a823937cdcea8b0c22e866897f12bb847}{
set$<$ \hyperlink{classOpInstance}{OpInstance} $\ast$ $>$ {\bfseries \_\-instances}}
\label{classOpCommand_a823937cdcea8b0c22e866897f12bb847}

\item 
\hypertarget{classOpCommand_a526dfde638d257b763939ede6b47ce63}{
bool {\bfseries \_\-is\_\-invalid}}
\label{classOpCommand_a526dfde638d257b763939ede6b47ce63}

\item 
\hypertarget{classOpCommand_a116afe0bc20278624f2cb0beb98cf94d}{
bool {\bfseries \_\-default\_\-nomore\_\-mode}}
\label{classOpCommand_a116afe0bc20278624f2cb0beb98cf94d}

\end{DoxyCompactItemize}


\subsection{Member Function Documentation}
\hypertarget{classOpCommand_ab08bdfa005b7ced732b0073f61308de2}{
\index{OpCommand@{OpCommand}!default\_\-nomore\_\-mode@{default\_\-nomore\_\-mode}}
\index{default\_\-nomore\_\-mode@{default\_\-nomore\_\-mode}!OpCommand@{OpCommand}}
\subsubsection[{default\_\-nomore\_\-mode}]{\setlength{\rightskip}{0pt plus 5cm}bool OpCommand::default\_\-nomore\_\-mode (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classOpCommand_ab08bdfa005b7ced732b0073f61308de2}


Test if \char`\"{}no-\/more\char`\"{} (i.e., unpaged) is \hyperlink{protocolthe-p}{the} default output mode. 

\begin{DoxyReturn}{Returns}
true if \char`\"{}no-\/more\char`\"{} (i.e., unpaged) is \hyperlink{protocolthe-p}{the} default output mode, otherwise false. 
\end{DoxyReturn}
\hypertarget{classOpCommand_a2fdf580b7aa0946e9416c3d3616f73a1}{
\index{OpCommand@{OpCommand}!execute@{execute}}
\index{execute@{execute}!OpCommand@{OpCommand}}
\subsubsection[{execute}]{\setlength{\rightskip}{0pt plus 5cm}{\bf OpInstance} $\ast$ OpCommand::execute (
\begin{DoxyParamCaption}
\item[{{\bf EventLoop} \&}]{eventloop, }
\item[{const list$<$ string $>$ \&}]{command\_\-line, }
\item[{RouterCLI::OpModePrintCallback}]{print\_\-cb, }
\item[{RouterCLI::OpModeDoneCallback}]{done\_\-cb}
\end{DoxyParamCaption}
)}}
\label{classOpCommand_a2fdf580b7aa0946e9416c3d3616f73a1}


Execute an operational mode command. 


\begin{DoxyParams}{Parameters}
{\em eventloop} & \hyperlink{protocolthe-p}{the} event loop. \\
\hline
{\em command\_\-line} & \hyperlink{protocolthe-p}{the} list with \hyperlink{protocolthe-p}{the} command to execute and \hyperlink{protocolthe-p}{the} arguments. \\
\hline
{\em print\_\-cb} & callback to be invoked with output from command. \\
\hline
{\em done\_\-cb} & callback to invoke when \hyperlink{protocolthe-p}{the} command terminates.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
a pointer to \hyperlink{protocolthe-p}{the} command instance on success. 
\end{DoxyReturn}
\hypertarget{classOpCommand_a9b6398ee969562daab162c5eea18e822}{
\index{OpCommand@{OpCommand}!select\_\-positional\_\-argument@{select\_\-positional\_\-argument}}
\index{select\_\-positional\_\-argument@{select\_\-positional\_\-argument}!OpCommand@{OpCommand}}
\subsubsection[{select\_\-positional\_\-argument}]{\setlength{\rightskip}{0pt plus 5cm}list$<$ string $>$ OpCommand::select\_\-positional\_\-argument (
\begin{DoxyParamCaption}
\item[{const list$<$ string $>$ \&}]{argument\_\-list, }
\item[{const string \&}]{position, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}static\mbox{]}}}}
\label{classOpCommand_a9b6398ee969562daab162c5eea18e822}


Select a positional argument. 


\begin{DoxyParams}{Parameters}
{\em argument\_\-list} & \hyperlink{protocolthe-p}{the} list with \hyperlink{protocolthe-p}{the} arguments. \\
\hline
{\em position} & \hyperlink{protocolthe-p}{the} positional argument (e.g., \char`\"{}\$0\char`\"{} specifies all arguments, \char`\"{}\$1\char`\"{} is \hyperlink{protocolthe-p}{the} first argument, \char`\"{}\$2\char`\"{} \hyperlink{protocolthe-p}{the} second argument, etc.) \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
if position is valid, then a list with \hyperlink{protocolthe-p}{the} \hyperlink{protocolthe-p}{the} strings with \hyperlink{protocolthe-p}{the} selected arguments, or an empty string if an error. Note that only if \hyperlink{protocolthe-p}{the} position argument is \char`\"{}\$0\char`\"{}, then \hyperlink{protocolthe-p}{the} list will contain more than one elements. 
\end{DoxyReturn}
\hypertarget{classOpCommand_aa19a2b12d61cd31623f0afdd3692a148}{
\index{OpCommand@{OpCommand}!set\_\-default\_\-nomore\_\-mode@{set\_\-default\_\-nomore\_\-mode}}
\index{set\_\-default\_\-nomore\_\-mode@{set\_\-default\_\-nomore\_\-mode}!OpCommand@{OpCommand}}
\subsubsection[{set\_\-default\_\-nomore\_\-mode}]{\setlength{\rightskip}{0pt plus 5cm}void OpCommand::set\_\-default\_\-nomore\_\-mode (
\begin{DoxyParamCaption}
\item[{bool}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classOpCommand_aa19a2b12d61cd31623f0afdd3692a148}


Set \hyperlink{protocolthe-p}{the} default paging mode. 


\begin{DoxyParams}{Parameters}
{\em v} & if true, then \char`\"{}no-\/more\char`\"{} (i.e., unpaged) is \hyperlink{protocolthe-p}{the} default output mode. \\
\hline
\end{DoxyParams}


The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
/home/greearb/git/xorp.ct.github/xorp/rtrmgr/op\_\-commands.hh\item 
/home/greearb/git/xorp.ct.github/xorp/rtrmgr/op\_\-commands.cc\end{DoxyCompactItemize}
