ia64/xen-unstable

changeset 18179:fa8a39619154

xenapi: Update the xenapi document for pci device assignment support.

Signed-off-by: Yosuke Iwamatsu <y-iwamatsu@ab.jp.nec.com>
author Keir Fraser <keir.fraser@citrix.com>
date Mon Jul 28 11:40:21 2008 +0100 (2008-07-28)
parents 7a35ab9dba8a
children eb71d05f51a2
files docs/xen-api/coversheet.tex docs/xen-api/revision-history.tex docs/xen-api/xenapi-coversheet.tex docs/xen-api/xenapi-datamodel-graph.dot docs/xen-api/xenapi-datamodel.tex
line diff
     1.1 --- a/docs/xen-api/coversheet.tex	Mon Jul 28 11:39:32 2008 +0100
     1.2 +++ b/docs/xen-api/coversheet.tex	Mon Jul 28 11:40:21 2008 +0100
     1.3 @@ -50,7 +50,7 @@ Gareth Bestor, IBM & Jon Ludlam, XenSour
     1.4  Hollis Blanchard, IBM & Alastair Tse, XenSource \\
     1.5  Mike Day, IBM & Daniel Veillard, Red Hat \\
     1.6  Jim Fehlig, Novell & Tom Wilkie, University of Cambridge \\
     1.7 -Jon Harrop, XenSource & \\
     1.8 +Jon Harrop, XenSource & Yosuke Iwamatsu, NEC \\
     1.9  \end{tabular}
    1.10  \end{large}
    1.11  
    1.12 @@ -60,4 +60,4 @@ Jon Harrop, XenSource & \\
    1.13  \legalnotice{}
    1.14  
    1.15  \newpage
    1.16 -\pagestyle{fancy}
    1.17 \ No newline at end of file
    1.18 +\pagestyle{fancy}
     2.1 --- a/docs/xen-api/revision-history.tex	Mon Jul 28 11:39:32 2008 +0100
     2.2 +++ b/docs/xen-api/revision-history.tex	Mon Jul 28 11:40:21 2008 +0100
     2.3 @@ -47,5 +47,14 @@
     2.4      \end{flushleft}
     2.5     \end{minipage}\\
     2.6    \hline
     2.7 +  1.0.6 & 24th Jul. 08 & Y. Iwamatsu &
     2.8 +   \begin{minipage}[t]{7cm}
     2.9 +    \begin{flushleft}
    2.10 +     Added definitions of new classes DPCI and PPCI. Updated the table
    2.11 +     and the diagram representing relationships between classes.
    2.12 +     Added host.PPCIs and VM.DPCIs fields.
    2.13 +    \end{flushleft}
    2.14 +   \end{minipage}\\
    2.15 +  \hline
    2.16   \end{tabular}
    2.17  \end{center}
     3.1 --- a/docs/xen-api/xenapi-coversheet.tex	Mon Jul 28 11:39:32 2008 +0100
     3.2 +++ b/docs/xen-api/xenapi-coversheet.tex	Mon Jul 28 11:40:21 2008 +0100
     3.3 @@ -17,12 +17,12 @@
     3.4  \newcommand{\coversheetlogo}{xen.eps}
     3.5  
     3.6  %% Document date
     3.7 -\newcommand{\datestring}{11th February 2008}
     3.8 +\newcommand{\datestring}{24th July 2008}
     3.9  
    3.10  \newcommand{\releasestatement}{Stable Release}
    3.11  
    3.12  %% Document revision
    3.13 -\newcommand{\revstring}{API Revision 1.0.5}
    3.14 +\newcommand{\revstring}{API Revision 1.0.6}
    3.15  
    3.16  %% Document authors
    3.17  \newcommand{\docauthors}{
     4.1 --- a/docs/xen-api/xenapi-datamodel-graph.dot	Mon Jul 28 11:39:32 2008 +0100
     4.2 +++ b/docs/xen-api/xenapi-datamodel-graph.dot	Mon Jul 28 11:40:21 2008 +0100
     4.3 @@ -14,7 +14,7 @@ fontname="Verdana";
     4.4  
     4.5  node [ shape=box ]; session VM host network VIF PIF SR VDI VBD PBD user XSPolicy ACMPolicy;
     4.6  node [shape=ellipse]; PIF_metrics VIF_metrics VM_metrics VBD_metrics PBD_metrics VM_guest_metrics host_metrics;
     4.7 -node [shape=box]; host_cpu console
     4.8 +node [shape=box]; DPCI PPCI host_cpu console
     4.9  session -> host [ arrowhead="none" ]
    4.10  session -> user [ arrowhead="none" ]
    4.11  VM -> VM_metrics [ arrowhead="none" ]
    4.12 @@ -22,7 +22,7 @@ VM -> VM_guest_metrics [ arrowhead="none
    4.13  VM -> console [ arrowhead="crow" ]
    4.14  host -> PBD [ arrowhead="crow", arrowtail="none" ]
    4.15  host -> host_metrics [ arrowhead="none" ]
    4.16 -host -> host_cpu [ arrowhead="none" ]
    4.17 +host -> host_cpu [ arrowhead="crow", arrowtail="none" ]
    4.18  VIF -> VM [ arrowhead="none", arrowtail="crow" ]
    4.19  VIF -> network [ arrowhead="none", arrowtail="crow" ]
    4.20  VIF -> VIF_metrics [ arrowhead="none" ]
    4.21 @@ -38,4 +38,7 @@ VTPM -> VM [ arrowhead="none", arrowtail
    4.22  VBD -> VBD_metrics [ arrowhead="none" ]
    4.23  XSPolicy -> host [ arrowhead="none" ]
    4.24  XSPolicy -> ACMPolicy [ arrowhead="none" ]
    4.25 +DPCI -> VM [ arrowhead="none", arrowtail="crow" ]
    4.26 +DPCI -> PPCI [ arrowhead="none" ]
    4.27 +PPCI -> host [ arrowhead="none", arrowtail="crow" ]
    4.28  }
     5.1 --- a/docs/xen-api/xenapi-datamodel.tex	Mon Jul 28 11:39:32 2008 +0100
     5.2 +++ b/docs/xen-api/xenapi-datamodel.tex	Mon Jul 28 11:40:21 2008 +0100
     5.3 @@ -44,6 +44,8 @@ Name & Description \\
     5.4  {\tt crashdump} & A VM crashdump \\
     5.5  {\tt VTPM} & A virtual TPM device \\
     5.6  {\tt console} & A console \\
     5.7 +{\tt DPCI} & A pass-through PCI device \\
     5.8 +{\tt PPCI} & A physical PCI device \\
     5.9  {\tt user} & A user of the system \\
    5.10  {\tt debug} & A basic class for testing \\
    5.11  {\tt XSPolicy} & A class for handling Xen Security Policies \\
    5.12 @@ -70,6 +72,8 @@ PIF.network & network.PIFs & one-to-many
    5.13  SR.VDIs & VDI.SR & many-to-one\\
    5.14  VTPM.VM & VM.VTPMs & one-to-many\\
    5.15  console.VM & VM.consoles & one-to-many\\
    5.16 +DPCI.VM & VM.DPCIs & one-to-many\\
    5.17 +PPCI.host & host.PPCIs & one-to-many\\
    5.18  host.resident\_VMs & VM.resident\_on & many-to-one\\
    5.19  host.host\_CPUs & host\_cpu.host & many-to-one\\
    5.20  \hline
    5.21 @@ -1402,6 +1406,7 @@ Quals & Field & Type & Description \\
    5.22  $\mathit{RO}_\mathit{run}$ &  {\tt VBDs} & (VBD ref) Set & virtual block devices \\
    5.23  $\mathit{RO}_\mathit{run}$ &  {\tt crash\_dumps} & (crashdump ref) Set & crash dumps associated with this VM \\
    5.24  $\mathit{RO}_\mathit{run}$ &  {\tt VTPMs} & (VTPM ref) Set & virtual TPMs \\
    5.25 +$\mathit{RO}_\mathit{run}$ &  {\tt DPCIs} & (DPCI ref) Set & pass-through PCI devices \\
    5.26  $\mathit{RW}$ &  {\tt PV/bootloader} & string & name of or path to bootloader \\
    5.27  $\mathit{RW}$ &  {\tt PV/kernel} & string & path to the kernel \\
    5.28  $\mathit{RW}$ &  {\tt PV/ramdisk} & string & path to the initrd \\
    5.29 @@ -3413,6 +3418,38 @@ value of the field
    5.30  \vspace{0.3cm}
    5.31  \vspace{0.3cm}
    5.32  \vspace{0.3cm}
    5.33 +\subsubsection{RPC name:~get\_DPCIs}
    5.34 +
    5.35 +{\bf Overview:} 
    5.36 +Get the DPCIs field of the given VM.
    5.37 +
    5.38 + \noindent {\bf Signature:} 
    5.39 +\begin{verbatim} ((DPCI ref) Set) get_DPCIs (session_id s, VM ref self)\end{verbatim}
    5.40 +
    5.41 +
    5.42 +\noindent{\bf Arguments:}
    5.43 +
    5.44 + 
    5.45 +\vspace{0.3cm}
    5.46 +\begin{tabular}{|c|c|p{7cm}|}
    5.47 + \hline
    5.48 +{\bf type} & {\bf name} & {\bf description} \\ \hline
    5.49 +{\tt VM ref } & self & reference to the object \\ \hline 
    5.50 +
    5.51 +\end{tabular}
    5.52 +
    5.53 +\vspace{0.3cm}
    5.54 +
    5.55 + \noindent {\bf Return Type:} 
    5.56 +{\tt 
    5.57 +(DPCI ref) Set
    5.58 +}
    5.59 +
    5.60 +
    5.61 +value of the field
    5.62 +\vspace{0.3cm}
    5.63 +\vspace{0.3cm}
    5.64 +\vspace{0.3cm}
    5.65  \subsubsection{RPC name:~get\_PV\_bootloader}
    5.66  
    5.67  {\bf Overview:} 
    5.68 @@ -5480,6 +5517,7 @@ Quals & Field & Type & Description \\
    5.69  $\mathit{RW}$ &  {\tt suspend\_image\_sr} & SR ref & The SR in which VDIs for suspend images are created \\
    5.70  $\mathit{RW}$ &  {\tt crash\_dump\_sr} & SR ref & The SR in which VDIs for crash dumps are created \\
    5.71  $\mathit{RO}_\mathit{run}$ &  {\tt PBDs} & (PBD ref) Set & physical blockdevices \\
    5.72 +$\mathit{RO}_\mathit{run}$ &  {\tt PPCIs} & (PPCI ref) Set & physical PCI devices \\
    5.73  $\mathit{RO}_\mathit{run}$ &  {\tt host\_CPUs} & (host\_cpu ref) Set & The physical CPUs on this host \\
    5.74  $\mathit{RO}_\mathit{run}$ &  {\tt metrics} & host\_metrics ref & metrics associated with this host \\
    5.75  \hline
    5.76 @@ -6774,6 +6812,38 @@ value of the field
    5.77  \vspace{0.3cm}
    5.78  \vspace{0.3cm}
    5.79  \vspace{0.3cm}
    5.80 +\subsubsection{RPC name:~get\_PPCIs}
    5.81 +
    5.82 +{\bf Overview:} 
    5.83 +Get the PPCIs field of the given host.
    5.84 +
    5.85 + \noindent {\bf Signature:} 
    5.86 +\begin{verbatim} ((PPCI ref) Set) get_PPCIs (session_id s, host ref self)\end{verbatim}
    5.87 +
    5.88 +
    5.89 +\noindent{\bf Arguments:}
    5.90 +
    5.91 + 
    5.92 +\vspace{0.3cm}
    5.93 +\begin{tabular}{|c|c|p{7cm}|}
    5.94 + \hline
    5.95 +{\bf type} & {\bf name} & {\bf description} \\ \hline
    5.96 +{\tt host ref } & self & reference to the object \\ \hline 
    5.97 +
    5.98 +\end{tabular}
    5.99 +
   5.100 +\vspace{0.3cm}
   5.101 +
   5.102 + \noindent {\bf Return Type:} 
   5.103 +{\tt 
   5.104 +(PPCI ref) Set
   5.105 +}
   5.106 +
   5.107 +
   5.108 +value of the field
   5.109 +\vspace{0.3cm}
   5.110 +\vspace{0.3cm}
   5.111 +\vspace{0.3cm}
   5.112  \subsubsection{RPC name:~get\_host\_CPUs}
   5.113  
   5.114  {\bf Overview:} 
   5.115 @@ -14464,6 +14534,1195 @@ all fields from the object
   5.116  
   5.117  \vspace{1cm}
   5.118  \newpage
   5.119 +\section{Class: DPCI}
   5.120 +\subsection{Fields for class: DPCI}
   5.121 +\begin{longtable}{|lllp{0.38\textwidth}|}
   5.122 +\hline
   5.123 +\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf DPCI} \\
   5.124 +\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
   5.125 +pass-through PCI device.}} \\
   5.126 +\hline
   5.127 +Quals & Field & Type & Description \\
   5.128 +\hline
   5.129 +$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
   5.130 +$\mathit{RO}_\mathit{inst}$ &  {\tt VM} & VM ref & the virtual machine \\
   5.131 +$\mathit{RO}_\mathit{inst}$ &  {\tt PPCI} & PPCI ref & the physical PCI device \\
   5.132 +$\mathit{RO}_\mathit{inst}$ &  {\tt hotplug\_slot} & int & the slot number to which this PCI device is inserted \\
   5.133 +$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_domain} & int & the virtual domain number \\
   5.134 +$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_bus} & int & the virtual bus number \\
   5.135 +$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_slot} & int & the virtual slot number \\
   5.136 +$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_func} & int & the virtual func number \\
   5.137 +$\mathit{RO}_\mathit{run}$ &  {\tt virtual\_name} & string & the virtual PCI name \\
   5.138 +\hline
   5.139 +\end{longtable}
   5.140 +\subsection{RPCs associated with class: DPCI}
   5.141 +\subsubsection{RPC name:~get\_all}
   5.142 +
   5.143 +{\bf Overview:} 
   5.144 +Return a list of all the DPCIs known to the system.
   5.145 +
   5.146 + \noindent {\bf Signature:} 
   5.147 +\begin{verbatim} ((DPCI ref) Set) get_all (session_id s)\end{verbatim}
   5.148 +
   5.149 +
   5.150 +\vspace{0.3cm}
   5.151 +
   5.152 + \noindent {\bf Return Type:} 
   5.153 +{\tt 
   5.154 +(DPCI ref) Set
   5.155 +}
   5.156 +
   5.157 +
   5.158 +references to all objects
   5.159 +\vspace{0.3cm}
   5.160 +\vspace{0.3cm}
   5.161 +\vspace{0.3cm}
   5.162 +\subsubsection{RPC name:~get\_uuid}
   5.163 +
   5.164 +{\bf Overview:} 
   5.165 +Get the uuid field of the given DPCI.
   5.166 +
   5.167 + \noindent {\bf Signature:} 
   5.168 +\begin{verbatim} string get_uuid (session_id s, DPCI ref self)\end{verbatim}
   5.169 +
   5.170 +
   5.171 +\noindent{\bf Arguments:}
   5.172 +
   5.173 + 
   5.174 +\vspace{0.3cm}
   5.175 +\begin{tabular}{|c|c|p{7cm}|}
   5.176 + \hline
   5.177 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.178 +{\tt DPCI ref } & self & reference to the object \\ \hline 
   5.179 +
   5.180 +\end{tabular}
   5.181 +
   5.182 +\vspace{0.3cm}
   5.183 +
   5.184 + \noindent {\bf Return Type:} 
   5.185 +{\tt 
   5.186 +string
   5.187 +}
   5.188 +
   5.189 +
   5.190 +value of the field
   5.191 +\vspace{0.3cm}
   5.192 +\vspace{0.3cm}
   5.193 +\vspace{0.3cm}
   5.194 +\subsubsection{RPC name:~get\_VM}
   5.195 +
   5.196 +{\bf Overview:} 
   5.197 +Get the VM field of the given DPCI.
   5.198 +
   5.199 + \noindent {\bf Signature:} 
   5.200 +\begin{verbatim} (VM ref) get_VM (session_id s, DPCI ref self)\end{verbatim}
   5.201 +
   5.202 +
   5.203 +\noindent{\bf Arguments:}
   5.204 +
   5.205 + 
   5.206 +\vspace{0.3cm}
   5.207 +\begin{tabular}{|c|c|p{7cm}|}
   5.208 + \hline
   5.209 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.210 +{\tt DPCI ref } & self & reference to the object \\ \hline 
   5.211 +
   5.212 +\end{tabular}
   5.213 +
   5.214 +\vspace{0.3cm}
   5.215 +
   5.216 + \noindent {\bf Return Type:} 
   5.217 +{\tt 
   5.218 +VM ref
   5.219 +}
   5.220 +
   5.221 +
   5.222 +value of the field
   5.223 +\vspace{0.3cm}
   5.224 +\vspace{0.3cm}
   5.225 +\vspace{0.3cm}
   5.226 +\subsubsection{RPC name:~get\_PPCI}
   5.227 +
   5.228 +{\bf Overview:} 
   5.229 +Get the PPCI field of the given DPCI.
   5.230 +
   5.231 + \noindent {\bf Signature:} 
   5.232 +\begin{verbatim} (PPCI ref) get_PPCI (session_id s, DPCI ref self)\end{verbatim}
   5.233 +
   5.234 +
   5.235 +\noindent{\bf Arguments:}
   5.236 +
   5.237 + 
   5.238 +\vspace{0.3cm}
   5.239 +\begin{tabular}{|c|c|p{7cm}|}
   5.240 + \hline
   5.241 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.242 +{\tt DPCI ref } & self & reference to the object \\ \hline 
   5.243 +
   5.244 +\end{tabular}
   5.245 +
   5.246 +\vspace{0.3cm}
   5.247 +
   5.248 + \noindent {\bf Return Type:} 
   5.249 +{\tt 
   5.250 +PPCI ref
   5.251 +}
   5.252 +
   5.253 +
   5.254 +value of the field
   5.255 +\vspace{0.3cm}
   5.256 +\vspace{0.3cm}
   5.257 +\vspace{0.3cm}
   5.258 +\subsubsection{RPC name:~get\_hotplug\_slot}
   5.259 +
   5.260 +{\bf Overview:} 
   5.261 +Get the hotplug\_slot field of the given DPCI.
   5.262 +
   5.263 + \noindent {\bf Signature:} 
   5.264 +\begin{verbatim} int get_hotplug_slot (session_id s, DPCI ref self)\end{verbatim}
   5.265 +
   5.266 +
   5.267 +\noindent{\bf Arguments:}
   5.268 +
   5.269 + 
   5.270 +\vspace{0.3cm}
   5.271 +\begin{tabular}{|c|c|p{7cm}|}
   5.272 + \hline
   5.273 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.274 +{\tt DPCI ref } & self & reference to the object \\ \hline 
   5.275 +
   5.276 +\end{tabular}
   5.277 +
   5.278 +\vspace{0.3cm}
   5.279 +
   5.280 + \noindent {\bf Return Type:} 
   5.281 +{\tt 
   5.282 +int
   5.283 +}
   5.284 +
   5.285 +
   5.286 +value of the field
   5.287 +\vspace{0.3cm}
   5.288 +\vspace{0.3cm}
   5.289 +\vspace{0.3cm}
   5.290 +\subsubsection{RPC name:~get\_virtual\_domain}
   5.291 +
   5.292 +{\bf Overview:} 
   5.293 +Get the virtual\_domain field of the given DPCI.
   5.294 +
   5.295 + \noindent {\bf Signature:} 
   5.296 +\begin{verbatim} int get_virtual_domain (session_id s, DPCI ref self)\end{verbatim}
   5.297 +
   5.298 +
   5.299 +\noindent{\bf Arguments:}
   5.300 +
   5.301 + 
   5.302 +\vspace{0.3cm}
   5.303 +\begin{tabular}{|c|c|p{7cm}|}
   5.304 + \hline
   5.305 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.306 +{\tt DPCI ref } & self & reference to the object \\ \hline 
   5.307 +
   5.308 +\end{tabular}
   5.309 +
   5.310 +\vspace{0.3cm}
   5.311 +
   5.312 + \noindent {\bf Return Type:} 
   5.313 +{\tt 
   5.314 +int
   5.315 +}
   5.316 +
   5.317 +
   5.318 +value of the field
   5.319 +\vspace{0.3cm}
   5.320 +\vspace{0.3cm}
   5.321 +\vspace{0.3cm}
   5.322 +\subsubsection{RPC name:~get\_virtual\_bus}
   5.323 +
   5.324 +{\bf Overview:} 
   5.325 +Get the virtual\_bus field of the given DPCI.
   5.326 +
   5.327 + \noindent {\bf Signature:} 
   5.328 +\begin{verbatim} int get_virtual_bus (session_id s, DPCI ref self)\end{verbatim}
   5.329 +
   5.330 +
   5.331 +\noindent{\bf Arguments:}
   5.332 +
   5.333 + 
   5.334 +\vspace{0.3cm}
   5.335 +\begin{tabular}{|c|c|p{7cm}|}
   5.336 + \hline
   5.337 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.338 +{\tt DPCI ref } & self & reference to the object \\ \hline 
   5.339 +
   5.340 +\end{tabular}
   5.341 +
   5.342 +\vspace{0.3cm}
   5.343 +
   5.344 + \noindent {\bf Return Type:} 
   5.345 +{\tt 
   5.346 +int
   5.347 +}
   5.348 +
   5.349 +
   5.350 +value of the field
   5.351 +\vspace{0.3cm}
   5.352 +\vspace{0.3cm}
   5.353 +\vspace{0.3cm}
   5.354 +\subsubsection{RPC name:~get\_virtual\_slot}
   5.355 +
   5.356 +{\bf Overview:} 
   5.357 +Get the virtual\_slot field of the given DPCI.
   5.358 +
   5.359 + \noindent {\bf Signature:} 
   5.360 +\begin{verbatim} int get_virtual_slot (session_id s, DPCI ref self)\end{verbatim}
   5.361 +
   5.362 +
   5.363 +\noindent{\bf Arguments:}
   5.364 +
   5.365 + 
   5.366 +\vspace{0.3cm}
   5.367 +\begin{tabular}{|c|c|p{7cm}|}
   5.368 + \hline
   5.369 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.370 +{\tt DPCI ref } & self & reference to the object \\ \hline 
   5.371 +
   5.372 +\end{tabular}
   5.373 +
   5.374 +\vspace{0.3cm}
   5.375 +
   5.376 + \noindent {\bf Return Type:} 
   5.377 +{\tt 
   5.378 +int
   5.379 +}
   5.380 +
   5.381 +
   5.382 +value of the field
   5.383 +\vspace{0.3cm}
   5.384 +\vspace{0.3cm}
   5.385 +\vspace{0.3cm}
   5.386 +\subsubsection{RPC name:~get\_virtual\_func}
   5.387 +
   5.388 +{\bf Overview:} 
   5.389 +Get the virtual\_func field of the given DPCI.
   5.390 +
   5.391 + \noindent {\bf Signature:} 
   5.392 +\begin{verbatim} int get_virtual_func (session_id s, DPCI ref self)\end{verbatim}
   5.393 +
   5.394 +
   5.395 +\noindent{\bf Arguments:}
   5.396 +
   5.397 + 
   5.398 +\vspace{0.3cm}
   5.399 +\begin{tabular}{|c|c|p{7cm}|}
   5.400 + \hline
   5.401 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.402 +{\tt DPCI ref } & self & reference to the object \\ \hline 
   5.403 +
   5.404 +\end{tabular}
   5.405 +
   5.406 +\vspace{0.3cm}
   5.407 +
   5.408 + \noindent {\bf Return Type:} 
   5.409 +{\tt 
   5.410 +int
   5.411 +}
   5.412 +
   5.413 +
   5.414 +value of the field
   5.415 +\vspace{0.3cm}
   5.416 +\vspace{0.3cm}
   5.417 +\vspace{0.3cm}
   5.418 +\subsubsection{RPC name:~get\_virtual\_name}
   5.419 +
   5.420 +{\bf Overview:} 
   5.421 +Get the virtual\_name field of the given DPCI.
   5.422 +
   5.423 + \noindent {\bf Signature:} 
   5.424 +\begin{verbatim} string get_virtual_name (session_id s, DPCI ref self)\end{verbatim}
   5.425 +
   5.426 +
   5.427 +\noindent{\bf Arguments:}
   5.428 +
   5.429 + 
   5.430 +\vspace{0.3cm}
   5.431 +\begin{tabular}{|c|c|p{7cm}|}
   5.432 + \hline
   5.433 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.434 +{\tt DPCI ref } & self & reference to the object \\ \hline 
   5.435 +
   5.436 +\end{tabular}
   5.437 +
   5.438 +\vspace{0.3cm}
   5.439 +
   5.440 + \noindent {\bf Return Type:} 
   5.441 +{\tt 
   5.442 +string
   5.443 +}
   5.444 +
   5.445 +
   5.446 +value of the field
   5.447 +\vspace{0.3cm}
   5.448 +\vspace{0.3cm}
   5.449 +\vspace{0.3cm}
   5.450 +\subsubsection{RPC name:~create}
   5.451 +
   5.452 +{\bf Overview:} 
   5.453 +Create a new DPCI instance, and return its handle.
   5.454 +
   5.455 + \noindent {\bf Signature:} 
   5.456 +\begin{verbatim} (DPCI ref) create (session_id s, DPCI record args)\end{verbatim}
   5.457 +
   5.458 +
   5.459 +\noindent{\bf Arguments:}
   5.460 +
   5.461 + 
   5.462 +\vspace{0.3cm}
   5.463 +\begin{tabular}{|c|c|p{7cm}|}
   5.464 + \hline
   5.465 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.466 +{\tt DPCI record } & args & All constructor arguments \\ \hline 
   5.467 +
   5.468 +\end{tabular}
   5.469 +
   5.470 +\vspace{0.3cm}
   5.471 +
   5.472 + \noindent {\bf Return Type:} 
   5.473 +{\tt 
   5.474 +DPCI ref
   5.475 +}
   5.476 +
   5.477 +
   5.478 +reference to the newly created object
   5.479 +\vspace{0.3cm}
   5.480 +\vspace{0.3cm}
   5.481 +\vspace{0.3cm}
   5.482 +\subsubsection{RPC name:~destroy}
   5.483 +
   5.484 +{\bf Overview:} 
   5.485 +Destroy the specified DPCI instance.
   5.486 +
   5.487 + \noindent {\bf Signature:} 
   5.488 +\begin{verbatim} void destroy (session_id s, DPCI ref self)\end{verbatim}
   5.489 +
   5.490 +
   5.491 +\noindent{\bf Arguments:}
   5.492 +
   5.493 + 
   5.494 +\vspace{0.3cm}
   5.495 +\begin{tabular}{|c|c|p{7cm}|}
   5.496 + \hline
   5.497 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.498 +{\tt DPCI ref } & self & reference to the object \\ \hline 
   5.499 +
   5.500 +\end{tabular}
   5.501 +
   5.502 +\vspace{0.3cm}
   5.503 +
   5.504 + \noindent {\bf Return Type:} 
   5.505 +{\tt 
   5.506 +void
   5.507 +}
   5.508 +
   5.509 +
   5.510 +\vspace{0.3cm}
   5.511 +\vspace{0.3cm}
   5.512 +\vspace{0.3cm}
   5.513 +\subsubsection{RPC name:~get\_by\_uuid}
   5.514 +
   5.515 +{\bf Overview:} 
   5.516 +Get a reference to the DPCI instance with the specified UUID.
   5.517 +
   5.518 + \noindent {\bf Signature:} 
   5.519 +\begin{verbatim} (DPCI ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
   5.520 +
   5.521 +
   5.522 +\noindent{\bf Arguments:}
   5.523 +
   5.524 + 
   5.525 +\vspace{0.3cm}
   5.526 +\begin{tabular}{|c|c|p{7cm}|}
   5.527 + \hline
   5.528 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.529 +{\tt string } & uuid & UUID of object to return \\ \hline 
   5.530 +
   5.531 +\end{tabular}
   5.532 +
   5.533 +\vspace{0.3cm}
   5.534 +
   5.535 + \noindent {\bf Return Type:} 
   5.536 +{\tt 
   5.537 +DPCI ref
   5.538 +}
   5.539 +
   5.540 +
   5.541 +reference to the object
   5.542 +\vspace{0.3cm}
   5.543 +\vspace{0.3cm}
   5.544 +\vspace{0.3cm}
   5.545 +\subsubsection{RPC name:~get\_record}
   5.546 +
   5.547 +{\bf Overview:} 
   5.548 +Get a record containing the current state of the given DPCI.
   5.549 +
   5.550 + \noindent {\bf Signature:} 
   5.551 +\begin{verbatim} (DPCI record) get_record (session_id s, DPCI ref self)\end{verbatim}
   5.552 +
   5.553 +
   5.554 +\noindent{\bf Arguments:}
   5.555 +
   5.556 + 
   5.557 +\vspace{0.3cm}
   5.558 +\begin{tabular}{|c|c|p{7cm}|}
   5.559 + \hline
   5.560 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.561 +{\tt DPCI ref } & self & reference to the object \\ \hline 
   5.562 +
   5.563 +\end{tabular}
   5.564 +
   5.565 +\vspace{0.3cm}
   5.566 +
   5.567 + \noindent {\bf Return Type:} 
   5.568 +{\tt 
   5.569 +DPCI record
   5.570 +}
   5.571 +
   5.572 +
   5.573 +all fields from the object
   5.574 +\vspace{0.3cm}
   5.575 +\vspace{0.3cm}
   5.576 +\vspace{0.3cm}
   5.577 +
   5.578 +\vspace{1cm}
   5.579 +\newpage
   5.580 +\section{Class: PPCI}
   5.581 +\subsection{Fields for class: PPCI}
   5.582 +\begin{longtable}{|lllp{0.38\textwidth}|}
   5.583 +\hline
   5.584 +\multicolumn{1}{|l}{Name} & \multicolumn{3}{l|}{\bf PPCI} \\
   5.585 +\multicolumn{1}{|l}{Description} & \multicolumn{3}{l|}{\parbox{11cm}{\em A
   5.586 +physical PCI device.}} \\
   5.587 +\hline
   5.588 +Quals & Field & Type & Description \\
   5.589 +\hline
   5.590 +$\mathit{RO}_\mathit{run}$ &  {\tt uuid} & string & unique identifier/object reference \\
   5.591 +$\mathit{RO}_\mathit{run}$ &  {\tt host} & host ref &  the physical machine to which this PPCI is connected \\
   5.592 +$\mathit{RO}_\mathit{run}$ &  {\tt domain} & int & the domain number \\
   5.593 +$\mathit{RO}_\mathit{run}$ &  {\tt bus} & int & the bus number \\
   5.594 +$\mathit{RO}_\mathit{run}$ &  {\tt slot} & int & the slot number \\
   5.595 +$\mathit{RO}_\mathit{run}$ &  {\tt func} & int & the func number \\
   5.596 +$\mathit{RO}_\mathit{run}$ &  {\tt name} & string & the PCI name \\
   5.597 +$\mathit{RO}_\mathit{run}$ &  {\tt vendor\_id} & int & the vendor ID \\
   5.598 +$\mathit{RO}_\mathit{run}$ &  {\tt vendor\_name} & string & the vendor name \\
   5.599 +$\mathit{RO}_\mathit{run}$ &  {\tt device\_id} & int & the device ID \\
   5.600 +$\mathit{RO}_\mathit{run}$ &  {\tt device\_name} & string & the device name \\
   5.601 +$\mathit{RO}_\mathit{run}$ &  {\tt revision\_id} & int & the revision ID \\
   5.602 +$\mathit{RO}_\mathit{run}$ &  {\tt class\_code} & int & the class code \\
   5.603 +$\mathit{RO}_\mathit{run}$ &  {\tt class\_name} & string & the class name \\
   5.604 +$\mathit{RO}_\mathit{run}$ &  {\tt subsystem\_vendor\_id} & int & the subsystem vendor ID \\
   5.605 +$\mathit{RO}_\mathit{run}$ &  {\tt subsystem\_vendor\_name} & string & the subsystem vendor name \\
   5.606 +$\mathit{RO}_\mathit{run}$ &  {\tt subsystem\_id} & int & the subsystem ID \\
   5.607 +$\mathit{RO}_\mathit{run}$ &  {\tt subsystem\_name} & string & the subsystem name \\
   5.608 +$\mathit{RO}_\mathit{run}$ &  {\tt driver} & string & the driver name \\
   5.609 +\hline
   5.610 +\end{longtable}
   5.611 +\subsection{RPCs associated with class: PPCI}
   5.612 +\subsubsection{RPC name:~get\_all}
   5.613 +
   5.614 +{\bf Overview:} 
   5.615 +Return a list of all the PPCIs known to the system.
   5.616 +
   5.617 + \noindent {\bf Signature:} 
   5.618 +\begin{verbatim} ((PPCI ref) Set) get_all (session_id s)\end{verbatim}
   5.619 +
   5.620 +
   5.621 +\vspace{0.3cm}
   5.622 +
   5.623 + \noindent {\bf Return Type:} 
   5.624 +{\tt 
   5.625 +(PPCI ref) Set
   5.626 +}
   5.627 +
   5.628 +
   5.629 +references to all objects
   5.630 +\vspace{0.3cm}
   5.631 +\vspace{0.3cm}
   5.632 +\vspace{0.3cm}
   5.633 +\subsubsection{RPC name:~get\_uuid}
   5.634 +
   5.635 +{\bf Overview:} 
   5.636 +Get the uuid field of the given PPCI.
   5.637 +
   5.638 + \noindent {\bf Signature:} 
   5.639 +\begin{verbatim} string get_uuid (session_id s, PPCI ref self)\end{verbatim}
   5.640 +
   5.641 +
   5.642 +\noindent{\bf Arguments:}
   5.643 +
   5.644 + 
   5.645 +\vspace{0.3cm}
   5.646 +\begin{tabular}{|c|c|p{7cm}|}
   5.647 + \hline
   5.648 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.649 +{\tt PPCI ref } & self & reference to the object \\ \hline 
   5.650 +
   5.651 +\end{tabular}
   5.652 +
   5.653 +\vspace{0.3cm}
   5.654 +
   5.655 + \noindent {\bf Return Type:} 
   5.656 +{\tt 
   5.657 +string
   5.658 +}
   5.659 +
   5.660 +
   5.661 +value of the field
   5.662 +\vspace{0.3cm}
   5.663 +\vspace{0.3cm}
   5.664 +\vspace{0.3cm}
   5.665 +\subsubsection{RPC name:~get\_host}
   5.666 +
   5.667 +{\bf Overview:} 
   5.668 +Get the host field of the given PPCI.
   5.669 +
   5.670 + \noindent {\bf Signature:} 
   5.671 +\begin{verbatim} (host ref) get_host (session_id s, PPCI ref self)\end{verbatim}
   5.672 +
   5.673 +
   5.674 +\noindent{\bf Arguments:}
   5.675 +
   5.676 + 
   5.677 +\vspace{0.3cm}
   5.678 +\begin{tabular}{|c|c|p{7cm}|}
   5.679 + \hline
   5.680 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.681 +{\tt PPCI ref } & self & reference to the object \\ \hline 
   5.682 +
   5.683 +\end{tabular}
   5.684 +
   5.685 +\vspace{0.3cm}
   5.686 +
   5.687 + \noindent {\bf Return Type:} 
   5.688 +{\tt 
   5.689 +host ref
   5.690 +}
   5.691 +
   5.692 +
   5.693 +value of the field
   5.694 +\vspace{0.3cm}
   5.695 +\vspace{0.3cm}
   5.696 +\vspace{0.3cm}
   5.697 +\subsubsection{RPC name:~get\_domain}
   5.698 +
   5.699 +{\bf Overview:} 
   5.700 +Get the domain field of the given PPCI.
   5.701 +
   5.702 + \noindent {\bf Signature:} 
   5.703 +\begin{verbatim} int get_domain (session_id s, PPCI ref self)\end{verbatim}
   5.704 +
   5.705 +
   5.706 +\noindent{\bf Arguments:}
   5.707 +
   5.708 + 
   5.709 +\vspace{0.3cm}
   5.710 +\begin{tabular}{|c|c|p{7cm}|}
   5.711 + \hline
   5.712 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.713 +{\tt PPCI ref } & self & reference to the object \\ \hline 
   5.714 +
   5.715 +\end{tabular}
   5.716 +
   5.717 +\vspace{0.3cm}
   5.718 +
   5.719 + \noindent {\bf Return Type:} 
   5.720 +{\tt 
   5.721 +int
   5.722 +}
   5.723 +
   5.724 +
   5.725 +value of the field
   5.726 +\vspace{0.3cm}
   5.727 +\vspace{0.3cm}
   5.728 +\vspace{0.3cm}
   5.729 +\subsubsection{RPC name:~get\_bus}
   5.730 +
   5.731 +{\bf Overview:} 
   5.732 +Get the bus field of the given PPCI.
   5.733 +
   5.734 + \noindent {\bf Signature:} 
   5.735 +\begin{verbatim} int get_bus (session_id s, PPCI ref self)\end{verbatim}
   5.736 +
   5.737 +
   5.738 +\noindent{\bf Arguments:}
   5.739 +
   5.740 + 
   5.741 +\vspace{0.3cm}
   5.742 +\begin{tabular}{|c|c|p{7cm}|}
   5.743 + \hline
   5.744 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.745 +{\tt PPCI ref } & self & reference to the object \\ \hline 
   5.746 +
   5.747 +\end{tabular}
   5.748 +
   5.749 +\vspace{0.3cm}
   5.750 +
   5.751 + \noindent {\bf Return Type:} 
   5.752 +{\tt 
   5.753 +int
   5.754 +}
   5.755 +
   5.756 +
   5.757 +value of the field
   5.758 +\vspace{0.3cm}
   5.759 +\vspace{0.3cm}
   5.760 +\vspace{0.3cm}
   5.761 +\subsubsection{RPC name:~get\_slot}
   5.762 +
   5.763 +{\bf Overview:} 
   5.764 +Get the slot field of the given PPCI.
   5.765 +
   5.766 + \noindent {\bf Signature:} 
   5.767 +\begin{verbatim} int get_slot (session_id s, PPCI ref self)\end{verbatim}
   5.768 +
   5.769 +
   5.770 +\noindent{\bf Arguments:}
   5.771 +
   5.772 + 
   5.773 +\vspace{0.3cm}
   5.774 +\begin{tabular}{|c|c|p{7cm}|}
   5.775 + \hline
   5.776 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.777 +{\tt PPCI ref } & self & reference to the object \\ \hline 
   5.778 +
   5.779 +\end{tabular}
   5.780 +
   5.781 +\vspace{0.3cm}
   5.782 +
   5.783 + \noindent {\bf Return Type:} 
   5.784 +{\tt 
   5.785 +int
   5.786 +}
   5.787 +
   5.788 +
   5.789 +value of the field
   5.790 +\vspace{0.3cm}
   5.791 +\vspace{0.3cm}
   5.792 +\vspace{0.3cm}
   5.793 +\subsubsection{RPC name:~get\_func}
   5.794 +
   5.795 +{\bf Overview:} 
   5.796 +Get the func field of the given PPCI.
   5.797 +
   5.798 + \noindent {\bf Signature:} 
   5.799 +\begin{verbatim} int get_func (session_id s, PPCI ref self)\end{verbatim}
   5.800 +
   5.801 +
   5.802 +\noindent{\bf Arguments:}
   5.803 +
   5.804 + 
   5.805 +\vspace{0.3cm}
   5.806 +\begin{tabular}{|c|c|p{7cm}|}
   5.807 + \hline
   5.808 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.809 +{\tt PPCI ref } & self & reference to the object \\ \hline 
   5.810 +
   5.811 +\end{tabular}
   5.812 +
   5.813 +\vspace{0.3cm}
   5.814 +
   5.815 + \noindent {\bf Return Type:} 
   5.816 +{\tt 
   5.817 +int
   5.818 +}
   5.819 +
   5.820 +
   5.821 +value of the field
   5.822 +\vspace{0.3cm}
   5.823 +\vspace{0.3cm}
   5.824 +\vspace{0.3cm}
   5.825 +\subsubsection{RPC name:~get\_name}
   5.826 +
   5.827 +{\bf Overview:} 
   5.828 +Get the name field of the given PPCI.
   5.829 +
   5.830 + \noindent {\bf Signature:} 
   5.831 +\begin{verbatim} string get_name (session_id s, PPCI ref self)\end{verbatim}
   5.832 +
   5.833 +
   5.834 +\noindent{\bf Arguments:}
   5.835 +
   5.836 + 
   5.837 +\vspace{0.3cm}
   5.838 +\begin{tabular}{|c|c|p{7cm}|}
   5.839 + \hline
   5.840 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.841 +{\tt PPCI ref } & self & reference to the object \\ \hline 
   5.842 +
   5.843 +\end{tabular}
   5.844 +
   5.845 +\vspace{0.3cm}
   5.846 +
   5.847 + \noindent {\bf Return Type:} 
   5.848 +{\tt 
   5.849 +string
   5.850 +}
   5.851 +
   5.852 +
   5.853 +value of the field
   5.854 +\vspace{0.3cm}
   5.855 +\vspace{0.3cm}
   5.856 +\vspace{0.3cm}
   5.857 +\subsubsection{RPC name:~get\_vendor\_id}
   5.858 +
   5.859 +{\bf Overview:} 
   5.860 +Get the vendor\_id field of the given PPCI.
   5.861 +
   5.862 + \noindent {\bf Signature:} 
   5.863 +\begin{verbatim} int get_vendor_id (session_id s, PPCI ref self)\end{verbatim}
   5.864 +
   5.865 +
   5.866 +\noindent{\bf Arguments:}
   5.867 +
   5.868 + 
   5.869 +\vspace{0.3cm}
   5.870 +\begin{tabular}{|c|c|p{7cm}|}
   5.871 + \hline
   5.872 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.873 +{\tt PPCI ref } & self & reference to the object \\ \hline 
   5.874 +
   5.875 +\end{tabular}
   5.876 +
   5.877 +\vspace{0.3cm}
   5.878 +
   5.879 + \noindent {\bf Return Type:} 
   5.880 +{\tt 
   5.881 +int
   5.882 +}
   5.883 +
   5.884 +
   5.885 +value of the field
   5.886 +\vspace{0.3cm}
   5.887 +\vspace{0.3cm}
   5.888 +\vspace{0.3cm}
   5.889 +\subsubsection{RPC name:~get\_vendor\_name}
   5.890 +
   5.891 +{\bf Overview:} 
   5.892 +Get the vendor\_name field of the given PPCI.
   5.893 +
   5.894 + \noindent {\bf Signature:} 
   5.895 +\begin{verbatim} string get_vendor_name (session_id s, PPCI ref self)\end{verbatim}
   5.896 +
   5.897 +
   5.898 +\noindent{\bf Arguments:}
   5.899 +
   5.900 + 
   5.901 +\vspace{0.3cm}
   5.902 +\begin{tabular}{|c|c|p{7cm}|}
   5.903 + \hline
   5.904 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.905 +{\tt PPCI ref } & self & reference to the object \\ \hline 
   5.906 +
   5.907 +\end{tabular}
   5.908 +
   5.909 +\vspace{0.3cm}
   5.910 +
   5.911 + \noindent {\bf Return Type:} 
   5.912 +{\tt 
   5.913 +string
   5.914 +}
   5.915 +
   5.916 +
   5.917 +value of the field
   5.918 +\vspace{0.3cm}
   5.919 +\vspace{0.3cm}
   5.920 +\vspace{0.3cm}
   5.921 +\subsubsection{RPC name:~get\_device\_id}
   5.922 +
   5.923 +{\bf Overview:} 
   5.924 +Get the device\_id field of the given PPCI.
   5.925 +
   5.926 + \noindent {\bf Signature:} 
   5.927 +\begin{verbatim} int get_device_id (session_id s, PPCI ref self)\end{verbatim}
   5.928 +
   5.929 +
   5.930 +\noindent{\bf Arguments:}
   5.931 +
   5.932 + 
   5.933 +\vspace{0.3cm}
   5.934 +\begin{tabular}{|c|c|p{7cm}|}
   5.935 + \hline
   5.936 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.937 +{\tt PPCI ref } & self & reference to the object \\ \hline 
   5.938 +
   5.939 +\end{tabular}
   5.940 +
   5.941 +\vspace{0.3cm}
   5.942 +
   5.943 + \noindent {\bf Return Type:} 
   5.944 +{\tt 
   5.945 +int
   5.946 +}
   5.947 +
   5.948 +
   5.949 +value of the field
   5.950 +\vspace{0.3cm}
   5.951 +\vspace{0.3cm}
   5.952 +\vspace{0.3cm}
   5.953 +\subsubsection{RPC name:~get\_device\_name}
   5.954 +
   5.955 +{\bf Overview:} 
   5.956 +Get the device\_name field of the given PPCI.
   5.957 +
   5.958 + \noindent {\bf Signature:} 
   5.959 +\begin{verbatim} string get_device_name (session_id s, PPCI ref self)\end{verbatim}
   5.960 +
   5.961 +
   5.962 +\noindent{\bf Arguments:}
   5.963 +
   5.964 + 
   5.965 +\vspace{0.3cm}
   5.966 +\begin{tabular}{|c|c|p{7cm}|}
   5.967 + \hline
   5.968 +{\bf type} & {\bf name} & {\bf description} \\ \hline
   5.969 +{\tt PPCI ref } & self & reference to the object \\ \hline 
   5.970 +
   5.971 +\end{tabular}
   5.972 +
   5.973 +\vspace{0.3cm}
   5.974 +
   5.975 + \noindent {\bf Return Type:} 
   5.976 +{\tt 
   5.977 +string
   5.978 +}
   5.979 +
   5.980 +
   5.981 +value of the field
   5.982 +\vspace{0.3cm}
   5.983 +\vspace{0.3cm}
   5.984 +\vspace{0.3cm}
   5.985 +\subsubsection{RPC name:~get\_revision\_id}
   5.986 +
   5.987 +{\bf Overview:} 
   5.988 +Get the revision\_id field of the given PPCI.
   5.989 +
   5.990 + \noindent {\bf Signature:} 
   5.991 +\begin{verbatim} int get_revision_id (session_id s, PPCI ref self)\end{verbatim}
   5.992 +
   5.993 +
   5.994 +\noindent{\bf Arguments:}
   5.995 +
   5.996 + 
   5.997 +\vspace{0.3cm}
   5.998 +\begin{tabular}{|c|c|p{7cm}|}
   5.999 + \hline
  5.1000 +{\bf type} & {\bf name} & {\bf description} \\ \hline
  5.1001 +{\tt PPCI ref } & self & reference to the object \\ \hline 
  5.1002 +
  5.1003 +\end{tabular}
  5.1004 +
  5.1005 +\vspace{0.3cm}
  5.1006 +
  5.1007 + \noindent {\bf Return Type:} 
  5.1008 +{\tt 
  5.1009 +int
  5.1010 +}
  5.1011 +
  5.1012 +
  5.1013 +value of the field
  5.1014 +\vspace{0.3cm}
  5.1015 +\vspace{0.3cm}
  5.1016 +\vspace{0.3cm}
  5.1017 +\subsubsection{RPC name:~get\_class\_code}
  5.1018 +
  5.1019 +{\bf Overview:} 
  5.1020 +Get the class\_code field of the given PPCI.
  5.1021 +
  5.1022 + \noindent {\bf Signature:} 
  5.1023 +\begin{verbatim} int get_class_code (session_id s, PPCI ref self)\end{verbatim}
  5.1024 +
  5.1025 +
  5.1026 +\noindent{\bf Arguments:}
  5.1027 +
  5.1028 + 
  5.1029 +\vspace{0.3cm}
  5.1030 +\begin{tabular}{|c|c|p{7cm}|}
  5.1031 + \hline
  5.1032 +{\bf type} & {\bf name} & {\bf description} \\ \hline
  5.1033 +{\tt PPCI ref } & self & reference to the object \\ \hline 
  5.1034 +
  5.1035 +\end{tabular}
  5.1036 +
  5.1037 +\vspace{0.3cm}
  5.1038 +
  5.1039 + \noindent {\bf Return Type:} 
  5.1040 +{\tt 
  5.1041 +int
  5.1042 +}
  5.1043 +
  5.1044 +
  5.1045 +value of the field
  5.1046 +\vspace{0.3cm}
  5.1047 +\vspace{0.3cm}
  5.1048 +\vspace{0.3cm}
  5.1049 +\subsubsection{RPC name:~get\_class\_name}
  5.1050 +
  5.1051 +{\bf Overview:} 
  5.1052 +Get the class\_name field of the given PPCI.
  5.1053 +
  5.1054 + \noindent {\bf Signature:} 
  5.1055 +\begin{verbatim} string get_class_name (session_id s, PPCI ref self)\end{verbatim}
  5.1056 +
  5.1057 +
  5.1058 +\noindent{\bf Arguments:}
  5.1059 +
  5.1060 + 
  5.1061 +\vspace{0.3cm}
  5.1062 +\begin{tabular}{|c|c|p{7cm}|}
  5.1063 + \hline
  5.1064 +{\bf type} & {\bf name} & {\bf description} \\ \hline
  5.1065 +{\tt PPCI ref } & self & reference to the object \\ \hline 
  5.1066 +
  5.1067 +\end{tabular}
  5.1068 +
  5.1069 +\vspace{0.3cm}
  5.1070 +
  5.1071 + \noindent {\bf Return Type:} 
  5.1072 +{\tt 
  5.1073 +string
  5.1074 +}
  5.1075 +
  5.1076 +
  5.1077 +value of the field
  5.1078 +\vspace{0.3cm}
  5.1079 +\vspace{0.3cm}
  5.1080 +\vspace{0.3cm}
  5.1081 +\subsubsection{RPC name:~get\_subsystem\_vendor\_id}
  5.1082 +
  5.1083 +{\bf Overview:} 
  5.1084 +Get the subsystem\_vendor\_id field of the given PPCI.
  5.1085 +
  5.1086 + \noindent {\bf Signature:} 
  5.1087 +\begin{verbatim} int get_subsystem_vendor_id (session_id s, PPCI ref self)\end{verbatim}
  5.1088 +
  5.1089 +
  5.1090 +\noindent{\bf Arguments:}
  5.1091 +
  5.1092 + 
  5.1093 +\vspace{0.3cm}
  5.1094 +\begin{tabular}{|c|c|p{7cm}|}
  5.1095 + \hline
  5.1096 +{\bf type} & {\bf name} & {\bf description} \\ \hline
  5.1097 +{\tt PPCI ref } & self & reference to the object \\ \hline 
  5.1098 +
  5.1099 +\end{tabular}
  5.1100 +
  5.1101 +\vspace{0.3cm}
  5.1102 +
  5.1103 + \noindent {\bf Return Type:} 
  5.1104 +{\tt 
  5.1105 +int
  5.1106 +}
  5.1107 +
  5.1108 +
  5.1109 +value of the field
  5.1110 +\vspace{0.3cm}
  5.1111 +\vspace{0.3cm}
  5.1112 +\vspace{0.3cm}
  5.1113 +\subsubsection{RPC name:~get\_subsystem\_vendor\_name}
  5.1114 +
  5.1115 +{\bf Overview:} 
  5.1116 +Get the subsystem\_vendor\_name field of the given PPCI.
  5.1117 +
  5.1118 + \noindent {\bf Signature:} 
  5.1119 +\begin{verbatim} string get_subsystem_vendor_name (session_id s, PPCI ref self)\end{verbatim}
  5.1120 +
  5.1121 +
  5.1122 +\noindent{\bf Arguments:}
  5.1123 +
  5.1124 + 
  5.1125 +\vspace{0.3cm}
  5.1126 +\begin{tabular}{|c|c|p{7cm}|}
  5.1127 + \hline
  5.1128 +{\bf type} & {\bf name} & {\bf description} \\ \hline
  5.1129 +{\tt PPCI ref } & self & reference to the object \\ \hline 
  5.1130 +
  5.1131 +\end{tabular}
  5.1132 +
  5.1133 +\vspace{0.3cm}
  5.1134 +
  5.1135 + \noindent {\bf Return Type:} 
  5.1136 +{\tt 
  5.1137 +string
  5.1138 +}
  5.1139 +
  5.1140 +
  5.1141 +value of the field
  5.1142 +\vspace{0.3cm}
  5.1143 +\vspace{0.3cm}
  5.1144 +\vspace{0.3cm}
  5.1145 +\subsubsection{RPC name:~get\_subsystem\_id}
  5.1146 +
  5.1147 +{\bf Overview:} 
  5.1148 +Get the subsystem\_id field of the given PPCI.
  5.1149 +
  5.1150 + \noindent {\bf Signature:} 
  5.1151 +\begin{verbatim} int get_subsystem_id (session_id s, PPCI ref self)\end{verbatim}
  5.1152 +
  5.1153 +
  5.1154 +\noindent{\bf Arguments:}
  5.1155 +
  5.1156 + 
  5.1157 +\vspace{0.3cm}
  5.1158 +\begin{tabular}{|c|c|p{7cm}|}
  5.1159 + \hline
  5.1160 +{\bf type} & {\bf name} & {\bf description} \\ \hline
  5.1161 +{\tt PPCI ref } & self & reference to the object \\ \hline 
  5.1162 +
  5.1163 +\end{tabular}
  5.1164 +
  5.1165 +\vspace{0.3cm}
  5.1166 +
  5.1167 + \noindent {\bf Return Type:} 
  5.1168 +{\tt 
  5.1169 +int
  5.1170 +}
  5.1171 +
  5.1172 +
  5.1173 +value of the field
  5.1174 +\vspace{0.3cm}
  5.1175 +\vspace{0.3cm}
  5.1176 +\vspace{0.3cm}
  5.1177 +\subsubsection{RPC name:~get\_subsystem\_name}
  5.1178 +
  5.1179 +{\bf Overview:} 
  5.1180 +Get the subsystem\_name field of the given PPCI.
  5.1181 +
  5.1182 + \noindent {\bf Signature:} 
  5.1183 +\begin{verbatim} string get_subsystem_name (session_id s, PPCI ref self)\end{verbatim}
  5.1184 +
  5.1185 +
  5.1186 +\noindent{\bf Arguments:}
  5.1187 +
  5.1188 + 
  5.1189 +\vspace{0.3cm}
  5.1190 +\begin{tabular}{|c|c|p{7cm}|}
  5.1191 + \hline
  5.1192 +{\bf type} & {\bf name} & {\bf description} \\ \hline
  5.1193 +{\tt PPCI ref } & self & reference to the object \\ \hline 
  5.1194 +
  5.1195 +\end{tabular}
  5.1196 +
  5.1197 +\vspace{0.3cm}
  5.1198 +
  5.1199 + \noindent {\bf Return Type:} 
  5.1200 +{\tt 
  5.1201 +string
  5.1202 +}
  5.1203 +
  5.1204 +
  5.1205 +value of the field
  5.1206 +\vspace{0.3cm}
  5.1207 +\vspace{0.3cm}
  5.1208 +\vspace{0.3cm}
  5.1209 +\subsubsection{RPC name:~get\_driver}
  5.1210 +
  5.1211 +{\bf Overview:} 
  5.1212 +Get the driver field of the given PPCI.
  5.1213 +
  5.1214 + \noindent {\bf Signature:} 
  5.1215 +\begin{verbatim} string get_driver (session_id s, PPCI ref self)\end{verbatim}
  5.1216 +
  5.1217 +
  5.1218 +\noindent{\bf Arguments:}
  5.1219 +
  5.1220 + 
  5.1221 +\vspace{0.3cm}
  5.1222 +\begin{tabular}{|c|c|p{7cm}|}
  5.1223 + \hline
  5.1224 +{\bf type} & {\bf name} & {\bf description} \\ \hline
  5.1225 +{\tt PPCI ref } & self & reference to the object \\ \hline 
  5.1226 +
  5.1227 +\end{tabular}
  5.1228 +
  5.1229 +\vspace{0.3cm}
  5.1230 +
  5.1231 + \noindent {\bf Return Type:} 
  5.1232 +{\tt 
  5.1233 +string
  5.1234 +}
  5.1235 +
  5.1236 +
  5.1237 +value of the field
  5.1238 +\vspace{0.3cm}
  5.1239 +\vspace{0.3cm}
  5.1240 +\vspace{0.3cm}
  5.1241 +\subsubsection{RPC name:~get\_by\_uuid}
  5.1242 +
  5.1243 +{\bf Overview:} 
  5.1244 +Get a reference to the PPCI instance with the specified UUID.
  5.1245 +
  5.1246 + \noindent {\bf Signature:} 
  5.1247 +\begin{verbatim} (PPCI ref) get_by_uuid (session_id s, string uuid)\end{verbatim}
  5.1248 +
  5.1249 +
  5.1250 +\noindent{\bf Arguments:}
  5.1251 +
  5.1252 + 
  5.1253 +\vspace{0.3cm}
  5.1254 +\begin{tabular}{|c|c|p{7cm}|}
  5.1255 + \hline
  5.1256 +{\bf type} & {\bf name} & {\bf description} \\ \hline
  5.1257 +{\tt string } & uuid & UUID of object to return \\ \hline 
  5.1258 +
  5.1259 +\end{tabular}
  5.1260 +
  5.1261 +\vspace{0.3cm}
  5.1262 +
  5.1263 + \noindent {\bf Return Type:} 
  5.1264 +{\tt 
  5.1265 +PPCI ref
  5.1266 +}
  5.1267 +
  5.1268 +
  5.1269 +reference to the object
  5.1270 +\vspace{0.3cm}
  5.1271 +\vspace{0.3cm}
  5.1272 +\vspace{0.3cm}
  5.1273 +\subsubsection{RPC name:~get\_record}
  5.1274 +
  5.1275 +{\bf Overview:} 
  5.1276 +Get a record containing the current state of the given PPCI.
  5.1277 +
  5.1278 + \noindent {\bf Signature:} 
  5.1279 +\begin{verbatim} (PPCI record) get_record (session_id s, PPCI ref self)\end{verbatim}
  5.1280 +
  5.1281 +
  5.1282 +\noindent{\bf Arguments:}
  5.1283 +
  5.1284 + 
  5.1285 +\vspace{0.3cm}
  5.1286 +\begin{tabular}{|c|c|p{7cm}|}
  5.1287 + \hline
  5.1288 +{\bf type} & {\bf name} & {\bf description} \\ \hline
  5.1289 +{\tt PPCI ref } & self & reference to the object \\ \hline 
  5.1290 +
  5.1291 +\end{tabular}
  5.1292 +
  5.1293 +\vspace{0.3cm}
  5.1294 +
  5.1295 + \noindent {\bf Return Type:} 
  5.1296 +{\tt 
  5.1297 +PPCI record
  5.1298 +}
  5.1299 +
  5.1300 +
  5.1301 +all fields from the object
  5.1302 +\vspace{0.3cm}
  5.1303 +\vspace{0.3cm}
  5.1304 +\vspace{0.3cm}
  5.1305 +
  5.1306 +\vspace{1cm}
  5.1307 +\newpage
  5.1308  \section{Class: user}
  5.1309  \subsection{Fields for class: user}
  5.1310  \begin{longtable}{|lllp{0.38\textwidth}|}