\hypertarget{classRunCommandBase}{
\section{RunCommandBase Class Reference}
\label{classRunCommandBase}\index{RunCommandBase@{RunCommandBase}}
}


Base virtual class for running an external command.  




{\ttfamily \#include $<$run\_\-command.hh$>$}

Inheritance diagram for RunCommandBase:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classRunCommandBase}
\end{center}
\end{figure}
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
class \hyperlink{classRunCommandBase_1_1ExecId}{ExecId}
\begin{DoxyCompactList}\small\item\em Class for setting \hyperlink{protocolthe-p}{the} execution ID when running \hyperlink{protocolthe-p}{the} command. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classRunCommandBase_a5cade4af9090c63ec361477f0ebcee02}{RunCommandBase} (\hyperlink{classEventLoop}{EventLoop} \&eventloop, const string \&command, const string \&real\_\-command\_\-name, int task\_\-priority=XorpTask::PRIORITY\_\-DEFAULT)
\begin{DoxyCompactList}\small\item\em Constructor for a given command. \item\end{DoxyCompactList}\item 
\hypertarget{classRunCommandBase_a032be69e1e18c5c51bf8757d88e36c15}{
virtual \hyperlink{classRunCommandBase_a032be69e1e18c5c51bf8757d88e36c15}{$\sim$RunCommandBase} ()}
\label{classRunCommandBase_a032be69e1e18c5c51bf8757d88e36c15}

\begin{DoxyCompactList}\small\item\em Destructor. \item\end{DoxyCompactList}\item 
void \hyperlink{classRunCommandBase_a4ca748dcf6bc7f5253b71f65606a1412}{set\_\-argument\_\-list} (const list$<$ string $>$ \&v)
\begin{DoxyCompactList}\small\item\em Set \hyperlink{protocolthe-p}{the} list with \hyperlink{protocolthe-p}{the} arguments for \hyperlink{protocolthe-p}{the} command to execute. \item\end{DoxyCompactList}\item 
int \hyperlink{classRunCommandBase_a96f7fb2617958b13c1043982fac789f4}{execute} ()
\begin{DoxyCompactList}\small\item\em Execute \hyperlink{protocolthe-p}{the} command. \item\end{DoxyCompactList}\item 
\hypertarget{classRunCommandBase_a8334a7b814cb4899f9a0d2bae1acffc3}{
void \hyperlink{classRunCommandBase_a8334a7b814cb4899f9a0d2bae1acffc3}{terminate} ()}
\label{classRunCommandBase_a8334a7b814cb4899f9a0d2bae1acffc3}

\begin{DoxyCompactList}\small\item\em Terminate \hyperlink{protocolthe-p}{the} command. \item\end{DoxyCompactList}\item 
\hypertarget{classRunCommandBase_a92e2f6c9a219c2771dcf3de598c5fb9c}{
void \hyperlink{classRunCommandBase_a92e2f6c9a219c2771dcf3de598c5fb9c}{terminate\_\-with\_\-prejudice} ()}
\label{classRunCommandBase_a92e2f6c9a219c2771dcf3de598c5fb9c}

\begin{DoxyCompactList}\small\item\em Terminate \hyperlink{protocolthe-p}{the} command with prejudice. \item\end{DoxyCompactList}\item 
const string \& \hyperlink{classRunCommandBase_a40cba83baaab4697d7a78d32914e6405}{command} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} command to execute. \item\end{DoxyCompactList}\item 
const list$<$ string $>$ \& \hyperlink{classRunCommandBase_a6f57775831bf5edf5e8c167c14d06b86}{argument\_\-list} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} list with \hyperlink{protocolthe-p}{the} arguments of \hyperlink{protocolthe-p}{the} command to execute. \item\end{DoxyCompactList}\item 
void \hyperlink{classRunCommandBase_a0f3ce2e66df0bc59445f92502330bf94}{wait\_\-status\_\-changed} (int wait\_\-status)
\begin{DoxyCompactList}\small\item\em Receive a notification that \hyperlink{protocolthe-p}{the} status of \hyperlink{protocolthe-p}{the} process has changed. \item\end{DoxyCompactList}\item 
bool \hyperlink{classRunCommandBase_ad9b1fb95fd4ec625132f048d6a58042f}{is\_\-exited} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} command has exited. \item\end{DoxyCompactList}\item 
bool \hyperlink{classRunCommandBase_a1a3dcf6264a36c4703e2061c410a5f48}{is\_\-signal\_\-terminated} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} command has been terminated by a signal. \item\end{DoxyCompactList}\item 
bool \hyperlink{classRunCommandBase_a09daac02ced1f53129dd46d7a0addc43}{is\_\-coredumped} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} command has coredumped. \item\end{DoxyCompactList}\item 
bool \hyperlink{classRunCommandBase_aefe00c502a330c6c83ac6486849a80b2}{is\_\-stopped} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} command has been stopped. \item\end{DoxyCompactList}\item 
int \hyperlink{classRunCommandBase_a42f5310fab9185d25ab89793553963ed}{exit\_\-status} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} command exit status. \item\end{DoxyCompactList}\item 
int \hyperlink{classRunCommandBase_a40042b5d63ad6455085afdc6f5b5025a}{term\_\-signal} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} signal that terminated \hyperlink{protocolthe-p}{the} command. \item\end{DoxyCompactList}\item 
int \hyperlink{classRunCommandBase_a40503d2ec18c6f14cfe16a308174ef5e}{stop\_\-signal} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} signal that stopped \hyperlink{protocolthe-p}{the} command. \item\end{DoxyCompactList}\item 
int \hyperlink{classRunCommandBase_a61cb87718b61d14089e24cb9c600bb40}{task\_\-priority} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} priority to use when reading output from \hyperlink{protocolthe-p}{the} command. \item\end{DoxyCompactList}\item 
\hyperlink{classRunCommandBase_1_1ExecId}{ExecId} \& \hyperlink{classRunCommandBase_a7b6767b3b8fb8cad1c9ff1360246eb96}{exec\_\-id} ()
\begin{DoxyCompactList}\small\item\em Get a reference to \hyperlink{protocolthe-p}{the} \hyperlink{classRunCommandBase_1_1ExecId}{ExecId} object. \item\end{DoxyCompactList}\item 
void \hyperlink{classRunCommandBase_a36d55f241168a0e7ed903d59ea4da8e1}{set\_\-exec\_\-id} (const \hyperlink{classRunCommandBase_1_1ExecId}{ExecId} \&v)
\begin{DoxyCompactList}\small\item\em Set \hyperlink{protocolthe-p}{the} execution ID for executing \hyperlink{protocolthe-p}{the} command. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual void \hyperlink{classRunCommandBase_a50f880e4432f18bb183ef3f6ad07bd1d}{stdout\_\-cb\_\-dispatch} (const string \&output)=0
\begin{DoxyCompactList}\small\item\em A pure virtual method called when there is output on \hyperlink{protocolthe-p}{the} program's stdout. \item\end{DoxyCompactList}\item 
virtual void \hyperlink{classRunCommandBase_a833ab982fedea6e028a5ededd42cafb9}{stderr\_\-cb\_\-dispatch} (const string \&output)=0
\begin{DoxyCompactList}\small\item\em A pure virtual method called when there is output on \hyperlink{protocolthe-p}{the} program's stderr. \item\end{DoxyCompactList}\item 
virtual void \hyperlink{classRunCommandBase_a4aa3c786fd92edb82a88a137e8e6a168}{done\_\-cb\_\-dispatch} (bool success, const string \&error\_\-msg)=0
\begin{DoxyCompactList}\small\item\em A pure virtual method called when \hyperlink{protocolthe-p}{the} program execution is completed. \item\end{DoxyCompactList}\item 
virtual void \hyperlink{classRunCommandBase_a44d555a1227851a4d57c446aa25af125}{stopped\_\-cb\_\-dispatch} (int stop\_\-signal)=0
\begin{DoxyCompactList}\small\item\em A pure virtual method called when \hyperlink{protocolthe-p}{the} program has been stopped. \item\end{DoxyCompactList}\item 
virtual bool \hyperlink{classRunCommandBase_ac01e741861440cee2d8020099f4f3af3}{redirect\_\-stderr\_\-to\_\-stdout} () const =0
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} stderr should be redirected to stdout. \item\end{DoxyCompactList}\item 
\hypertarget{classRunCommandBase_a32c3dac5244853e56b6a1dde765bbb1c}{
void \hyperlink{classRunCommandBase_a32c3dac5244853e56b6a1dde765bbb1c}{cleanup} ()}
\label{classRunCommandBase_a32c3dac5244853e56b6a1dde765bbb1c}

\begin{DoxyCompactList}\small\item\em Cleanup state. \item\end{DoxyCompactList}\item 
\hypertarget{classRunCommandBase_a239f8b5e0d41e03ac11301b559f107ed}{
int \hyperlink{classRunCommandBase_a239f8b5e0d41e03ac11301b559f107ed}{block\_\-child\_\-signals} ()}
\label{classRunCommandBase_a239f8b5e0d41e03ac11301b559f107ed}

\begin{DoxyCompactList}\small\item\em Block child process signal(s) in current signal mask. \item\end{DoxyCompactList}\item 
\hypertarget{classRunCommandBase_a7363e2b353f51003f68108aca648baa6}{
int \hyperlink{classRunCommandBase_a7363e2b353f51003f68108aca648baa6}{unblock\_\-child\_\-signals} ()}
\label{classRunCommandBase_a7363e2b353f51003f68108aca648baa6}

\begin{DoxyCompactList}\small\item\em Unblock child process signal(s) in current signal mask. \item\end{DoxyCompactList}\item 
void \hyperlink{classRunCommandBase_aa45bde968a7ef1fbfb68b47a3631da77}{terminate\_\-process} (bool with\_\-prejudice)
\begin{DoxyCompactList}\small\item\em Terminate \hyperlink{protocolthe-p}{the} process. \item\end{DoxyCompactList}\item 
\hypertarget{classRunCommandBase_a635089d5fc27bad44664a4eea88324da}{
void \hyperlink{classRunCommandBase_a635089d5fc27bad44664a4eea88324da}{close\_\-output} ()}
\label{classRunCommandBase_a635089d5fc27bad44664a4eea88324da}

\begin{DoxyCompactList}\small\item\em Close \hyperlink{protocolthe-p}{the} output for \hyperlink{protocolthe-p}{the} command. \item\end{DoxyCompactList}\item 
\hypertarget{classRunCommandBase_aa8878ceb697510be15965be234dbce11}{
void \hyperlink{classRunCommandBase_aa8878ceb697510be15965be234dbce11}{close\_\-stdout\_\-output} ()}
\label{classRunCommandBase_aa8878ceb697510be15965be234dbce11}

\begin{DoxyCompactList}\small\item\em Close \hyperlink{protocolthe-p}{the} stdout output for \hyperlink{protocolthe-p}{the} command. \item\end{DoxyCompactList}\item 
\hypertarget{classRunCommandBase_a2b816c580c6c37d818b4303d1322a0c6}{
void \hyperlink{classRunCommandBase_a2b816c580c6c37d818b4303d1322a0c6}{close\_\-stderr\_\-output} ()}
\label{classRunCommandBase_a2b816c580c6c37d818b4303d1322a0c6}

\begin{DoxyCompactList}\small\item\em Close \hyperlink{protocolthe-p}{the} stderr output for \hyperlink{protocolthe-p}{the} command. \item\end{DoxyCompactList}\item 
void \hyperlink{classRunCommandBase_a5ccc2f61b7c19d6e6f97d3cbf4ec7dfc}{set\_\-command\_\-status} (int status)
\begin{DoxyCompactList}\small\item\em Set \hyperlink{protocolthe-p}{the} command status. \item\end{DoxyCompactList}\item 
void \hyperlink{classRunCommandBase_a12e3a719c3d1e422284646f7a958ecb5}{append\_\-data} (AsyncFileOperator::Event event, const uint8\_\-t $\ast$buffer, size\_\-t buffer\_\-bytes, size\_\-t offset)
\begin{DoxyCompactList}\small\item\em Append data from \hyperlink{protocolthe-p}{the} command. \item\end{DoxyCompactList}\item 
void \hyperlink{classRunCommandBase_acc35dcb758c37e9919207cabe12b3d27}{io\_\-done} (AsyncFileOperator::Event event, int error\_\-code)
\begin{DoxyCompactList}\small\item\em The command's I/O operation has completed. \item\end{DoxyCompactList}\item 
void \hyperlink{classRunCommandBase_af8c601a3e5b72d54f62ebd59ef23481e}{done} (\hyperlink{classXorpTimer}{XorpTimer} \&done\_\-timer)
\begin{DoxyCompactList}\small\item\em The command has completed. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classRunCommandBase_a02bf91f28d50411e1c914f3acfb33c53}{
\hyperlink{classEventLoop}{EventLoop} \& {\bfseries \_\-eventloop}}
\label{classRunCommandBase_a02bf91f28d50411e1c914f3acfb33c53}

\item 
\hypertarget{classRunCommandBase_a52bb2bea6dad58c15fb7b6ede22057e5}{
string {\bfseries \_\-command}}
\label{classRunCommandBase_a52bb2bea6dad58c15fb7b6ede22057e5}

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

\item 
\hypertarget{classRunCommandBase_a536537bfa424e993379fb40879840a98}{
list$<$ string $>$ {\bfseries \_\-argument\_\-list}}
\label{classRunCommandBase_a536537bfa424e993379fb40879840a98}

\item 
\hypertarget{classRunCommandBase_a762f17a5f90c6dc80b5d2bc32355bfd8}{
\hyperlink{classAsyncFileReader}{AsyncFileReader} $\ast$ {\bfseries \_\-stdout\_\-file\_\-reader}}
\label{classRunCommandBase_a762f17a5f90c6dc80b5d2bc32355bfd8}

\item 
\hypertarget{classRunCommandBase_a5dc4ed2674262f5edd3cf897a7c13fcb}{
\hyperlink{classAsyncFileReader}{AsyncFileReader} $\ast$ {\bfseries \_\-stderr\_\-file\_\-reader}}
\label{classRunCommandBase_a5dc4ed2674262f5edd3cf897a7c13fcb}

\item 
\hypertarget{classRunCommandBase_ac3ab2cff21fb10f6f8f7c6d964d0bf31}{
FILE $\ast$ {\bfseries \_\-stdout\_\-stream}}
\label{classRunCommandBase_ac3ab2cff21fb10f6f8f7c6d964d0bf31}

\item 
\hypertarget{classRunCommandBase_af53bd762beb35376767f541bebf6f36b}{
FILE $\ast$ {\bfseries \_\-stderr\_\-stream}}
\label{classRunCommandBase_af53bd762beb35376767f541bebf6f36b}

\item 
\hypertarget{classRunCommandBase_a65146c656035fc79baf48074fd9ca8de}{
uint8\_\-t {\bfseries \_\-stdout\_\-buffer} \mbox{[}BUF\_\-SIZE\mbox{]}}
\label{classRunCommandBase_a65146c656035fc79baf48074fd9ca8de}

\item 
\hypertarget{classRunCommandBase_a839434eb02c68ca12772da2f58aefa13}{
uint8\_\-t {\bfseries \_\-stderr\_\-buffer} \mbox{[}BUF\_\-SIZE\mbox{]}}
\label{classRunCommandBase_a839434eb02c68ca12772da2f58aefa13}

\item 
\hypertarget{classRunCommandBase_af1eef6874848c51ea0f7aaf912fc37dd}{
size\_\-t {\bfseries \_\-last\_\-stdout\_\-offset}}
\label{classRunCommandBase_af1eef6874848c51ea0f7aaf912fc37dd}

\item 
\hypertarget{classRunCommandBase_a943676c5e6a42bdf1f2af9e87791aa14}{
size\_\-t {\bfseries \_\-last\_\-stderr\_\-offset}}
\label{classRunCommandBase_a943676c5e6a42bdf1f2af9e87791aa14}

\item 
\hypertarget{classRunCommandBase_a9898cec02cfc301f4f84b95d0161bfb4}{
pid\_\-t {\bfseries \_\-pid}}
\label{classRunCommandBase_a9898cec02cfc301f4f84b95d0161bfb4}

\item 
\hypertarget{classRunCommandBase_a27ad863db7e0f53d74b6d82d38a5bed5}{
bool {\bfseries \_\-is\_\-error}}
\label{classRunCommandBase_a27ad863db7e0f53d74b6d82d38a5bed5}

\item 
\hypertarget{classRunCommandBase_ae3d4c1e8a3609753c066e12ecae4194a}{
string {\bfseries \_\-error\_\-msg}}
\label{classRunCommandBase_ae3d4c1e8a3609753c066e12ecae4194a}

\item 
\hypertarget{classRunCommandBase_acd7beb236dc1979bd373855b1f0bf920}{
bool {\bfseries \_\-is\_\-running}}
\label{classRunCommandBase_acd7beb236dc1979bd373855b1f0bf920}

\item 
\hypertarget{classRunCommandBase_a90f4ee55ff1a1b9486156a565a4925ee}{
\hyperlink{classRunCommandBase_1_1ExecId}{ExecId} {\bfseries \_\-exec\_\-id}}
\label{classRunCommandBase_a90f4ee55ff1a1b9486156a565a4925ee}

\item 
\hypertarget{classRunCommandBase_a3ff420ffe264042a6cc28e21e00bc1b5}{
bool {\bfseries \_\-command\_\-is\_\-exited}}
\label{classRunCommandBase_a3ff420ffe264042a6cc28e21e00bc1b5}

\item 
\hypertarget{classRunCommandBase_a3ccdb04a8c35fc9456f0cf664400820b}{
bool {\bfseries \_\-command\_\-is\_\-signal\_\-terminated}}
\label{classRunCommandBase_a3ccdb04a8c35fc9456f0cf664400820b}

\item 
\hypertarget{classRunCommandBase_a6fc2b28ccbe3969eaca28c8040bf3eef}{
bool {\bfseries \_\-command\_\-is\_\-coredumped}}
\label{classRunCommandBase_a6fc2b28ccbe3969eaca28c8040bf3eef}

\item 
\hypertarget{classRunCommandBase_ac50906dbb8a563cfe4aa469087f28364}{
bool {\bfseries \_\-command\_\-is\_\-stopped}}
\label{classRunCommandBase_ac50906dbb8a563cfe4aa469087f28364}

\item 
\hypertarget{classRunCommandBase_aa20b16090280b8428a2eeb7efb9279e9}{
int {\bfseries \_\-command\_\-exit\_\-status}}
\label{classRunCommandBase_aa20b16090280b8428a2eeb7efb9279e9}

\item 
\hypertarget{classRunCommandBase_a8bed5ab6363086ac7b748e956b25ed00}{
int {\bfseries \_\-command\_\-term\_\-signal}}
\label{classRunCommandBase_a8bed5ab6363086ac7b748e956b25ed00}

\item 
\hypertarget{classRunCommandBase_aa33b5ff9115c2cba2f32bfe3bbf5174b}{
int {\bfseries \_\-command\_\-stop\_\-signal}}
\label{classRunCommandBase_aa33b5ff9115c2cba2f32bfe3bbf5174b}

\item 
\hypertarget{classRunCommandBase_a01bc6813ad2c86676c8d61d6de29ce27}{
\hyperlink{classXorpTimer}{XorpTimer} {\bfseries \_\-done\_\-timer}}
\label{classRunCommandBase_a01bc6813ad2c86676c8d61d6de29ce27}

\item 
\hypertarget{classRunCommandBase_a814c3c1228662f867a0fc59a79747be5}{
bool {\bfseries \_\-stdout\_\-eof\_\-received}}
\label{classRunCommandBase_a814c3c1228662f867a0fc59a79747be5}

\item 
\hypertarget{classRunCommandBase_ad00f9215cd55ea56f0f003cdfe9e7524}{
bool {\bfseries \_\-stderr\_\-eof\_\-received}}
\label{classRunCommandBase_ad00f9215cd55ea56f0f003cdfe9e7524}

\item 
\hypertarget{classRunCommandBase_a7aed047b1abaa952e8abd84b8e64bd97}{
int {\bfseries \_\-task\_\-priority}}
\label{classRunCommandBase_a7aed047b1abaa952e8abd84b8e64bd97}

\end{DoxyCompactItemize}
\subsection*{Static Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classRunCommandBase_a9745b43941db89f625bff051dc747a52}{
static const size\_\-t {\bfseries BUF\_\-SIZE} = 8192}
\label{classRunCommandBase_a9745b43941db89f625bff051dc747a52}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
Base virtual class for running an external command. 

\subsection{Constructor \& Destructor Documentation}
\hypertarget{classRunCommandBase_a5cade4af9090c63ec361477f0ebcee02}{
\index{RunCommandBase@{RunCommandBase}!RunCommandBase@{RunCommandBase}}
\index{RunCommandBase@{RunCommandBase}!RunCommandBase@{RunCommandBase}}
\subsubsection[{RunCommandBase}]{\setlength{\rightskip}{0pt plus 5cm}RunCommandBase::RunCommandBase (
\begin{DoxyParamCaption}
\item[{{\bf EventLoop} \&}]{eventloop, }
\item[{const string \&}]{command, }
\item[{const string \&}]{real\_\-command\_\-name, }
\item[{int}]{task\_\-priority = {\ttfamily XorpTask::PRIORITY\_\-DEFAULT}}
\end{DoxyParamCaption}
)}}
\label{classRunCommandBase_a5cade4af9090c63ec361477f0ebcee02}


Constructor for a given command. 


\begin{DoxyParams}{Parameters}
{\em eventloop} & \hyperlink{protocolthe-p}{the} event loop. \\
\hline
{\em command} & \hyperlink{protocolthe-p}{the} command to execute. \\
\hline
{\em real\_\-command\_\-name} & \hyperlink{protocolthe-p}{the} real command name. \\
\hline
{\em task\_\-priority} & \hyperlink{protocolthe-p}{the} priority to read stdout and stderr. \\
\hline
\end{DoxyParams}


\subsection{Member Function Documentation}
\hypertarget{classRunCommandBase_a12e3a719c3d1e422284646f7a958ecb5}{
\index{RunCommandBase@{RunCommandBase}!append\_\-data@{append\_\-data}}
\index{append\_\-data@{append\_\-data}!RunCommandBase@{RunCommandBase}}
\subsubsection[{append\_\-data}]{\setlength{\rightskip}{0pt plus 5cm}void RunCommandBase::append\_\-data (
\begin{DoxyParamCaption}
\item[{AsyncFileOperator::Event}]{event, }
\item[{const uint8\_\-t $\ast$}]{buffer, }
\item[{size\_\-t}]{buffer\_\-bytes, }
\item[{size\_\-t}]{offset}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classRunCommandBase_a12e3a719c3d1e422284646f7a958ecb5}


Append data from \hyperlink{protocolthe-p}{the} command. 


\begin{DoxyParams}{Parameters}
{\em event} & \hyperlink{protocolthe-p}{the} event from \hyperlink{protocolthe-p}{the} command (\\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
AsyncFileOperator::Event). 
\end{DoxySeeAlso}

\begin{DoxyParams}{Parameters}
{\em buffer} & \hyperlink{protocolthe-p}{the} buffer with \hyperlink{protocolthe-p}{the} data. \\
\hline
{\em buffer\_\-bytes} & \hyperlink{protocolthe-p}{the} maximum number of bytes in \hyperlink{protocolthe-p}{the} buffer. \\
\hline
{\em offset} & offset of \hyperlink{protocolthe-p}{the} last byte read. \\
\hline
\end{DoxyParams}
\hypertarget{classRunCommandBase_a6f57775831bf5edf5e8c167c14d06b86}{
\index{RunCommandBase@{RunCommandBase}!argument\_\-list@{argument\_\-list}}
\index{argument\_\-list@{argument\_\-list}!RunCommandBase@{RunCommandBase}}
\subsubsection[{argument\_\-list}]{\setlength{\rightskip}{0pt plus 5cm}const list$<$string$>$\& RunCommandBase::argument\_\-list (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classRunCommandBase_a6f57775831bf5edf5e8c167c14d06b86}


Get \hyperlink{protocolthe-p}{the} list with \hyperlink{protocolthe-p}{the} arguments of \hyperlink{protocolthe-p}{the} command to execute. 

\begin{DoxyReturn}{Returns}
a string with \hyperlink{protocolthe-p}{the} arguments of \hyperlink{protocolthe-p}{the} command to execute. 
\end{DoxyReturn}
\hypertarget{classRunCommandBase_a40cba83baaab4697d7a78d32914e6405}{
\index{RunCommandBase@{RunCommandBase}!command@{command}}
\index{command@{command}!RunCommandBase@{RunCommandBase}}
\subsubsection[{command}]{\setlength{\rightskip}{0pt plus 5cm}const string\& RunCommandBase::command (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classRunCommandBase_a40cba83baaab4697d7a78d32914e6405}


Get \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} command to execute. 

\begin{DoxyReturn}{Returns}
a string with \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} command to execute. 
\end{DoxyReturn}
\hypertarget{classRunCommandBase_af8c601a3e5b72d54f62ebd59ef23481e}{
\index{RunCommandBase@{RunCommandBase}!done@{done}}
\index{done@{done}!RunCommandBase@{RunCommandBase}}
\subsubsection[{done}]{\setlength{\rightskip}{0pt plus 5cm}void RunCommandBase::done (
\begin{DoxyParamCaption}
\item[{{\bf XorpTimer} \&}]{done\_\-timer}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classRunCommandBase_af8c601a3e5b72d54f62ebd59ef23481e}


The command has completed. 


\begin{DoxyParams}{Parameters}
{\em done\_\-timer} & \hyperlink{protocolthe-p}{the} timer associated with \hyperlink{protocolthe-p}{the} event. \\
\hline
\end{DoxyParams}
\hypertarget{classRunCommandBase_a4aa3c786fd92edb82a88a137e8e6a168}{
\index{RunCommandBase@{RunCommandBase}!done\_\-cb\_\-dispatch@{done\_\-cb\_\-dispatch}}
\index{done\_\-cb\_\-dispatch@{done\_\-cb\_\-dispatch}!RunCommandBase@{RunCommandBase}}
\subsubsection[{done\_\-cb\_\-dispatch}]{\setlength{\rightskip}{0pt plus 5cm}virtual void RunCommandBase::done\_\-cb\_\-dispatch (
\begin{DoxyParamCaption}
\item[{bool}]{success, }
\item[{const string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private, pure virtual\mbox{]}}}}
\label{classRunCommandBase_a4aa3c786fd92edb82a88a137e8e6a168}


A pure virtual method called when \hyperlink{protocolthe-p}{the} program execution is completed. 


\begin{DoxyParams}{Parameters}
{\em success} & if true \hyperlink{protocolthe-p}{the} program execution has succeeded, otherwise it has failed. \\
\hline
{\em error\_\-msg} & if error, \hyperlink{protocolthe-p}{the} string with \hyperlink{protocolthe-p}{the} error message. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{classRunCommand_a809093e0ce9afd9ca851c2107774c0a5}{RunCommand}, and \hyperlink{classRunShellCommand_ae2447c9489acea8b54b551947eadb421}{RunShellCommand}.

\hypertarget{classRunCommandBase_a7b6767b3b8fb8cad1c9ff1360246eb96}{
\index{RunCommandBase@{RunCommandBase}!exec\_\-id@{exec\_\-id}}
\index{exec\_\-id@{exec\_\-id}!RunCommandBase@{RunCommandBase}}
\subsubsection[{exec\_\-id}]{\setlength{\rightskip}{0pt plus 5cm}{\bf ExecId}\& RunCommandBase::exec\_\-id (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classRunCommandBase_a7b6767b3b8fb8cad1c9ff1360246eb96}


Get a reference to \hyperlink{protocolthe-p}{the} \hyperlink{classRunCommandBase_1_1ExecId}{ExecId} object. 

\begin{DoxyReturn}{Returns}
a reference to \hyperlink{protocolthe-p}{the} \hyperlink{classRunCommandBase_1_1ExecId}{ExecId} object that is used for setting \hyperlink{protocolthe-p}{the} execution ID when running \hyperlink{protocolthe-p}{the} command. 
\end{DoxyReturn}
\hypertarget{classRunCommandBase_a96f7fb2617958b13c1043982fac789f4}{
\index{RunCommandBase@{RunCommandBase}!execute@{execute}}
\index{execute@{execute}!RunCommandBase@{RunCommandBase}}
\subsubsection[{execute}]{\setlength{\rightskip}{0pt plus 5cm}int RunCommandBase::execute (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}
\label{classRunCommandBase_a96f7fb2617958b13c1043982fac789f4}


Execute \hyperlink{protocolthe-p}{the} command. 

\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}
\hypertarget{classRunCommandBase_a42f5310fab9185d25ab89793553963ed}{
\index{RunCommandBase@{RunCommandBase}!exit\_\-status@{exit\_\-status}}
\index{exit\_\-status@{exit\_\-status}!RunCommandBase@{RunCommandBase}}
\subsubsection[{exit\_\-status}]{\setlength{\rightskip}{0pt plus 5cm}int RunCommandBase::exit\_\-status (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classRunCommandBase_a42f5310fab9185d25ab89793553963ed}


Get \hyperlink{protocolthe-p}{the} command exit status. 

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} command exit status. 
\end{DoxyReturn}
\hypertarget{classRunCommandBase_acc35dcb758c37e9919207cabe12b3d27}{
\index{RunCommandBase@{RunCommandBase}!io\_\-done@{io\_\-done}}
\index{io\_\-done@{io\_\-done}!RunCommandBase@{RunCommandBase}}
\subsubsection[{io\_\-done}]{\setlength{\rightskip}{0pt plus 5cm}void RunCommandBase::io\_\-done (
\begin{DoxyParamCaption}
\item[{AsyncFileOperator::Event}]{event, }
\item[{int}]{error\_\-code}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classRunCommandBase_acc35dcb758c37e9919207cabe12b3d27}


The command's I/O operation has completed. 


\begin{DoxyParams}{Parameters}
{\em event} & \hyperlink{protocolthe-p}{the} last event from \hyperlink{protocolthe-p}{the} command. (\\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
AsyncFileOperator::Event). 
\end{DoxySeeAlso}

\begin{DoxyParams}{Parameters}
{\em error\_\-code} & \hyperlink{protocolthe-p}{the} error code if \hyperlink{protocolthe-p}{the} event indicates an error (e.g., if it is not equal to AsyncFileOperator::END\_\-OF\_\-FILE), otherwise its value is ignored. \\
\hline
\end{DoxyParams}
\hypertarget{classRunCommandBase_a09daac02ced1f53129dd46d7a0addc43}{
\index{RunCommandBase@{RunCommandBase}!is\_\-coredumped@{is\_\-coredumped}}
\index{is\_\-coredumped@{is\_\-coredumped}!RunCommandBase@{RunCommandBase}}
\subsubsection[{is\_\-coredumped}]{\setlength{\rightskip}{0pt plus 5cm}bool RunCommandBase::is\_\-coredumped (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classRunCommandBase_a09daac02ced1f53129dd46d7a0addc43}


Test if \hyperlink{protocolthe-p}{the} command has coredumped. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} command has coredumped, otherwise false. 
\end{DoxyReturn}
\hypertarget{classRunCommandBase_ad9b1fb95fd4ec625132f048d6a58042f}{
\index{RunCommandBase@{RunCommandBase}!is\_\-exited@{is\_\-exited}}
\index{is\_\-exited@{is\_\-exited}!RunCommandBase@{RunCommandBase}}
\subsubsection[{is\_\-exited}]{\setlength{\rightskip}{0pt plus 5cm}bool RunCommandBase::is\_\-exited (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classRunCommandBase_ad9b1fb95fd4ec625132f048d6a58042f}


Test if \hyperlink{protocolthe-p}{the} command has exited. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} command has exited, otherwise false. 
\end{DoxyReturn}
\hypertarget{classRunCommandBase_a1a3dcf6264a36c4703e2061c410a5f48}{
\index{RunCommandBase@{RunCommandBase}!is\_\-signal\_\-terminated@{is\_\-signal\_\-terminated}}
\index{is\_\-signal\_\-terminated@{is\_\-signal\_\-terminated}!RunCommandBase@{RunCommandBase}}
\subsubsection[{is\_\-signal\_\-terminated}]{\setlength{\rightskip}{0pt plus 5cm}bool RunCommandBase::is\_\-signal\_\-terminated (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classRunCommandBase_a1a3dcf6264a36c4703e2061c410a5f48}


Test if \hyperlink{protocolthe-p}{the} command has been terminated by a signal. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} command has been terminated by a signal, otherwise false. 
\end{DoxyReturn}
\hypertarget{classRunCommandBase_aefe00c502a330c6c83ac6486849a80b2}{
\index{RunCommandBase@{RunCommandBase}!is\_\-stopped@{is\_\-stopped}}
\index{is\_\-stopped@{is\_\-stopped}!RunCommandBase@{RunCommandBase}}
\subsubsection[{is\_\-stopped}]{\setlength{\rightskip}{0pt plus 5cm}bool RunCommandBase::is\_\-stopped (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classRunCommandBase_aefe00c502a330c6c83ac6486849a80b2}


Test if \hyperlink{protocolthe-p}{the} command has been stopped. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} command has been stopped, otherwise false. 
\end{DoxyReturn}
\hypertarget{classRunCommandBase_ac01e741861440cee2d8020099f4f3af3}{
\index{RunCommandBase@{RunCommandBase}!redirect\_\-stderr\_\-to\_\-stdout@{redirect\_\-stderr\_\-to\_\-stdout}}
\index{redirect\_\-stderr\_\-to\_\-stdout@{redirect\_\-stderr\_\-to\_\-stdout}!RunCommandBase@{RunCommandBase}}
\subsubsection[{redirect\_\-stderr\_\-to\_\-stdout}]{\setlength{\rightskip}{0pt plus 5cm}virtual bool RunCommandBase::redirect\_\-stderr\_\-to\_\-stdout (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}private, pure virtual\mbox{]}}}}
\label{classRunCommandBase_ac01e741861440cee2d8020099f4f3af3}


Test if \hyperlink{protocolthe-p}{the} stderr should be redirected to stdout. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} stderr should be redirected to stdout, otherwise false. 
\end{DoxyReturn}


Implemented in \hyperlink{classRunCommand_a033add2c10867058846aa8fd0be28590}{RunCommand}, and \hyperlink{classRunShellCommand_a8ed250ed459f7a9bce2c2530e8a55f85}{RunShellCommand}.

\hypertarget{classRunCommandBase_a4ca748dcf6bc7f5253b71f65606a1412}{
\index{RunCommandBase@{RunCommandBase}!set\_\-argument\_\-list@{set\_\-argument\_\-list}}
\index{set\_\-argument\_\-list@{set\_\-argument\_\-list}!RunCommandBase@{RunCommandBase}}
\subsubsection[{set\_\-argument\_\-list}]{\setlength{\rightskip}{0pt plus 5cm}void RunCommandBase::set\_\-argument\_\-list (
\begin{DoxyParamCaption}
\item[{const list$<$ string $>$ \&}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classRunCommandBase_a4ca748dcf6bc7f5253b71f65606a1412}


Set \hyperlink{protocolthe-p}{the} list with \hyperlink{protocolthe-p}{the} arguments for \hyperlink{protocolthe-p}{the} command to execute. 


\begin{DoxyParams}{Parameters}
{\em v} & \hyperlink{protocolthe-p}{the} list with \hyperlink{protocolthe-p}{the} arguments for \hyperlink{protocolthe-p}{the} command to execute. \\
\hline
\end{DoxyParams}
\hypertarget{classRunCommandBase_a5ccc2f61b7c19d6e6f97d3cbf4ec7dfc}{
\index{RunCommandBase@{RunCommandBase}!set\_\-command\_\-status@{set\_\-command\_\-status}}
\index{set\_\-command\_\-status@{set\_\-command\_\-status}!RunCommandBase@{RunCommandBase}}
\subsubsection[{set\_\-command\_\-status}]{\setlength{\rightskip}{0pt plus 5cm}void RunCommandBase::set\_\-command\_\-status (
\begin{DoxyParamCaption}
\item[{int}]{status}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classRunCommandBase_a5ccc2f61b7c19d6e6f97d3cbf4ec7dfc}


Set \hyperlink{protocolthe-p}{the} command status. 


\begin{DoxyParams}{Parameters}
{\em status} & \hyperlink{protocolthe-p}{the} command status. \\
\hline
\end{DoxyParams}
\hypertarget{classRunCommandBase_a36d55f241168a0e7ed903d59ea4da8e1}{
\index{RunCommandBase@{RunCommandBase}!set\_\-exec\_\-id@{set\_\-exec\_\-id}}
\index{set\_\-exec\_\-id@{set\_\-exec\_\-id}!RunCommandBase@{RunCommandBase}}
\subsubsection[{set\_\-exec\_\-id}]{\setlength{\rightskip}{0pt plus 5cm}void RunCommandBase::set\_\-exec\_\-id (
\begin{DoxyParamCaption}
\item[{const {\bf ExecId} \&}]{v}
\end{DoxyParamCaption}
)}}
\label{classRunCommandBase_a36d55f241168a0e7ed903d59ea4da8e1}


Set \hyperlink{protocolthe-p}{the} execution ID for executing \hyperlink{protocolthe-p}{the} command. 


\begin{DoxyParams}{Parameters}
{\em v} & \hyperlink{protocolthe-p}{the} execution ID. \\
\hline
\end{DoxyParams}
\hypertarget{classRunCommandBase_a833ab982fedea6e028a5ededd42cafb9}{
\index{RunCommandBase@{RunCommandBase}!stderr\_\-cb\_\-dispatch@{stderr\_\-cb\_\-dispatch}}
\index{stderr\_\-cb\_\-dispatch@{stderr\_\-cb\_\-dispatch}!RunCommandBase@{RunCommandBase}}
\subsubsection[{stderr\_\-cb\_\-dispatch}]{\setlength{\rightskip}{0pt plus 5cm}virtual void RunCommandBase::stderr\_\-cb\_\-dispatch (
\begin{DoxyParamCaption}
\item[{const string \&}]{output}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private, pure virtual\mbox{]}}}}
\label{classRunCommandBase_a833ab982fedea6e028a5ededd42cafb9}


A pure virtual method called when there is output on \hyperlink{protocolthe-p}{the} program's stderr. 


\begin{DoxyParams}{Parameters}
{\em output} & \hyperlink{protocolthe-p}{the} string with \hyperlink{protocolthe-p}{the} output. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{classRunCommand_a16293958b5060404c58729ef07765c92}{RunCommand}, and \hyperlink{classRunShellCommand_a7c388ff46cdfc24f5adc7c400022f6b6}{RunShellCommand}.

\hypertarget{classRunCommandBase_a50f880e4432f18bb183ef3f6ad07bd1d}{
\index{RunCommandBase@{RunCommandBase}!stdout\_\-cb\_\-dispatch@{stdout\_\-cb\_\-dispatch}}
\index{stdout\_\-cb\_\-dispatch@{stdout\_\-cb\_\-dispatch}!RunCommandBase@{RunCommandBase}}
\subsubsection[{stdout\_\-cb\_\-dispatch}]{\setlength{\rightskip}{0pt plus 5cm}virtual void RunCommandBase::stdout\_\-cb\_\-dispatch (
\begin{DoxyParamCaption}
\item[{const string \&}]{output}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private, pure virtual\mbox{]}}}}
\label{classRunCommandBase_a50f880e4432f18bb183ef3f6ad07bd1d}


A pure virtual method called when there is output on \hyperlink{protocolthe-p}{the} program's stdout. 


\begin{DoxyParams}{Parameters}
{\em output} & \hyperlink{protocolthe-p}{the} string with \hyperlink{protocolthe-p}{the} output. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{classRunCommand_ac5fe3e77edfa318382a751c82cf29960}{RunCommand}, and \hyperlink{classRunShellCommand_a97e8ba432ed1b07bbb56ed08a52817e0}{RunShellCommand}.

\hypertarget{classRunCommandBase_a40503d2ec18c6f14cfe16a308174ef5e}{
\index{RunCommandBase@{RunCommandBase}!stop\_\-signal@{stop\_\-signal}}
\index{stop\_\-signal@{stop\_\-signal}!RunCommandBase@{RunCommandBase}}
\subsubsection[{stop\_\-signal}]{\setlength{\rightskip}{0pt plus 5cm}int RunCommandBase::stop\_\-signal (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classRunCommandBase_a40503d2ec18c6f14cfe16a308174ef5e}


Get \hyperlink{protocolthe-p}{the} signal that stopped \hyperlink{protocolthe-p}{the} command. 

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} signal that stopped \hyperlink{protocolthe-p}{the} command. 
\end{DoxyReturn}
\hypertarget{classRunCommandBase_a44d555a1227851a4d57c446aa25af125}{
\index{RunCommandBase@{RunCommandBase}!stopped\_\-cb\_\-dispatch@{stopped\_\-cb\_\-dispatch}}
\index{stopped\_\-cb\_\-dispatch@{stopped\_\-cb\_\-dispatch}!RunCommandBase@{RunCommandBase}}
\subsubsection[{stopped\_\-cb\_\-dispatch}]{\setlength{\rightskip}{0pt plus 5cm}virtual void RunCommandBase::stopped\_\-cb\_\-dispatch (
\begin{DoxyParamCaption}
\item[{int}]{stop\_\-signal}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private, pure virtual\mbox{]}}}}
\label{classRunCommandBase_a44d555a1227851a4d57c446aa25af125}


A pure virtual method called when \hyperlink{protocolthe-p}{the} program has been stopped. 


\begin{DoxyParams}{Parameters}
{\em stop\_\-signal} & \hyperlink{protocolthe-p}{the} signal used to stop \hyperlink{protocolthe-p}{the} program. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{classRunCommand_ae9521a86c411b5e30eb14c93cf40bfdc}{RunCommand}, and \hyperlink{classRunShellCommand_a52d8c1c3c580b77ba575233e80818c4b}{RunShellCommand}.

\hypertarget{classRunCommandBase_a61cb87718b61d14089e24cb9c600bb40}{
\index{RunCommandBase@{RunCommandBase}!task\_\-priority@{task\_\-priority}}
\index{task\_\-priority@{task\_\-priority}!RunCommandBase@{RunCommandBase}}
\subsubsection[{task\_\-priority}]{\setlength{\rightskip}{0pt plus 5cm}int RunCommandBase::task\_\-priority (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classRunCommandBase_a61cb87718b61d14089e24cb9c600bb40}


Get \hyperlink{protocolthe-p}{the} priority to use when reading output from \hyperlink{protocolthe-p}{the} command. 

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} stdout and stderr priority. 
\end{DoxyReturn}
\hypertarget{classRunCommandBase_a40042b5d63ad6455085afdc6f5b5025a}{
\index{RunCommandBase@{RunCommandBase}!term\_\-signal@{term\_\-signal}}
\index{term\_\-signal@{term\_\-signal}!RunCommandBase@{RunCommandBase}}
\subsubsection[{term\_\-signal}]{\setlength{\rightskip}{0pt plus 5cm}int RunCommandBase::term\_\-signal (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classRunCommandBase_a40042b5d63ad6455085afdc6f5b5025a}


Get \hyperlink{protocolthe-p}{the} signal that terminated \hyperlink{protocolthe-p}{the} command. 

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} signal that terminated \hyperlink{protocolthe-p}{the} command. 
\end{DoxyReturn}
\hypertarget{classRunCommandBase_aa45bde968a7ef1fbfb68b47a3631da77}{
\index{RunCommandBase@{RunCommandBase}!terminate\_\-process@{terminate\_\-process}}
\index{terminate\_\-process@{terminate\_\-process}!RunCommandBase@{RunCommandBase}}
\subsubsection[{terminate\_\-process}]{\setlength{\rightskip}{0pt plus 5cm}void RunCommandBase::terminate\_\-process (
\begin{DoxyParamCaption}
\item[{bool}]{with\_\-prejudice}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classRunCommandBase_aa45bde968a7ef1fbfb68b47a3631da77}


Terminate \hyperlink{protocolthe-p}{the} process. 


\begin{DoxyParams}{Parameters}
{\em with\_\-prejudice} & if true then terminate \hyperlink{protocolthe-p}{the} process with prejudice, otherwise attempt to kill it gracefully. \\
\hline
\end{DoxyParams}
\hypertarget{classRunCommandBase_a0f3ce2e66df0bc59445f92502330bf94}{
\index{RunCommandBase@{RunCommandBase}!wait\_\-status\_\-changed@{wait\_\-status\_\-changed}}
\index{wait\_\-status\_\-changed@{wait\_\-status\_\-changed}!RunCommandBase@{RunCommandBase}}
\subsubsection[{wait\_\-status\_\-changed}]{\setlength{\rightskip}{0pt plus 5cm}void RunCommandBase::wait\_\-status\_\-changed (
\begin{DoxyParamCaption}
\item[{int}]{wait\_\-status}
\end{DoxyParamCaption}
)}}
\label{classRunCommandBase_a0f3ce2e66df0bc59445f92502330bf94}


Receive a notification that \hyperlink{protocolthe-p}{the} status of \hyperlink{protocolthe-p}{the} process has changed. 


\begin{DoxyParams}{Parameters}
{\em wait\_\-status} & \hyperlink{protocolthe-p}{the} wait status. \\
\hline
\end{DoxyParams}


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