blob: 171a241a69278e33e65e26f38b92d61b3cefab98 [file] [log] [blame]
<html><head><title>ovm_queue #(T)</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script></head><body class="FramedContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
<!-- Generated by Natural Docs, version Development Release 01-12-2008 (1.35 base) -->
<!-- http://www.naturaldocs.org -->
<!-- saved from url=(0026)http://www.naturaldocs.org -->
<!--TOP - START OF CONTENT-->
<div id=Content>
<!--CONTENT index=0 -->
<div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="ovm_queue#(T)" href="../../../../src/base/ovm_queue.svh">ovm_queue #(T)</a></h1><div class=CBody><p>Implements a class-based dynamic queue.&nbsp; Allows queues to be allocated on demand, and passed and stored by reference.</p>
<!--START_ND_SUMMARY index=0-->
<div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable>
<!-- index=0 -->
<tr class="SClass"><td colspan=2 class=SEntry><a href="#ovm_queue#(T)" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">ovm_queue #(T)</a></td></tr>
<tr class=SMain><td colspan=2 class=SWideDescription>Implements a class-based dynamic queue. </td></tr>
<tr class="SHierarchy SIndent1 "><td colspan=2 class="SEntry SIndent1">Class Hierarchy</td><tr><tr class="SPrototype SIndent1"><td colspan=2 class=SDescription><div class=ClassHierarchy>
<table border=0 cellspacing=0 cellpadding=0>
<tr><td><div class=CHParent><div class=CHEntry><a href="ovm_object-svh.html#ovm_object" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">ovm_object</a></div></div></td></tr>
<tr><td><div class=CHCurrent><div class=CHEntry>ovm_queue#(T)</div></div></td></tr></table>
</div></td></tr>
<tr class="SPrototype SIndent1">
<td colspan=2 class="SEntry SIndent1">Class Declaration</td><tr><tr class="SPrototype SIndent1"><td colspan=2 class=SDescription><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>class ovm_queue #(</td><td class=PType nowrap>type&nbsp;</td><td class=PParameter nowrap>T</td><td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td><td class=PDefaultValue width=100%>int</td><td class=PAfterParameters nowrap>) extends ovm_object</td></tr></table></td></tr></table></blockquote></td></tr>
<!-- index=1 -->
<tr class="SGroup SIndent1"><td class=SEntry><a href="#ovm_queue#(T).Methods" >Methods</a></td><td class=SDescription></td></tr>
<!-- index=2 -->
<tr class="SMethod SIndent2"><td class=SEntry><a href="#ovm_queue#(T).new" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">new</a></td><td class=SDescription>Creates a new queue with the given <i>name</i>.</td></tr>
<!-- index=3 -->
<tr class="SMethod SIndent2 SMarked"><td class=SEntry><a href="#ovm_queue#(T).get_global_queue" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">get_global_queue</a></td><td class=SDescription>Returns the singleton global queue for the item type, T.</td></tr>
<!-- index=4 -->
<tr class="SMethod SIndent2"><td class=SEntry><a href="#ovm_queue#(T).get_global" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">get_global</a></td><td class=SDescription>Returns the specified item instance from the global item queue.</td></tr>
<!-- index=5 -->
<tr class="SMethod SIndent2 SMarked"><td class=SEntry><a href="#ovm_queue#(T).get" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">get</a></td><td class=SDescription>Returns the item at the given <i>index</i>.</td></tr>
<!-- index=6 -->
<tr class="SMethod SIndent2"><td class=SEntry><a href="#ovm_queue#(T).size" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">size</a></td><td class=SDescription>Returns the number of items stored in the queue.</td></tr>
<!-- index=7 -->
<tr class="SMethod SIndent2 SMarked"><td class=SEntry><a href="#ovm_queue#(T).insert" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">insert</a></td><td class=SDescription>Inserts the item at the given <i>index</i> in the queue.</td></tr>
<!-- index=8 -->
<tr class="SMethod SIndent2"><td class=SEntry><a href="#ovm_queue#(T).delete" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">delete</a></td><td class=SDescription>Removes the item at the given <i>index</i> from the queue; if <i>index</i> is not provided, the entire contents of the queue are deleted.</td></tr>
<!-- index=9 -->
<tr class="SMethod SIndent2 SMarked"><td class=SEntry><a href="#ovm_queue#(T).pop_front" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">pop_front</a></td><td class=SDescription>Returns the first element in the queue (index=0), or <i>null</i> if the queue is empty.</td></tr>
<!-- index=10 -->
<tr class="SMethod SIndent2"><td class=SEntry><a href="#ovm_queue#(T).pop_back" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">pop_back</a></td><td class=SDescription>Returns the last element in the queue (index=size()-1), or <i>null</i> if the queue is empty.</td></tr>
<!-- index=11 -->
<tr class="SMethod SIndent2 SMarked"><td class=SEntry><a href="#ovm_queue#(T).push_front" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">push_front</a></td><td class=SDescription>Inserts the given <i>item</i> at the front of the queue.</td></tr>
<!-- index=12 -->
<tr class="SMethod SIndent2"><td class=SEntry><a href="#ovm_queue#(T).push_back" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">push_back</a></td><td class=SDescription>Inserts the given <i>item</i> at the back of the queue.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<!--CONTENT index=1 -->
<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="ovm_queue#(T).Methods" href="../../../../src/base/ovm_queue.svh">Methods</a></h3></div></div>
<!--CONTENT index=2 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="ovm_queue#(T).new" href="../../../../src/base/ovm_queue.svh">new</a></h3><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>function new (</td><td class=PType nowrap>string&nbsp;</td><td class=PParameter nowrap>name</td><td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td><td class=PDefaultValue width=100%>&quot;&quot;</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><div class=CBody><p>Creates a new queue with the given <i>name</i>.</p></div></div></div>
<!--CONTENT index=3 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="ovm_queue#(T).get_global_queue" href="../../../../src/base/ovm_queue.svh">get_global_queue</a></h3><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>static function this_type get_global_queue ()</td></tr></table></blockquote><div class=CBody><p>Returns the singleton global queue for the item type, T.</p><p>This allows items to be shared amongst components throughout the verification environment.</p></div></div></div>
<!--CONTENT index=4 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="ovm_queue#(T).get_global" href="../../../../src/base/ovm_queue.svh">get_global</a></h3><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>static function T get_global (</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>index</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><div class=CBody><p>Returns the specified item instance from the global item queue.</p></div></div></div>
<!--CONTENT index=5 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="ovm_queue#(T).get" href="../../../../src/base/ovm_queue.svh">get</a></h3><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>virtual function T get (</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>index</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><div class=CBody><p>Returns the item at the given <i>index</i>.</p><p>If no item exists by that key, a new item is created with that key and returned.</p></div></div></div>
<!--CONTENT index=6 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="ovm_queue#(T).size" href="../../../../src/base/ovm_queue.svh">size</a></h3><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual function int size ()</td></tr></table></blockquote><div class=CBody><p>Returns the number of items stored in the queue.</p></div></div></div>
<!--CONTENT index=7 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="ovm_queue#(T).insert" href="../../../../src/base/ovm_queue.svh">insert</a></h3><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>virtual function void insert (</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>index,</td></tr><tr><td></td><td class=PType nowrap>T&nbsp;</td><td class=PParameter nowrap>item</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><div class=CBody><p>Inserts the item at the given <i>index</i> in the queue.</p></div></div></div>
<!--CONTENT index=8 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="ovm_queue#(T).delete" href="../../../../src/base/ovm_queue.svh">delete</a></h3><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>virtual function void delete (</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>index</td><td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td><td class=PDefaultValue width=100%>-1</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><div class=CBody><p>Removes the item at the given <i>index</i> from the queue; if <i>index</i> is not provided, the entire contents of the queue are deleted.</p></div></div></div>
<!--CONTENT index=9 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="ovm_queue#(T).pop_front" href="../../../../src/base/ovm_queue.svh">pop_front</a></h3><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual function T pop_front()</td></tr></table></blockquote><div class=CBody><p>Returns the first element in the queue (index=0), or <i>null</i> if the queue is empty.</p></div></div></div>
<!--CONTENT index=10 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="ovm_queue#(T).pop_back" href="../../../../src/base/ovm_queue.svh">pop_back</a></h3><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual function T pop_back()</td></tr></table></blockquote><div class=CBody><p>Returns the last element in the queue (index=size()-1), or <i>null</i> if the queue is empty.</p></div></div></div>
<!--CONTENT index=11 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="ovm_queue#(T).push_front" href="../../../../src/base/ovm_queue.svh">push_front</a></h3><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>virtual function void push_front(</td><td class=PType nowrap>T&nbsp;</td><td class=PParameter nowrap>item</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><div class=CBody><p>Inserts the given <i>item</i> at the front of the queue.</p></div></div></div>
<!--CONTENT index=12 -->
<div class="CMethod"><div class=CTopic><h3 class=CTitle><a name="ovm_queue#(T).push_back" href="../../../../src/base/ovm_queue.svh">push_back</a></h3><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>virtual function void push_back(</td><td class=PType nowrap>T&nbsp;</td><td class=PParameter nowrap>item</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><div class=CBody><p>Inserts the given <i>item</i> at the back of the queue.</p></div></div></div>
</div><!--Content-->
<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CClass><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual class ovm_object extends ovm_void</td></tr></table></blockquote>The ovm_object class is the base class for all OVM data and hierarchical classes. </div></div><div class=CToolTip id="tt2"><div class=CClass><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>class ovm_queue #(</td><td class=PType nowrap>type&nbsp;</td><td class=PParameter nowrap>T</td><td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td><td class=PDefaultValue width=100%>int</td><td class=PAfterParameters nowrap>) extends ovm_object</td></tr></table></td></tr></table></blockquote>Implements a class-based dynamic queue. </div></div><div class=CToolTip id="tt3"><div class=CMethod><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>function new (</td><td class=PType nowrap>string&nbsp;</td><td class=PParameter nowrap>name</td><td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td><td class=PDefaultValue width=100%>&quot;&quot;</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Creates a new queue with the given <i>name</i>.</div></div><div class=CToolTip id="tt4"><div class=CMethod><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>static function this_type get_global_queue ()</td></tr></table></blockquote>Returns the singleton global queue for the item type, T.</div></div><div class=CToolTip id="tt5"><div class=CMethod><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>static function T get_global (</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>index</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns the specified item instance from the global item queue.</div></div><div class=CToolTip id="tt6"><div class=CMethod><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>virtual function T get (</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>index</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Returns the item at the given <i>index</i>.</div></div><div class=CToolTip id="tt7"><div class=CMethod><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual function int size ()</td></tr></table></blockquote>Returns the number of items stored in the queue.</div></div><div class=CToolTip id="tt8"><div class=CMethod><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>virtual function void insert (</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>index,</td></tr><tr><td></td><td class=PType nowrap>T&nbsp;</td><td class=PParameter nowrap>item</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Inserts the item at the given <i>index</i> in the queue.</div></div><div class=CToolTip id="tt9"><div class=CMethod><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>virtual function void delete (</td><td class=PType nowrap>int&nbsp;</td><td class=PParameter nowrap>index</td><td class=PDefaultValuePrefix>&nbsp;=&nbsp;</td><td class=PDefaultValue width=100%>-1</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Removes the item at the given <i>index</i> from the queue; if <i>index</i> is not provided, the entire contents of the queue are deleted.</div></div><div class=CToolTip id="tt10"><div class=CMethod><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual function T pop_front()</td></tr></table></blockquote>Returns the first element in the queue (index=0), or <i>null</i> if the queue is empty.</div></div><div class=CToolTip id="tt11"><div class=CMethod><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>virtual function T pop_back()</td></tr></table></blockquote>Returns the last element in the queue (index=size()-1), or <i>null</i> if the queue is empty.</div></div><div class=CToolTip id="tt12"><div class=CMethod><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>virtual function void push_front(</td><td class=PType nowrap>T&nbsp;</td><td class=PParameter nowrap>item</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Inserts the given <i>item</i> at the front of the queue.</div></div><div class=CToolTip id="tt13"><div class=CMethod><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>virtual function void push_back(</td><td class=PType nowrap>T&nbsp;</td><td class=PParameter nowrap>item</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Inserts the given <i>item</i> at the back of the queue.</div></div><!--END_ND_TOOLTIPS-->
<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>