\hypertarget{group__readmemory}{}\doxysection{SVM memory read}
\label{group__readmemory}\index{SVM memory read@{SVM memory read}}


This module contains API functions to handle SVM memory read access.  


\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} \mbox{\hyperlink{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}{svm\+\_\+memory\+\_\+read\+\_\+address}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}} address)
\begin{DoxyCompactList}\small\item\em This function reads a value from a memory. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} \mbox{\hyperlink{group__readmemory_ga6135e9d39a96ecb28f1e42895bdf6be9}{svm\+\_\+memory\+\_\+read\+\_\+address\+\_\+type}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}} address, const \mbox{\hyperlink{group__api__types_ga1d0dbcf7d04a60f9bab902433710f617}{SVM\+\_\+\+Type}} type)
\begin{DoxyCompactList}\small\item\em This function reads a value from a memory having a given type. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} \mbox{\hyperlink{group__readmemory_ga897974aa7f239ee8f06b8349eff44b10}{svm\+\_\+memory\+\_\+read\+\_\+address\+\_\+type\+\_\+internal}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}} address, const \mbox{\hyperlink{group__api__types_gaaec5220542c82828f3e864fa64b679e5}{SVM\+\_\+\+Type\+\_\+\+Internal}} type)
\begin{DoxyCompactList}\small\item\em This function reads a value from a memory having a given internal type. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} \mbox{\hyperlink{group__readmemory_ga54c05340173a1d8a00ddbc6dd596c467}{svm\+\_\+memory\+\_\+read\+\_\+address\+\_\+type\+\_\+external}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}} address, const \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}} type)
\begin{DoxyCompactList}\small\item\em This function reads a value from a memory having a given plugin type. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} \mbox{\hyperlink{group__readmemory_ga63af5fa6362ea28e8f916ed92c2a1893}{svm\+\_\+memory\+\_\+extract\+\_\+address}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}} address)
\begin{DoxyCompactList}\small\item\em This function extracts a value from a memory. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ \mbox{\hyperlink{group__readmemory_gabe48fe888f4891c8a0cd3fb9009eb63a}{svm\+\_\+memory\+\_\+read\+\_\+pointer}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_ga613f7430f76ab41fd47f6a386c370828}{SVM\+\_\+\+Value\+\_\+\+Pointer}} pointer)
\begin{DoxyCompactList}\small\item\em This function reads an array of values from a memory. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ \mbox{\hyperlink{group__readmemory_gaaeea16fbc93f6f7674e3b21134c52412}{svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+\+\_\+raw}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}} address, const \mbox{\hyperlink{group__api__types_gaab347fe7005c87722bd7d80cfe94333c}{SVM\+\_\+\+Size}} size)
\begin{DoxyCompactList}\small\item\em This function reads an array of values from a memory. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ \mbox{\hyperlink{group__readmemory_ga3b9747e83d3f20bfce5d0d4711bad197}{svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+type}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_ga613f7430f76ab41fd47f6a386c370828}{SVM\+\_\+\+Value\+\_\+\+Pointer}} pointer, const \mbox{\hyperlink{group__api__types_ga1d0dbcf7d04a60f9bab902433710f617}{SVM\+\_\+\+Type}} type)
\begin{DoxyCompactList}\small\item\em This function reads an array of values from a memory with unique type checking. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ \mbox{\hyperlink{group__readmemory_ga076b43945a1e78cb60d9df350a5b9e1c}{svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+type\+\_\+\+\_\+raw}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}} address, const \mbox{\hyperlink{group__api__types_gaab347fe7005c87722bd7d80cfe94333c}{SVM\+\_\+\+Size}} size, const \mbox{\hyperlink{group__api__types_ga1d0dbcf7d04a60f9bab902433710f617}{SVM\+\_\+\+Type}} type)
\begin{DoxyCompactList}\small\item\em This function reads an array of values from a memory with unique type checking. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ \mbox{\hyperlink{group__readmemory_gae5f753314867313eb1a9b2534a4f5f98}{svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+type\+\_\+internal}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_ga613f7430f76ab41fd47f6a386c370828}{SVM\+\_\+\+Value\+\_\+\+Pointer}} pointer, const \mbox{\hyperlink{group__api__types_gaaec5220542c82828f3e864fa64b679e5}{SVM\+\_\+\+Type\+\_\+\+Internal}} type)
\begin{DoxyCompactList}\small\item\em This function reads an array of values from a memory with unique type checking against an internal type. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ \mbox{\hyperlink{group__readmemory_gaa61c3dc10b8aefe965ce00b22c059702}{svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+type\+\_\+internal\+\_\+\+\_\+raw}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}} address, const \mbox{\hyperlink{group__api__types_gaab347fe7005c87722bd7d80cfe94333c}{SVM\+\_\+\+Size}} size, const \mbox{\hyperlink{group__api__types_gaaec5220542c82828f3e864fa64b679e5}{SVM\+\_\+\+Type\+\_\+\+Internal}} type)
\begin{DoxyCompactList}\small\item\em This function reads an array of values from a memory with unique type checking against an internal type. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ \mbox{\hyperlink{group__readmemory_ga2621d32aac252e69c0660592bf8d7430}{svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+type\+\_\+external}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_ga613f7430f76ab41fd47f6a386c370828}{SVM\+\_\+\+Value\+\_\+\+Pointer}} pointer, const \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}} type)
\begin{DoxyCompactList}\small\item\em This function reads an array of values from a memory with unique type checking against an external type. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ \mbox{\hyperlink{group__readmemory_ga4f132e7454df4f517f6624819720cf7c}{svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+type\+\_\+external\+\_\+\+\_\+raw}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}} address, const \mbox{\hyperlink{group__api__types_gaab347fe7005c87722bd7d80cfe94333c}{SVM\+\_\+\+Size}} size, const \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}} type)
\begin{DoxyCompactList}\small\item\em This function reads an array of values from a memory with unique type checking against an external type. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ \mbox{\hyperlink{group__readmemory_ga06e1d9919b03e43b0a481b7252dba6ad}{svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+zone}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_ga613f7430f76ab41fd47f6a386c370828}{SVM\+\_\+\+Value\+\_\+\+Pointer}} pointer, const \mbox{\hyperlink{group__api__types_gab09bc91d1ed2c59cf667d75b06fb3170}{SVM\+\_\+\+Memory\+\_\+\+Zone}} zone)
\begin{DoxyCompactList}\small\item\em This function reads an array of values from a memory with detailed type checking. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ \mbox{\hyperlink{group__readmemory_gab4fbc518941f7fac96b2ce361e03788b}{svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+zone\+\_\+\+\_\+raw}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}} address, const \mbox{\hyperlink{group__api__types_gaab347fe7005c87722bd7d80cfe94333c}{SVM\+\_\+\+Size}} size, const \mbox{\hyperlink{group__api__types_gab09bc91d1ed2c59cf667d75b06fb3170}{SVM\+\_\+\+Memory\+\_\+\+Zone}} zone)
\begin{DoxyCompactList}\small\item\em This function reads an array of values from a memory with detailed type checking. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ \mbox{\hyperlink{group__readmemory_ga177228e3ddbfe29cc618e7ad32ea6b3a}{svm\+\_\+memory\+\_\+extract\+\_\+pointer}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_ga613f7430f76ab41fd47f6a386c370828}{SVM\+\_\+\+Value\+\_\+\+Pointer}} pointer)
\begin{DoxyCompactList}\small\item\em This function extracts an array of values from a memory. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ \mbox{\hyperlink{group__readmemory_ga03ad97eb641f96ba78e43b8db8e2428d}{svm\+\_\+memory\+\_\+extract\+\_\+pointer\+\_\+\+\_\+raw}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}} kernel, const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}} address, const \mbox{\hyperlink{group__api__types_gaab347fe7005c87722bd7d80cfe94333c}{SVM\+\_\+\+Size}} size)
\begin{DoxyCompactList}\small\item\em This function reads an array of values from a memory. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
This module contains API functions to handle SVM memory read access. 



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__readmemory_ga63af5fa6362ea28e8f916ed92c2a1893}\label{group__readmemory_ga63af5fa6362ea28e8f916ed92c2a1893}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_extract\_address@{svm\_memory\_extract\_address}}
\index{svm\_memory\_extract\_address@{svm\_memory\_extract\_address}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_extract\_address()}{svm\_memory\_extract\_address()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} svm\+\_\+memory\+\_\+extract\+\_\+address (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}}}]{address }\end{DoxyParamCaption})}



This function extracts a value from a memory. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em address} & The local address to read from.\\
\hline
\end{DoxyParams}
\begin{DoxyNote}{Note}
The type of the read value is not checked at all.
\end{DoxyNote}
\begin{DoxyReturn}{Returns}
The value associated to the address, or a null value when the address is not initialised.
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when the address is not defined.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga21f8c43c2b1503cc785618c462ac7661}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+defined}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_ga177228e3ddbfe29cc618e7ad32ea6b3a}\label{group__readmemory_ga177228e3ddbfe29cc618e7ad32ea6b3a}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_extract\_pointer@{svm\_memory\_extract\_pointer}}
\index{svm\_memory\_extract\_pointer@{svm\_memory\_extract\_pointer}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_extract\_pointer()}{svm\_memory\_extract\_pointer()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ svm\+\_\+memory\+\_\+extract\+\_\+pointer (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_ga613f7430f76ab41fd47f6a386c370828}{SVM\+\_\+\+Value\+\_\+\+Pointer}}}]{pointer }\end{DoxyParamCaption})}



This function extracts an array of values from a memory. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em pointer} & The pointer of the zone to read from.\\
\hline
\end{DoxyParams}
\begin{DoxyNote}{Note}
The types of the read values are not checked at all.
\end{DoxyNote}
\begin{DoxyReturn}{Returns}
The array of values associated to the pointer with null values for non-\/initialised addresses, terminated by a C/\+C++ null pointer.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The returned array is a valid SVM variable\+: its scope can be changed if needed, and the pointer shall not be freed explicitely.
\end{DoxyNote}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when at least one address is not defined.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga21f8c43c2b1503cc785618c462ac7661}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+defined}} 

\mbox{\hyperlink{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}{svm\+\_\+memory\+\_\+read\+\_\+address}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_ga03ad97eb641f96ba78e43b8db8e2428d}\label{group__readmemory_ga03ad97eb641f96ba78e43b8db8e2428d}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_extract\_pointer\_\_raw@{svm\_memory\_extract\_pointer\_\_raw}}
\index{svm\_memory\_extract\_pointer\_\_raw@{svm\_memory\_extract\_pointer\_\_raw}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_extract\_pointer\_\_raw()}{svm\_memory\_extract\_pointer\_\_raw()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ svm\+\_\+memory\+\_\+extract\+\_\+pointer\+\_\+\+\_\+raw (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}}}]{address,  }\item[{const \mbox{\hyperlink{group__api__types_gaab347fe7005c87722bd7d80cfe94333c}{SVM\+\_\+\+Size}}}]{size }\end{DoxyParamCaption})}



This function reads an array of values from a memory. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em address} & The address of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em size} & The size of the zone to read from.\\
\hline
\end{DoxyParams}
\begin{DoxyNote}{Note}
The types of the read values are not checked at all.
\end{DoxyNote}
\begin{DoxyReturn}{Returns}
The array of values associated to the pointer with nul values for non-\/initialised addresses, terminated by a C/\+C++ null pointer.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The returned array is a valid SVM variable\+: its scope can be changed if needed, and the pointer shall not be freed explicitely.
\end{DoxyNote}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when at least one address is not defined.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga21f8c43c2b1503cc785618c462ac7661}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+defined}} 

\mbox{\hyperlink{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}{svm\+\_\+memory\+\_\+read\+\_\+address}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}\label{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_address@{svm\_memory\_read\_address}}
\index{svm\_memory\_read\_address@{svm\_memory\_read\_address}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_address()}{svm\_memory\_read\_address()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} svm\+\_\+memory\+\_\+read\+\_\+address (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}}}]{address }\end{DoxyParamCaption})}



This function reads a value from a memory. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em address} & The local address to read from.\\
\hline
\end{DoxyParams}
\begin{DoxyNote}{Note}
The type of the read value is not checked at all.
\end{DoxyNote}
\begin{DoxyReturn}{Returns}
The value associated to the address.
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when the address is not initialised.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_ga6135e9d39a96ecb28f1e42895bdf6be9}\label{group__readmemory_ga6135e9d39a96ecb28f1e42895bdf6be9}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_address\_type@{svm\_memory\_read\_address\_type}}
\index{svm\_memory\_read\_address\_type@{svm\_memory\_read\_address\_type}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_address\_type()}{svm\_memory\_read\_address\_type()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} svm\+\_\+memory\+\_\+read\+\_\+address\+\_\+type (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}}}]{address,  }\item[{const \mbox{\hyperlink{group__api__types_ga1d0dbcf7d04a60f9bab902433710f617}{SVM\+\_\+\+Type}}}]{type }\end{DoxyParamCaption})}



This function reads a value from a memory having a given type. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em address} & The local address to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em type} & The type for type checking.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The value associated to the address.
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when the address is not initialised. \\
\hline
{\em MEMORY} & interruption when the address does not contains a value of the expected type.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__addressmemory_ga01cd117746123ca78ec0f373816dd130}{svm\+\_\+memory\+\_\+address\+\_\+get\+\_\+type}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_ga54c05340173a1d8a00ddbc6dd596c467}\label{group__readmemory_ga54c05340173a1d8a00ddbc6dd596c467}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_address\_type\_external@{svm\_memory\_read\_address\_type\_external}}
\index{svm\_memory\_read\_address\_type\_external@{svm\_memory\_read\_address\_type\_external}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_address\_type\_external()}{svm\_memory\_read\_address\_type\_external()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} svm\+\_\+memory\+\_\+read\+\_\+address\+\_\+type\+\_\+external (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}}}]{address,  }\item[{const \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}}}]{type }\end{DoxyParamCaption})}



This function reads a value from a memory having a given plugin type. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em address} & The local address to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em type} & The plugin type name for type checking.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The value associated to the address.
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em FAILURE} & interruption when the type parameter does not identify a plugin type. \\
\hline
{\em MEMORY} & interruption when the address is not initialised. \\
\hline
{\em MEMORY} & interruption when the address does not contains a value of the expected type.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__addressmemory_ga01cd117746123ca78ec0f373816dd130}{svm\+\_\+memory\+\_\+address\+\_\+get\+\_\+type}} 

svm\+\_\+memory\+\_\+address\+\_\+get\+\_\+type\+\_\+name 

\mbox{\hyperlink{group__pluginobjects_gabfe8773add90095fc494b579682ec003}{svm\+\_\+plugin\+\_\+has\+\_\+type}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_ga897974aa7f239ee8f06b8349eff44b10}\label{group__readmemory_ga897974aa7f239ee8f06b8349eff44b10}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_address\_type\_internal@{svm\_memory\_read\_address\_type\_internal}}
\index{svm\_memory\_read\_address\_type\_internal@{svm\_memory\_read\_address\_type\_internal}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_address\_type\_internal()}{svm\_memory\_read\_address\_type\_internal()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} svm\+\_\+memory\+\_\+read\+\_\+address\+\_\+type\+\_\+internal (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}}}]{address,  }\item[{const \mbox{\hyperlink{group__api__types_gaaec5220542c82828f3e864fa64b679e5}{SVM\+\_\+\+Type\+\_\+\+Internal}}}]{type }\end{DoxyParamCaption})}



This function reads a value from a memory having a given internal type. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em address} & The local address to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em type} & The internal type for type checking.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The value associated to the address.
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when the address is not initialised. \\
\hline
{\em MEMORY} & interruption when the address does not contains a value of the expected type.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__addressmemory_ga01cd117746123ca78ec0f373816dd130}{svm\+\_\+memory\+\_\+address\+\_\+get\+\_\+type}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_gabe48fe888f4891c8a0cd3fb9009eb63a}\label{group__readmemory_gabe48fe888f4891c8a0cd3fb9009eb63a}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_pointer@{svm\_memory\_read\_pointer}}
\index{svm\_memory\_read\_pointer@{svm\_memory\_read\_pointer}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_pointer()}{svm\_memory\_read\_pointer()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ svm\+\_\+memory\+\_\+read\+\_\+pointer (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_ga613f7430f76ab41fd47f6a386c370828}{SVM\+\_\+\+Value\+\_\+\+Pointer}}}]{pointer }\end{DoxyParamCaption})}



This function reads an array of values from a memory. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em pointer} & The pointer of the zone to read from.\\
\hline
\end{DoxyParams}
\begin{DoxyNote}{Note}
The types of the read values are not checked at all.
\end{DoxyNote}
\begin{DoxyReturn}{Returns}
The array of values associated to the pointer, terminated by a C/\+C++ null pointer.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The returned array is a valid SVM variable\+: its scope can be changed if needed, and the pointer shall not be freed explicitely.
\end{DoxyNote}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when at least one address is not initialised.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}{svm\+\_\+memory\+\_\+read\+\_\+address}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_gaaeea16fbc93f6f7674e3b21134c52412}\label{group__readmemory_gaaeea16fbc93f6f7674e3b21134c52412}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_pointer\_\_raw@{svm\_memory\_read\_pointer\_\_raw}}
\index{svm\_memory\_read\_pointer\_\_raw@{svm\_memory\_read\_pointer\_\_raw}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_pointer\_\_raw()}{svm\_memory\_read\_pointer\_\_raw()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+\+\_\+raw (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}}}]{address,  }\item[{const \mbox{\hyperlink{group__api__types_gaab347fe7005c87722bd7d80cfe94333c}{SVM\+\_\+\+Size}}}]{size }\end{DoxyParamCaption})}



This function reads an array of values from a memory. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em address} & The address of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em size} & The size of the zone to read from.\\
\hline
\end{DoxyParams}
\begin{DoxyNote}{Note}
The types of the read values are not checked at all.
\end{DoxyNote}
\begin{DoxyReturn}{Returns}
The array of values associated to the pointer, terminated by a C/\+C++ null pointer.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The returned array is a valid SVM variable\+: its scope can be changed if needed, and the pointer shall not be freed explicitely.
\end{DoxyNote}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when at least one address is not initialised.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}{svm\+\_\+memory\+\_\+read\+\_\+address}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_ga3b9747e83d3f20bfce5d0d4711bad197}\label{group__readmemory_ga3b9747e83d3f20bfce5d0d4711bad197}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_pointer\_type@{svm\_memory\_read\_pointer\_type}}
\index{svm\_memory\_read\_pointer\_type@{svm\_memory\_read\_pointer\_type}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_pointer\_type()}{svm\_memory\_read\_pointer\_type()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+type (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_ga613f7430f76ab41fd47f6a386c370828}{SVM\+\_\+\+Value\+\_\+\+Pointer}}}]{pointer,  }\item[{const \mbox{\hyperlink{group__api__types_ga1d0dbcf7d04a60f9bab902433710f617}{SVM\+\_\+\+Type}}}]{type }\end{DoxyParamCaption})}



This function reads an array of values from a memory with unique type checking. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em pointer} & The pointer of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em type} & The type for type checking.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The array of values associated to the pointer, terminated by a C/\+C++ null pointer.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The returned array is a valid SVM variable\+: its scope can be changed if needed, and the pointer shall not be freed explicitely.
\end{DoxyNote}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when at least one address is not initialised. \\
\hline
{\em MEMORY} & interruption when at least one address does not contains a value of the expected type.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}{svm\+\_\+memory\+\_\+read\+\_\+address}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_ga076b43945a1e78cb60d9df350a5b9e1c}\label{group__readmemory_ga076b43945a1e78cb60d9df350a5b9e1c}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_pointer\_type\_\_raw@{svm\_memory\_read\_pointer\_type\_\_raw}}
\index{svm\_memory\_read\_pointer\_type\_\_raw@{svm\_memory\_read\_pointer\_type\_\_raw}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_pointer\_type\_\_raw()}{svm\_memory\_read\_pointer\_type\_\_raw()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+type\+\_\+\+\_\+raw (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}}}]{address,  }\item[{const \mbox{\hyperlink{group__api__types_gaab347fe7005c87722bd7d80cfe94333c}{SVM\+\_\+\+Size}}}]{size,  }\item[{const \mbox{\hyperlink{group__api__types_ga1d0dbcf7d04a60f9bab902433710f617}{SVM\+\_\+\+Type}}}]{type }\end{DoxyParamCaption})}



This function reads an array of values from a memory with unique type checking. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em address} & The address of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em size} & The size of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em type} & The type for type checking.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The array of values associated to the pointer, terminated by a C/\+C++ null pointer.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The returned array is a valid SVM variable\+: its scope can be changed if needed, and the pointer shall not be freed explicitely.
\end{DoxyNote}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when at least one address is not initialised. \\
\hline
{\em MEMORY} & interruption when at least one address does not contains a value of the expected type.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}{svm\+\_\+memory\+\_\+read\+\_\+address}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_ga2621d32aac252e69c0660592bf8d7430}\label{group__readmemory_ga2621d32aac252e69c0660592bf8d7430}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_pointer\_type\_external@{svm\_memory\_read\_pointer\_type\_external}}
\index{svm\_memory\_read\_pointer\_type\_external@{svm\_memory\_read\_pointer\_type\_external}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_pointer\_type\_external()}{svm\_memory\_read\_pointer\_type\_external()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+type\+\_\+external (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_ga613f7430f76ab41fd47f6a386c370828}{SVM\+\_\+\+Value\+\_\+\+Pointer}}}]{pointer,  }\item[{const \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}}}]{type }\end{DoxyParamCaption})}



This function reads an array of values from a memory with unique type checking against an external type. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em pointer} & The pointer of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em type} & The plugin type name for type checking.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The array of values associated to the pointer, terminated by a C/\+C++ null pointer.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The returned array is a valid SVM variable\+: its scope can be changed if needed, and the pointer shall not be freed explicitely.
\end{DoxyNote}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when at least one address is not initialised. \\
\hline
{\em MEMORY} & interruption when at least one address does not contains a value of the expected type.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}{svm\+\_\+memory\+\_\+read\+\_\+address}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_ga4f132e7454df4f517f6624819720cf7c}\label{group__readmemory_ga4f132e7454df4f517f6624819720cf7c}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_pointer\_type\_external\_\_raw@{svm\_memory\_read\_pointer\_type\_external\_\_raw}}
\index{svm\_memory\_read\_pointer\_type\_external\_\_raw@{svm\_memory\_read\_pointer\_type\_external\_\_raw}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_pointer\_type\_external\_\_raw()}{svm\_memory\_read\_pointer\_type\_external\_\_raw()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+type\+\_\+external\+\_\+\+\_\+raw (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}}}]{address,  }\item[{const \mbox{\hyperlink{group__api__types_gaab347fe7005c87722bd7d80cfe94333c}{SVM\+\_\+\+Size}}}]{size,  }\item[{const \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}}}]{type }\end{DoxyParamCaption})}



This function reads an array of values from a memory with unique type checking against an external type. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em address} & The address of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em size} & The size of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em type} & The plugin type name for type checking.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The array of values associated to the pointer, terminated by a C/\+C++ null pointer.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The returned array is a valid SVM variable\+: its scope can be changed if needed, and the pointer shall not be freed explicitely.
\end{DoxyNote}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when at least one address is not initialised. \\
\hline
{\em MEMORY} & interruption when at least one address does not contains a value of the expected type.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}{svm\+\_\+memory\+\_\+read\+\_\+address}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_gae5f753314867313eb1a9b2534a4f5f98}\label{group__readmemory_gae5f753314867313eb1a9b2534a4f5f98}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_pointer\_type\_internal@{svm\_memory\_read\_pointer\_type\_internal}}
\index{svm\_memory\_read\_pointer\_type\_internal@{svm\_memory\_read\_pointer\_type\_internal}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_pointer\_type\_internal()}{svm\_memory\_read\_pointer\_type\_internal()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+type\+\_\+internal (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_ga613f7430f76ab41fd47f6a386c370828}{SVM\+\_\+\+Value\+\_\+\+Pointer}}}]{pointer,  }\item[{const \mbox{\hyperlink{group__api__types_gaaec5220542c82828f3e864fa64b679e5}{SVM\+\_\+\+Type\+\_\+\+Internal}}}]{type }\end{DoxyParamCaption})}



This function reads an array of values from a memory with unique type checking against an internal type. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em pointer} & The pointer of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em type} & The internal type for type checking.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The array of values associated to the pointer, terminated by a C/\+C++ null pointer.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The returned array is a valid SVM variable\+: its scope can be changed if needed, and the pointer shall not be freed explicitely.
\end{DoxyNote}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when at least one address is not initialised. \\
\hline
{\em MEMORY} & interruption when at least one address does not contains a value of the expected type.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}{svm\+\_\+memory\+\_\+read\+\_\+address}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_gaa61c3dc10b8aefe965ce00b22c059702}\label{group__readmemory_gaa61c3dc10b8aefe965ce00b22c059702}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_pointer\_type\_internal\_\_raw@{svm\_memory\_read\_pointer\_type\_internal\_\_raw}}
\index{svm\_memory\_read\_pointer\_type\_internal\_\_raw@{svm\_memory\_read\_pointer\_type\_internal\_\_raw}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_pointer\_type\_internal\_\_raw()}{svm\_memory\_read\_pointer\_type\_internal\_\_raw()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+type\+\_\+internal\+\_\+\+\_\+raw (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}}}]{address,  }\item[{const \mbox{\hyperlink{group__api__types_gaab347fe7005c87722bd7d80cfe94333c}{SVM\+\_\+\+Size}}}]{size,  }\item[{const \mbox{\hyperlink{group__api__types_gaaec5220542c82828f3e864fa64b679e5}{SVM\+\_\+\+Type\+\_\+\+Internal}}}]{type }\end{DoxyParamCaption})}



This function reads an array of values from a memory with unique type checking against an internal type. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em address} & The address of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em size} & The size of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em type} & The internal type for type checking.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The array of values associated to the pointer, terminated by a C/\+C++ null pointer.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The returned array is a valid SVM variable\+: its scope can be changed if needed, and the pointer shall not be freed explicitely.
\end{DoxyNote}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em MEMORY} & interruption when at least one address is not initialised. \\
\hline
{\em MEMORY} & interruption when at least one address does not contains a value of the expected type.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}{svm\+\_\+memory\+\_\+read\+\_\+address}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_ga06e1d9919b03e43b0a481b7252dba6ad}\label{group__readmemory_ga06e1d9919b03e43b0a481b7252dba6ad}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_pointer\_zone@{svm\_memory\_read\_pointer\_zone}}
\index{svm\_memory\_read\_pointer\_zone@{svm\_memory\_read\_pointer\_zone}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_pointer\_zone()}{svm\_memory\_read\_pointer\_zone()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+zone (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_ga613f7430f76ab41fd47f6a386c370828}{SVM\+\_\+\+Value\+\_\+\+Pointer}}}]{pointer,  }\item[{const \mbox{\hyperlink{group__api__types_gab09bc91d1ed2c59cf667d75b06fb3170}{SVM\+\_\+\+Memory\+\_\+\+Zone}}}]{zone }\end{DoxyParamCaption})}



This function reads an array of values from a memory with detailed type checking. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em pointer} & The pointer of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em zone} & The zone for type checking.\\
\hline
\end{DoxyParams}
When the type at a read address is compared to the type AUTO in the memory zone, the type checking is disabled for this address.

\begin{DoxyReturn}{Returns}
The array of values associated to the pointer, terminated by a C/\+C++ null pointer.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The returned array is a valid SVM variable\+: its scope can be changed if needed, and the pointer shall not be freed explicitely.
\end{DoxyNote}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em FAILURE} & interruption when the zone and the pointer have different sizes. \\
\hline
{\em MEMORY} & interruption when at least one address is not initialised. \\
\hline
{\em MEMORY} & interruption when at least one address does not contains a value of the expected type.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}{svm\+\_\+memory\+\_\+read\+\_\+address}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__readmemory_gab4fbc518941f7fac96b2ce361e03788b}\label{group__readmemory_gab4fbc518941f7fac96b2ce361e03788b}} 
\index{SVM memory read@{SVM memory read}!svm\_memory\_read\_pointer\_zone\_\_raw@{svm\_memory\_read\_pointer\_zone\_\_raw}}
\index{svm\_memory\_read\_pointer\_zone\_\_raw@{svm\_memory\_read\_pointer\_zone\_\_raw}!SVM memory read@{SVM memory read}}
\doxysubsubsection{\texorpdfstring{svm\_memory\_read\_pointer\_zone\_\_raw()}{svm\_memory\_read\_pointer\_zone\_\_raw()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_gaf37a7c40972a9dabfa18b14127c34fb1}{SVM\+\_\+\+Value}} $\ast$ svm\+\_\+memory\+\_\+read\+\_\+pointer\+\_\+zone\+\_\+\+\_\+raw (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga19af2c6060f3ae282ea4e73121fac69c}{SVM\+\_\+\+Kernel}}}]{kernel,  }\item[{const \mbox{\hyperlink{group__api__types_gae19c9a8c6077446e11c34dd11059f647}{SVM\+\_\+\+Address}}}]{address,  }\item[{const \mbox{\hyperlink{group__api__types_gaab347fe7005c87722bd7d80cfe94333c}{SVM\+\_\+\+Size}}}]{size,  }\item[{const \mbox{\hyperlink{group__api__types_gab09bc91d1ed2c59cf667d75b06fb3170}{SVM\+\_\+\+Memory\+\_\+\+Zone}}}]{zone }\end{DoxyParamCaption})}



This function reads an array of values from a memory with detailed type checking. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em kernel} & The kernel in which the targeted memory is. \\
\hline
\mbox{\texttt{ in}}  & {\em address} & The address of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em size} & The size of the zone to read from. \\
\hline
\mbox{\texttt{ in}}  & {\em zone} & The zone for type checking.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The array of values associated to the pointer, terminated by a C/\+C++ null pointer.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The returned array is a valid SVM variable\+: its scope can be changed if needed, and the pointer shall not be freed explicitely.
\end{DoxyNote}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the kernel is not owned by our process or is not in a process locked by ours. \\
\hline
{\em FAILURE} & interruption when the zone has a size different from the size. \\
\hline
{\em MEMORY} & interruption when at least one address is not initialised. \\
\hline
{\em MEMORY} & interruption when at least one address does not contains a value of the expected type.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__addressmemory_ga4a4b65d000236f7b45531758d373b422}{svm\+\_\+memory\+\_\+address\+\_\+is\+\_\+initialised}} 

\mbox{\hyperlink{group__readmemory_ga48c6e9ca7c32a2145b1514f1309f675e}{svm\+\_\+memory\+\_\+read\+\_\+address}} 

\mbox{\hyperlink{group__ownershipprocesses_ga535796c3203a2baa8095c951b9b2c205}{svm\+\_\+process\+\_\+ownership\+\_\+lock}} 

\mbox{\hyperlink{group__getkernels_gad6a03dbf0dd283278cdc4bbc2266efa5}{svm\+\_\+kernel\+\_\+get\+\_\+current}} 
\end{DoxySeeAlso}
