Files
FireBee_Setup/tools/vision/ldv/doc/english/vapi/me.htm
2022-11-25 03:00:01 +01:00

351 lines
15 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">
<title>Documentation VISION (VAPI) : MEM Interface</title></head>
<body background="../images/conc2.gif" bgcolor="#ffffff">
<div align="center"><center>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tbody><tr>
<td align="center" width="17%"><a href="in.htm"><img src="../images/cprev.jpg" alt="Chapitre précédent" border="0" height="26" hspace="2" width="46"></a><a href="index.htm"><img src="../images/csom.jpg" alt="Retour au sommaire" border="0" height="27" hspace="2" width="32"></a><a href="struct.htm"><img src="../images/csuiv.jpg" alt="Chapitre suivant" border="0" height="26" hspace="2" width="43"></a></td>
<td rowspan="2" align="center" valign="top" width="8%"><p align="center"><img src="../images/icoprinc.gif" height="71" width="59"></p>
</td>
<td width="33%"><p align="center"><font color="#0000ff" size="5"><strong>Documentation </strong><em><strong>VISION
(VAPI)</strong></em></font></p>
</td>
<td rowspan="2" align="center" valign="top" width="8%"><p align="center"><img src="../images/icointro.gif" height="71" width="59"></p>
</td>
<td valign="top" width="17%"><p align="left">Last update&nbsp;: 03/28/20</p>
</td>
</tr>
<tr>
<td width="17%"><p align="center"><a href="..%5C..%5C..%5Cdownload/dvldv.zip"><br></a></p>
</td>
<td width="33%"><p align="center"><font size="4"><strong>MEM
INTERFACE</strong></font></p>
</td>
<td align="center" width="17%">&nbsp;&nbsp;</td>
</tr>
</tbody></table>
</center></div>
<hr>
<div align="center"><center>
<table border="2" width="100%">
<tbody><tr>
<td colspan="2" align="center"><strong>Abstract</strong></td>
</tr>
<tr>
<td width="15%"><strong>Préfixe de l'interface</strong></td>
<td width="85%">Me</td>
</tr>
<tr>
<td width="15%"><strong>Nombre de fonctions</strong></td>
<td width="85%">8</td>
</tr>
<tr>
<td width="15%"><strong>Description</strong></td>
<td width="85%">Set of functions allowing to manipulate memory areas, mostly image oriented + dynamic memory allocations with stats/boundchecks though vision.log</td>
</tr>
</tbody></table>
</center></div>
<p>&nbsp;</p>
<div align="center"><center>
<table border="2" width="100%">
<tbody><tr>
<td width="15%"><a name="MeSCopyMemory8"></a><strong>Prototype</strong></td>
<td width="85%">void cdecl <strong>MeSCopyMemory8</strong>(char
*dst, char *src, unsigned long nb_elems_dst, unsigned
long nb_elems_src)</td>
</tr>
<tr>
<td width="15%"><strong>Parameters</strong></td>
<td width="85%"><strong>[OUT]</strong> dst : Pointer to memory area to change<br>
<strong>[IN]</strong> src : Pointer to memory area to copy from<br>
<strong>[OUT]</strong> nb_elems_dst : Number of 8bit elements in destination area<br>
<strong>[IN]</strong> nb_elems_src :&nbsp;Number of 8bit elements in source area</td>
</tr>
<tr>
<td width="15%"><strong>Return</strong></td>
<td width="85%">None</td>
</tr>
<tr>
<td width="15%"><strong>Description</strong></td>
<td width="85%">Copies
a 8bit memory area by respecting the number of elements in each zone.
Very useful to perform changes on a line. Not working with overlapping
zones.</td>
</tr>
<tr>
<td width="15%"><strong>Comments</strong></td>
<td width="85%">Number of elements shall not be more than 65535 due to specific optimization. If a 68030 processor is available, <em><strong>VISION</strong></em>
will use automatically an optimzed routine.</td>
</tr>
<tr>
<td width="15%"><strong>VAPI </strong><strong>Version</strong></td>
<td width="85%">1.02 or greater</td>
</tr>
</tbody></table>
</center></div>
<p>&nbsp;</p>
<div align="center"><center>
<table border="2" width="100%">
<tbody><tr>
<td width="15%"><a name="MeSCopyMemory16"></a><strong>Prototype</strong></td>
<td width="85%">void cdecl <strong>MeSCopyMemory16</strong>(char
*dst, char *src, unsigned long nb_elems_dst, unsigned
long nb_elems_src)</td>
</tr>
<tr>
<td width="15%"><strong>Parameters</strong></td>
<td width="85%"><strong>[OUT]</strong> dst : Pointer to memory area to change<br>
<strong>[IN]</strong> src : Pointer to memory area to copy from<br>
<strong>[OUT]</strong> nb_elems_dst : Number of 16bit elements in destination area<br>
<strong>[IN]</strong> nb_elems_src :&nbsp;Number of 16bit elements in source area</td>
</tr>
<tr>
<td width="15%"><strong>Retour</strong></td>
<td width="85%">None</td>
</tr>
<tr>
<td width="15%"><strong>Description</strong></td>
<td width="85%">Copies a 16bit memory area by respecting the number of elements in each
zone. Very&nbsp;useful to perform changes on a line. Not working with
overlapping zones.</td>
</tr>
<tr>
<td width="15%"><strong>Return</strong></td>
<td width="85%">Number of elements shall not be more than 32767 due to specific optimization. If a 68030 processor is available, <em><strong>VISION</strong></em>
will use automatically an optimzed routine.</td>
</tr>
<tr>
<td width="15%"><strong>VAPI </strong><strong>Version</strong></td>
<td width="85%">1.02 or greater</td>
</tr>
</tbody></table>
</center></div>
<p>&nbsp;</p>
<div align="center"><center>
<table border="2" width="100%">
<tbody><tr>
<td width="15%"><a name="MeSCopyMemory32"></a><strong>Prototype</strong></td>
<td width="85%">void cdecl <strong>MeSCopyMemory32</strong>(char
*dst, char *src, unsigned long nb_elems_dst, unsigned
long nb_elems_src)</td>
</tr>
<tr>
<td width="15%"><strong>Parameters</strong></td>
<td width="85%"><strong>[OUT]</strong> dst : Pointer to memory area to change<br>
<strong>[IN]</strong> src : Pointer to memory area to copy from<br>
<strong>[OUT]</strong> nb_elems_dst : Number of 32bit elements in destination area<br>
<strong>[IN]</strong> nb_elems_src :&nbsp;Number of 32bit elements in source area</td>
</tr>
<tr>
<td width="15%"><strong>Return</strong></td>
<td width="85%">None</td>
</tr>
<tr>
<td width="15%"><strong>Description</strong></td>
<td width="85%">Copies a 32bit memory area by respecting the number of elements in each
zone. Very&nbsp;useful to perform changes on a line. Not working with
overlapping zones.</td>
</tr>
<tr>
<td width="15%"><strong>Comments</strong></td>
<td width="85%">Number of elements shall not be more than 16383 due to specific optimization. If a 68030 processor is available, <em><strong>VISION</strong></em>
will use automatically an optimzed routine.</td>
</tr>
<tr>
<td width="15%"><strong>VAPI </strong><strong>Version</strong></td>
<td width="85%">1.02 or greater</td>
</tr>
</tbody></table>
</center></div>
<p>&nbsp;</p><div align="center"><center>
<table border="2" width="100%">
<tbody><tr>
<td width="15%"><a name="MeSCopyMemory32"></a><strong>Prototype</strong></td>
<td width="85%">void* cdecl <strong>MeXcalloc</strong>(unsigned long size)</td>
</tr>
<tr>
<td width="15%"><strong>Parameters</strong></td>
<td width="85%"><strong></strong><strong>[IN]</strong> size : Number of bytes to allocate<strong></strong><br></td>
</tr>
<tr>
<td width="15%"><strong>Return</strong></td>
<td width="85%">Pointer to allocated memory of size bytes, NULL if error</td>
</tr>
<tr>
<td width="15%"><strong>Description</strong></td>
<td width="85%">Similar to malloc 'C' function from stdlib</td>
</tr>
<tr>
<td width="15%"><strong>Comments</strong></td>
<td width="85%"><span style="font-weight: bold; font-style: italic;">VISION</span> will keep track of this allocation and check against leak or memory under/over flows.</td>
</tr>
<tr>
<td width="15%"><strong>VAPI </strong><strong>Version</strong></td>
<td width="85%">1.05 or greater</td>
</tr>
</tbody></table>
</center></div>
<p>&nbsp;</p><div align="center"><center>
<table border="2" width="100%">
<tbody><tr>
<td width="15%"><a name="MeSCopyMemory32"></a><strong>Prototype</strong></td>
<td width="85%">void* cdecl <strong>MeXrealloc</strong>(void* ptr, unsigned long size)</td>
</tr>
<tr>
<td width="15%"><strong>Parameters</strong></td>
<td width="85%"><strong></strong><strong>[IN]</strong> ptr : Currently allocated pointer to adjust size<br><strong></strong><strong>[IN]</strong> size : Number of bytes to allocate<strong></strong><br></td>
</tr>
<tr>
<td width="15%"><strong>Return</strong></td>
<td width="85%">Pointer to allocated memory of size bytes, NULL if error</td>
</tr>
<tr>
<td width="15%"><strong>Description</strong></td>
<td width="85%">Similar to realloc 'C' function from stdlib</td>
</tr>
<tr>
<td width="15%"><strong>Comments</strong></td>
<td width="85%"><span style="font-weight: bold; font-style: italic;">VISION</span> will keep track of this allocation and check against leak or memory under/over flows.</td>
</tr>
<tr>
<td width="15%"><strong>VAPI </strong><strong>Version</strong></td>
<td width="85%">1.05 or greater</td>
</tr>
</tbody></table>
</center></div>
<p>&nbsp;</p><div align="center"><center>
<table border="2" width="100%">
<tbody><tr>
<td width="15%"><a name="MeSCopyMemory32"></a><strong>Prototype</strong></td>
<td width="85%">void cdecl <strong>MeXfree</strong>(void* ptr)</td>
</tr>
<tr>
<td width="15%"><strong>Parameters</strong></td>
<td width="85%"><strong></strong><strong>[IN]</strong> ptr : Pointer to memory to be freed<br></td>
</tr>
<tr>
<td width="15%"><strong>Return</strong></td>
<td width="85%">None</td>
</tr>
<tr>
<td width="15%"><strong>Description</strong></td>
<td width="85%">Similar to free 'C' function from stdlib</td>
</tr>
<tr>
<td width="15%"><strong>Comments</strong></td>
<td width="85%"><span style="font-weight: bold; font-style: italic;">VISION</span> will check pointer is valid and if under/over flows has occured</td>
</tr>
<tr>
<td width="15%"><strong>VAPI </strong><strong>Version</strong></td>
<td width="85%">1.05 or greater</td>
</tr>
</tbody></table>
</center></div>
<p></p><div align="center"><center>
<table border="2" width="100%">
<tbody><tr>
<td width="15%"><a name="MeSCopyMemory32"></a><strong>Prototype</strong></td>
<td width="85%">void* cdecl <strong>MeXcalloc</strong>(unsigned long nb_elems, unsigned long elem_size)</td>
</tr>
<tr>
<td width="15%"><strong>Parameters</strong></td>
<td width="85%"><strong></strong><strong>[IN]</strong>&nbsp;nb_elems : Number of elements to allocate<br><strong></strong><strong>[IN]</strong>&nbsp;elem_size : Sze of an element in bytes<strong></strong><br></td>
</tr>
<tr>
<td width="15%"><strong>Return</strong></td>
<td width="85%">Pointer to allocated memory of size bytes, NULL if error</td>
</tr>
<tr>
<td width="15%"><strong>Description</strong></td>
<td width="85%">Similar to calloc 'C' function from stdlib; like malloc but allocated memory is zeroed.</td>
</tr>
<tr>
<td width="15%"><strong>Comments</strong></td>
<td width="85%"><span style="font-weight: bold; font-style: italic;">VISION</span> will keep track of this allocation and check against leak or memory under/over flows.</td>
</tr>
<tr>
<td width="15%"><strong>VAPI </strong><strong>Version</strong></td>
<td width="85%">1.05 or greater</td>
</tr>
</tbody></table>
</center></div>
<p>&nbsp;</p><div align="center"><center>
<table border="2" width="100%">
<tbody><tr>
<td width="15%"><a name="MeSCopyMemory32"></a><strong>Prototype</strong></td>
<td width="85%">char* cdecl <strong>MeXstrdup</strong>(char* s)</td>
</tr>
<tr>
<td width="15%"><strong>Parameters</strong></td>
<td width="85%"><strong></strong><strong>[IN]</strong> s : Pointer to string to duplicate<strong></strong><strong></strong><strong></strong><br></td>
</tr>
<tr>
<td width="15%"><strong>Return</strong></td>
<td width="85%">Pointer to duplicated string, NULL if error</td>
</tr>
<tr>
<td width="15%"><strong>Description</strong></td>
<td width="85%">Similar to strdup 'C' function from stdlib</td>
</tr>
<tr>
<td width="15%"><strong>Comments</strong></td>
<td width="85%"><span style="font-weight: bold; font-style: italic;">VISION</span> will keep track of this allocation and check against leak or memory under/over flows.</td>
</tr>
<tr>
<td width="15%"><strong>VAPI </strong><strong>Version</strong></td>
<td width="85%">1.05 or greater</td>
</tr>
</tbody></table>
</center></div>
<p>&nbsp;</p>
<hr>
<div align="center"><center>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tbody><tr>
<td align="center" width="17%"><a href="in.htm"><img src="../images/cprev.jpg" alt="Chapitre précédent" border="0" height="26" hspace="2" width="46"></a><a href="index.htm"><img src="../images/csom.jpg" alt="Retour au sommaire" border="0" height="26" hspace="2" width="26"></a><a href="struct.htm"><img src="../images/csuiv.jpg" alt="Chapitre suivant" border="0" height="26" hspace="2" width="43"></a></td>
<td rowspan="2" align="center" valign="top" width="8%"><p align="center"><img src="../images/icoprinc.gif" height="71" width="59"></p>
</td>
<td width="33%"><p align="center"><font color="#0000ff" size="5"><strong>Documentation </strong><em><strong>VISION
(VAPI)</strong></em></font></p>
</td>
<td rowspan="2" align="center" valign="top" width="8%"><p align="center"><img src="../images/icointro.gif" height="71" width="59"></p>
</td>
<td valign="top" width="17%"><p align="left">Last update&nbsp;:&nbsp;03/28/20</p>
</td>
</tr>
<tr>
<td width="17%"><p align="center"><a href="..%5C..%5C..%5Cdownload/dvldv.zip"><br></a></p>
</td>
<td width="33%"><p align="center"><font size="4"><strong>MEM
INTERFACE</strong></font></p>
</td>
<td valign="top" width="17%">&nbsp; </td>
</tr>
</tbody></table>
</center></div>
</body></html>