You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
69 lines
2.4 KiB
69 lines
2.4 KiB
\hypertarget{interface_8c}{
|
|
\section{src/interface.c File Reference}
|
|
\label{interface_8c}\index{src/interface.c@{src/interface.c}}
|
|
}
|
|
{\ttfamily \#include $<$sys/types.h$>$}\par
|
|
{\ttfamily \#include $<$stdlib.h$>$}\par
|
|
{\ttfamily \#include \char`\"{}interface.h\char`\"{}}\par
|
|
Include dependency graph for interface.c:
|
|
\subsection*{Defines}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\#define \hyperlink{interface_8c_aa8cecfc5c5c054d2875c03e77b7be15d}{TRUE}~1
|
|
\end{DoxyCompactItemize}
|
|
\subsection*{Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
struct \hyperlink{structinterface}{interface} $\ast$ \hyperlink{interface_8c_a3592671f742071d6b215f46ba58f53ab}{interfaceGet} (\hyperlink{structiface__impl}{iface\_\-impl\_\-ptr} \hyperlink{structiface__impl}{iface\_\-impl}, const \hyperlink{structinterface}{iface\_\-ptr} \_\-iface)
|
|
\end{DoxyCompactItemize}
|
|
|
|
|
|
\subsection{Define Documentation}
|
|
\hypertarget{interface_8c_aa8cecfc5c5c054d2875c03e77b7be15d}{
|
|
\index{interface.c@{interface.c}!TRUE@{TRUE}}
|
|
\index{TRUE@{TRUE}!interface.c@{interface.c}}
|
|
\subsubsection[{TRUE}]{\setlength{\rightskip}{0pt plus 5cm}\#define TRUE~1}}
|
|
\label{interface_8c_aa8cecfc5c5c054d2875c03e77b7be15d}
|
|
|
|
|
|
Definition at line 7 of file interface.c.
|
|
|
|
|
|
|
|
\subsection{Function Documentation}
|
|
\hypertarget{interface_8c_a3592671f742071d6b215f46ba58f53ab}{
|
|
\index{interface.c@{interface.c}!interfaceGet@{interfaceGet}}
|
|
\index{interfaceGet@{interfaceGet}!interface.c@{interface.c}}
|
|
\subsubsection[{interfaceGet}]{\setlength{\rightskip}{0pt plus 5cm}struct {\bf interface}$\ast$ interfaceGet (
|
|
\begin{DoxyParamCaption}
|
|
\item[{{\bf iface\_\-impl\_\-ptr}}]{iface\_\-impl, }
|
|
\item[{const {\bf iface\_\-ptr}}]{\_\-iface}
|
|
\end{DoxyParamCaption}
|
|
)\hspace{0.3cm}{\ttfamily \mbox{[}read\mbox{]}}}}
|
|
\label{interface_8c_a3592671f742071d6b215f46ba58f53ab}
|
|
this one is important in selector functions to get the correct interface implementation of a class.
|
|
|
|
Definition at line 25 of file interface.c.
|
|
|
|
|
|
\begin{DoxyCode}
|
|
{
|
|
const iface_ptr * iface = &_iface;
|
|
void * dummy;
|
|
|
|
if (! iface_impl->simpl) {
|
|
qsort((void**)(iface_impl->impl), iface_impl->nimpl, sizeof(iface_ptr), c
|
|
omp);
|
|
iface_impl->simpl=TRUE;
|
|
}
|
|
|
|
dummy = bsearch(
|
|
&iface,
|
|
iface_impl->impl,
|
|
iface_impl->nimpl,
|
|
sizeof(iface_ptr),
|
|
comp);
|
|
|
|
return dummy? *(struct interface **)dummy : dummy;
|
|
}
|
|
\end{DoxyCode}
|