mirror of
https://github.com/openmv/openmv.git
synced 2025-11-04 14:49:50 +08:00
44 lines
20 KiB
HTML
44 lines
20 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
|
|
|
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Dlist Functions</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
|
|
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
|
|
|
|
<!-- Generated by Natural Docs, version 1.52 -->
|
|
<!-- http://www.naturaldocs.org -->
|
|
|
|
<!-- saved from url=(0026)http://www.naturaldocs.org -->
|
|
|
|
|
|
|
|
|
|
<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Dlist_Functions"></a>Dlist Functions</h1><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Dlist_Functions" >Dlist Functions</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#d2_executedlist" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">d2_executedlist</a></td><td class=SDescription>Execute an already prepared display list. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#d2_adddlist" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">d2_adddlist</a></td><td class=SDescription>Add an already prepared display list to the current render buffer. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
|
|
|
|
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Functions"></a>Functions</h3></div></div>
|
|
|
|
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="d2_executedlist"></a>d2_executedlist</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_executedlist(</td><td class="PTypePrefix prettyprint " nowrap></td><td class="PType prettyprint " nowrap>d2_device </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PTypePrefix prettyprint " nowrap>const </td><td class="PType prettyprint " nowrap>void </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>address,</td></tr><tr><td></td><td class="PTypePrefix prettyprint " nowrap></td><td class="PType prettyprint " nowrap>d2_u32 </td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>flags</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Execute an already prepared display list. A display list (Dlist) can be created e.g. by <a href="dave_rbuffer-c.html#d2_dumprenderbuffer" class=LFunction id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">d2_dumprenderbuffer</a>.</p><p>Basically the address will be sent to D/AVE and will be executed immediately. So the dlist address must be accessible by the GPU and it is in the application’s responsibility to prepare the Dlist correctly.</p><p>d2_executedlist must not be called while D/AVE is busy rendering (see: <a href="dave_rbuffer-c.html#Render_Buffers" class=LSection id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">Render Buffers</a>).</p><h4 class=CHeading>Note</h4><p>This has no influence on the render buffer mechanism. The driver will manage cooperation of render buffers and Dlists.</p><h4 class=CHeading>Note</h4><p>In case d2_opendevice was called with d2_df_no_dlist address must be accessible by the CPU.</p><h4 class=CHeading>parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>handle</td><td class=CDLDescription>device pointer (see: <a href="dave_driver-c.html#d2_opendevice" class=LFunction id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">d2_opendevice</a>)</td></tr><tr><td class=CDLEntry>address</td><td class=CDLDescription>Address of the Dlist (must be accessible by the GPU)</td></tr><tr><td class=CDLEntry>flags</td><td class=CDLDescription>reserved (set to 0)</td></tr></table><h4 class=CHeading>returns</h4><p>errorcode (D2_OK if successful) see <a href="../inc/dave_errorcodes-h.html#Errorcodes" class=LSection id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">Errorcodes</a> for details</p></div></div></div>
|
|
|
|
<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="d2_adddlist"></a>d2_adddlist</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_adddlist(</td><td class="PType prettyprint " nowrap>d2_device </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>void </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>address,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32 </td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>size,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_u32 </td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>flags</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Add an already prepared display list to the current render buffer. A display list (Dlist) can be created e.g. by <a href="dave_rbuffer-c.html#d2_dumprenderbuffer" class=LFunction id=link7 onMouseOver="ShowTip(event, 'tt3', 'link7')" onMouseOut="HideTip('tt3')">d2_dumprenderbuffer</a>.</p><p>Depending on the flags, the Dlist will be added to the current render buffer by copying its content or by adding ‘call’ operations to the current render buffer.</p><p>If a ‘postprocess’ rendermode is active the layers are merged before the Dlist is added (see: <a href="dave_driver-c.html#d2_selectrendermode" class=LFunction id=link8 onMouseOver="ShowTip(event, 'tt7', 'link8')" onMouseOut="HideTip('tt7')">d2_selectrendermode</a>).</p><h4 class=CHeading>Note</h4><p>If d2_al_no_copy is selected, the GPU must be able to select the specified address, in case if d2_al_copy the CPU must be able to access the Dlist.</p><h4 class=CHeading>Note</h4><p>For the mode d2_al_no_copy the low level driver must support the handling of lists of Dlist start addresses (see: <a href="dave_driver-c.html#d2_level1interface" class=LFunction id=link9 onMouseOver="ShowTip(event, 'tt8', 'link9')" onMouseOut="HideTip('tt8')">d2_level1interface</a> and low level device <D1 Display list handling at ../../../driver_l1/files/doc/d1_dlistindirect-txt.html>).</p><p>If this handling is not supported then no Dlists can be added in this mode.</p><h4 class=CHeading>parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>handle</td><td class=CDLDescription>device pointer (see: <a href="dave_driver-c.html#d2_opendevice" class=LFunction id=link10 onMouseOver="ShowTip(event, 'tt5', 'link10')" onMouseOut="HideTip('tt5')">d2_opendevice</a>)</td></tr><tr><td class=CDLEntry>address</td><td class=CDLDescription>Address of the Dlist (in case of d2_al_no_copy must be accessible by the GPU in case of d2_al_no_copy must be accessible by CPU)</td></tr><tr><td class=CDLEntry>size</td><td class=CDLDescription>size of Dlist</td></tr><tr><td class=CDLEntry>flags</td><td class=CDLDescription>d2_al_copy, d2_al_no_copy</td></tr></table><h4 class=CHeading>returns</h4><p>errorcode (D2_OK if successful) see <a href="../inc/dave_errorcodes-h.html#Errorcodes" class=LSection id=link11 onMouseOver="ShowTip(event, 'tt6', 'link11')" onMouseOut="HideTip('tt6')">Errorcodes</a> for details</p><h4 class=CHeading>flags</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>d2_al_default</td><td class=CDLDescription>default behavior d2_al_copy.</td></tr><tr><td class=CDLEntry>d2_al_copy</td><td class=CDLDescription>content will be copied.</td></tr><tr><td class=CDLEntry>d2_al_no_copy</td><td class=CDLDescription>call to the Dlist will be added.</td></tr></table><h4 class=CHeading>see also</h4><p><a href="dave_rbuffer-c.html#d2_dumprenderbuffer" class=LFunction id=link12 onMouseOver="ShowTip(event, 'tt3', 'link12')" onMouseOut="HideTip('tt3')">d2_dumprenderbuffer</a>, <a href="dave_rbuffer-c.html#d2_getrenderbuffersize" class=LFunction id=link13 onMouseOver="ShowTip(event, 'tt9', 'link13')" onMouseOut="HideTip('tt9')">d2_getrenderbuffersize</a>, <a href="dave_rbuffer-c.html#d2_relocateframe" class=LFunction id=link14 onMouseOver="ShowTip(event, 'tt10', 'link14')" onMouseOut="HideTip('tt10')">d2_relocateframe</a></p></div></div></div>
|
|
|
|
</div><!--Content-->
|
|
|
|
|
|
<div id=Footer>© 2016 by TES Electronic Solutions · <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
|
|
|
|
|
|
<div id=Menu><div class=MEntry><div class=MFile><a href="../doc/overview-txt.html">Driver Overview</a></div></div><div class=MEntry><div class=MFile><a href="../doc/limitations-txt.html">Limitations</a></div></div><div class=MEntry><div class=MFile><a href="../inc/dave_driver-h.html">Basic Types</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">API</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="dave_driver-c.html">Basic Functions</a></div></div><div class=MEntry><div class=MFile><a href="dave_viewport-c.html">Viewport Functions</a></div></div><div class=MEntry><div class=MFile><a href="dave_context-c.html">Context Functions</a></div></div><div class=MEntry><div class=MFile><a href="dave_texture-c.html">Texture Functions</a></div></div><div class=MEntry><div class=MFile><a href="dave_render-c.html">Rendering Functions</a></div></div><div class=MEntry><div class=MFile><a href="dave_blit-c.html">Blit Functions</a></div></div><div class=MEntry><div class=MFile><a href="dave_rbuffer-c.html">Render Buffers</a></div></div><div class=MEntry><div class=MFile><a href="dave_perfcount-c.html">Profiling</a></div></div><div class=MEntry><div class=MFile><a href="dave_utility-c.html">Utility Functions</a></div></div><div class=MEntry><div class=MFile><a href="dave_64bitoperation-c.html">Functions for 64bit operations</a></div></div><div class=MEntry><div class=MFile id=MSelected>Dlist Functions</div></div><div class=MEntry><div class=MFile><a href="../inc/dave_math-h.html">Math Functions</a></div></div><div class=MEntry><div class=MFile><a href="../inc/dave_errorcodes-h.html">Errorcodes</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Index</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Types.html">Types</a></div></div></div></div></div><script type="text/javascript"><!--
|
|
var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
|
|
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Functions">Functions</option><option value="Types">Types</option></select></div></div><!--Menu-->
|
|
|
|
|
|
|
|
<!--START_ND_TOOLTIPS-->
|
|
<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_executedlist(</td><td class="PTypePrefix prettyprint " nowrap></td><td class="PType prettyprint " nowrap>d2_device </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PTypePrefix prettyprint " nowrap>const </td><td class="PType prettyprint " nowrap>void </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>address,</td></tr><tr><td></td><td class="PTypePrefix prettyprint " nowrap></td><td class="PType prettyprint " nowrap>d2_u32 </td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>flags</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Execute an already prepared display list. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_adddlist(</td><td class="PType prettyprint " nowrap>d2_device </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>void </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>address,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32 </td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>size,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_u32 </td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>flags</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Add an already prepared display list to the current render buffer. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_dumprenderbuffer(</td><td class="PType prettyprint " nowrap>d2_device </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_renderbuffer </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>buffer,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>void </td><td class="PParameterPrefix prettyprint " nowrap>**</td><td class="PParameter prettyprint " nowrap>rdata,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_s32 </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>rsize</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Copy the content of a renderbuffer into user memory.</div></div><div class=CToolTip id="tt4"><div class=CSection>Renderbuffers (similar in concept to OpenGL display lists) are the main interface between driver and hardware.</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_device * d2_opendevice(</td><td class="PType prettyprint " nowrap>d2_u32 </td><td class="PParameter prettyprint " nowrap>flags</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Create a new device handle.</div></div><div class=CToolTip id="tt6"><div class=CSection>List of all dave driver errorcodes.</div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_s32 d2_selectrendermode(</td><td class="PType prettyprint " nowrap>d2_device </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_u32 </td><td class="PParameterPrefix prettyprint " nowrap></td><td class="PParameter prettyprint " nowrap>mode</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Select a rendering mode. </div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d1_device * d2_level1interface(</td><td class="PTypePrefix prettyprint " nowrap>const </td><td class="PType prettyprint " nowrap>d2_device </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Get the lowlevel device handle currently used by the d2_device. </div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>d2_u32 d2_getrenderbuffersize(</td><td class="PType prettyprint " nowrap>d2_device </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PType prettyprint " nowrap>d2_renderbuffer </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>rb</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Query the number of allocated display list entries. </div></div><div class=CToolTip id="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters prettyprint "nowrap>extern d2_s32 d2_relocateframe(</td><td class="PTypePrefix prettyprint " nowrap></td><td class="PType prettyprint " nowrap>d2_device </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>handle,</td></tr><tr><td></td><td class="PTypePrefix prettyprint " nowrap>const </td><td class="PType prettyprint " nowrap>void </td><td class="PParameterPrefix prettyprint " nowrap>*</td><td class="PParameter prettyprint " nowrap>ptr</td><td class="PAfterParameters prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Change framebuffer for render commands already issued.</div></div><!--END_ND_TOOLTIPS-->
|
|
|
|
|
|
|
|
|
|
<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
|
|
|
|
|
|
<script language=JavaScript><!--
|
|
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> |