interface_8c.tex
2.43 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
\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}