\section{ost::DSO Class Reference} \label{classost_1_1_d_s_o}\index{ost::DSO@{ost::DSO}} The {\bf DSO}{\rm (p.\,\pageref{classost_1_1_d_s_o})} dynamic loader class is used to load object files.Dynamic class file loader. {\tt \#include $<$file.h$>$} \subsection*{Public Member Functions} \begin{CompactItemize} \item {\bf DSO} (const char $\ast$filename) \begin{CompactList}\small\item\em Construct and load a {\bf DSO}{\rm (p.\,\pageref{classost_1_1_d_s_o})} object file. \item\end{CompactList}\item {\bf DSO} (const char $\ast$filename, bool resolve) \item const char $\ast$ {\bf get\-Error} (void) \begin{CompactList}\small\item\em Retrieve error indicator associated with {\bf DSO}{\rm (p.\,\pageref{classost_1_1_d_s_o})} failure. \item\end{CompactList}\item virtual {\bf $\sim$DSO} () \begin{CompactList}\small\item\em Detach a {\bf DSO}{\rm (p.\,\pageref{classost_1_1_d_s_o})} object from running memory. \item\end{CompactList}\item void $\ast$ {\bf operator[$\,$]} (const char $\ast$sym) \begin{CompactList}\small\item\em Lookup a symbol in the loaded file. \item\end{CompactList}\item bool {\bf is\-Valid} (void) \begin{CompactList}\small\item\em See if {\bf DSO}{\rm (p.\,\pageref{classost_1_1_d_s_o})} object is valid. \item\end{CompactList}\end{CompactItemize} \subsection*{Static Public Member Functions} \begin{CompactItemize} \item static void {\bf dynunload} (void) \item static {\bf DSO} $\ast$ {\bf get\-Object} (const char $\ast$name) \begin{CompactList}\small\item\em Find a specific {\bf DSO}{\rm (p.\,\pageref{classost_1_1_d_s_o})} object by filename. \item\end{CompactList}\item static void {\bf set\-Debug} (void) \begin{CompactList}\small\item\em Install debug handler. \item\end{CompactList}\end{CompactItemize} \subsection{Detailed Description} The {\bf DSO}{\rm (p.\,\pageref{classost_1_1_d_s_o})} dynamic loader class is used to load object files.Dynamic class file loader. On elf based systems this is typically done with dlopen. A dummy stub class is generated for non-dl capable systems. \begin{Desc} \item[Author:]David Sugar $<${\tt dyfet@ostel.com}$>$ \end{Desc} \subsection{Constructor \& Destructor Documentation} \index{ost::DSO@{ost::DSO}!DSO@{DSO}} \index{DSO@{DSO}!ost::DSO@{ost::DSO}} \subsubsection{\setlength{\rightskip}{0pt plus 5cm}ost::DSO::DSO (const char $\ast$ {\em filename})\hspace{0.3cm}{\tt [inline]}}\label{classost_1_1_d_s_o_38010e609db983bf8c07120b47c82078} Construct and load a {\bf DSO}{\rm (p.\,\pageref{classost_1_1_d_s_o})} object file. \begin{Desc} \item[Parameters:] \begin{description} \item[{\em filename}]pathname of object file to load. \end{description} \end{Desc} \index{ost::DSO@{ost::DSO}!DSO@{DSO}} \index{DSO@{DSO}!ost::DSO@{ost::DSO}} \subsubsection{\setlength{\rightskip}{0pt plus 5cm}ost::DSO::DSO (const char $\ast$ {\em filename}, bool {\em resolve})\hspace{0.3cm}{\tt [inline]}}\label{classost_1_1_d_s_o_2b4df72c23dbca413654f26ca8f838c3} \index{ost::DSO@{ost::DSO}!~DSO@{$\sim$DSO}} \index{~DSO@{$\sim$DSO}!ost::DSO@{ost::DSO}} \subsubsection{\setlength{\rightskip}{0pt plus 5cm}virtual ost::DSO::$\sim$DSO ()\hspace{0.3cm}{\tt [virtual]}}\label{classost_1_1_d_s_o_b7f43ecf6333f5113f88b3d55666e1d5} Detach a {\bf DSO}{\rm (p.\,\pageref{classost_1_1_d_s_o})} object from running memory. \subsection{Member Function Documentation} \index{ost::DSO@{ost::DSO}!dynunload@{dynunload}} \index{dynunload@{dynunload}!ost::DSO@{ost::DSO}} \subsubsection{\setlength{\rightskip}{0pt plus 5cm}static void ost::DSO::dynunload (void)\hspace{0.3cm}{\tt [static]}}\label{classost_1_1_d_s_o_120c579bd5e2c5dd06f2e6cf1ec92d32} \index{ost::DSO@{ost::DSO}!getError@{getError}} \index{getError@{getError}!ost::DSO@{ost::DSO}} \subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ ost::DSO::get\-Error (void)\hspace{0.3cm}{\tt [inline]}}\label{classost_1_1_d_s_o_e6c8fceb1e5545d692322ed3cfcbe809} Retrieve error indicator associated with {\bf DSO}{\rm (p.\,\pageref{classost_1_1_d_s_o})} failure. This is often used in catch handlers. \index{ost::DSO@{ost::DSO}!getObject@{getObject}} \index{getObject@{getObject}!ost::DSO@{ost::DSO}} \subsubsection{\setlength{\rightskip}{0pt plus 5cm}static {\bf DSO}$\ast$ ost::DSO::get\-Object (const char $\ast$ {\em name})\hspace{0.3cm}{\tt [static]}}\label{classost_1_1_d_s_o_b7d42e693b871e14c1b93335cfc15258} Find a specific {\bf DSO}{\rm (p.\,\pageref{classost_1_1_d_s_o})} object by filename. \begin{Desc} \item[Parameters:] \begin{description} \item[{\em name}]of {\bf DSO}{\rm (p.\,\pageref{classost_1_1_d_s_o})} object file (partial). \end{description} \end{Desc} \index{ost::DSO@{ost::DSO}!isValid@{isValid}} \index{isValid@{isValid}!ost::DSO@{ost::DSO}} \subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool ost::DSO::is\-Valid (void)}\label{classost_1_1_d_s_o_10974c00adc03acf0bd768c6506d3948} See if {\bf DSO}{\rm (p.\,\pageref{classost_1_1_d_s_o})} object is valid. \begin{Desc} \item[Returns:]true if valid. \end{Desc} \index{ost::DSO@{ost::DSO}!operator[]@{operator[]}} \index{operator[]@{operator[]}!ost::DSO@{ost::DSO}} \subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ ost::DSO::operator[$\,$] (const char $\ast$ {\em sym})}\label{classost_1_1_d_s_o_28594e78389653353d7c1b89bf71f71e} Lookup a symbol in the loaded file. \index{ost::DSO@{ost::DSO}!setDebug@{setDebug}} \index{setDebug@{setDebug}!ost::DSO@{ost::DSO}} \subsubsection{\setlength{\rightskip}{0pt plus 5cm}static void ost::DSO::set\-Debug (void)\hspace{0.3cm}{\tt [static]}}\label{classost_1_1_d_s_o_186afe2d2a5491670b933345cf835a93} Install debug handler. .. The documentation for this class was generated from the following file:\begin{CompactItemize} \item {\bf file.h}\end{CompactItemize}