<?php $isip_window_title = "ISIP Homepage"; ?>
<?php include("/data/isip/www/templates/documentation/header/header.html"); ?>

<!--#set var="isip_page_title" value="History" -->
<?php include("/data/isip/www/templates/documentation/body/index_class.html"); ?>
<?php include("/data/isip/www/templates/documentation/body/bar.html"); ?>

<a name="name">
<b>
name:
<a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h">History</a>: public
<a href="../../dstr/Stack/index.html">Stack</a>
&lt;<a href="../Context/index.html">Context</a>&gt
</b>

<br><br>

<a name="synopsis">
<b>synopsis:</b>

<blockquote>
<pre>
g++ [flags ...] file ... -l /isip/tools/lib/$ISIP_BINARY/lib_search.a

#include &lt;History.h&gt;

~History();
History();
History(const History& copy_hist);
History(const String& history);
</pre>
</blockquote>

<a name="quick_start">
<b>quick start:</b>

<blockquote>
<pre>
#include &lt;History.h&gt;

History hist;

GraphVertex<SearchNode> vertex;
history.push(&vertex);

Trace trace;
trace->getHistory()->push(&vertex);
SearchNode* next_node = trace->getHistory()->peek()->getItem();

</pre>
</blockquote>

<a name="description"> 
<b>description:</b>
<br><br>

History is a class to keep track of the history through a
search. It acts like a stack where graph vertices can be pushed onto
and popped off of the history list. The majority of the useful
interface is inherited from the Stack class.
<br><br>

<a name="dependencies">
<b>dependencies:</b>
<br><br>

<ul>
  <li> <a href="../../dstr/Stack/index.html">Stack</a>
  <li> <a href="../Context/index.html">Context</a>
</ul>

<a name="constants">
<b>public constants:</b>
<br><br>

<ul>
  <li> define the class name:
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/hist_00.cc&constant=CLASS_NAME">static const String CLASS_NAME = L"History";</a></pre>
</ul>
	 
<a name="error">       
<b>error codes:</b>
<br><br>

<ul>
  <li> error code indicating a general error:
       <pre><a href="/perl/ifc_document.pl?err=00120100">static const long ERR = 90100;</a></pre>
</ul>

<a name="protected">
<b>protected data:</b>
<br><br>

<ul>
  <li> memory manager:
       
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/hist_00.cc&static=mgr_d">static MemoryManager mgr_d;</a></pre>
       
  <li> debug level:
       
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/hist_00.cc&static=debug_level_d">static Integral::DEBUG debug_level_d;</a></pre>

</ul>

<a name="public">
<b>required public methods:</b>
<br><br>

<ul>
  <li> static methods:  
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=name">static const String& name();</a></pre>
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/hist_02.cc&method=diagnose">static boolean diagnose(Integral::DEBUG debug_level);</a></pre>

  <li> debug methods:
       
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=setDebug">static boolean setDebug(Integral::DEBUG debug_level);</a></pre>

  <li> destructor/constructor(s):
       
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=destructor">~History();</a></pre>
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=default constructor">History();</a></pre>
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=copy+constructor">History(const History& arg);</a></pre>

  <li> assign methods:

       <pre>not present.</pre>       

  <li> operator= method:

       <pre>not present.</pre>

  <li> i/o methods:
       
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=sofSize">long sofSize() const;</a></pre>
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=read">boolean read(Sof& sof, long tag, const String& name = CLASS_NAME);</a></pre>
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=write">boolean write(Sof& sof, long tag, const String& name = CLASS_NAME) const;</a></pre>
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=readData">boolean readData(Sof& sof, const String& pname = String::EMPTY, long size = SofParser::FULL_OBJECT, boolean param = true, boolean nested = false);</a></pre>
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=writeData">boolean writeData(Sof& sof, const String& pname = String::EMPTY) const;</a></pre>

  <li> memory management methods:
       
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=new">static void* operator new(size_t size);</a></pre>
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=new[]">static void* operator new[](size_t size);</a></pre>
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=delete">static void operator delete(void* ptr);</a></pre>
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=delete[]">static void operator delete[](void* ptr);</a></pre>  
        <pre><a href="/perl/ifc_document.pl?file=$isip/class/search/History/History.h&method=setGrowSize">static boolean setGrowSize(long grow_size);</a></pre>
</ul>

<a name="specific">
<b>class-specific public methods:</b>
<br><br>

<ul>
  <li>primary interface for the History class is inherited from the <a href="../../dstr/Stack/index.html">Stack</a> class
</ul>

<a name="private">
<b>private methods:</b>
<br><br>

<ul>       
  <li> none.
</ul>

<a name="examples">
<b>examples:</b>
<br><br>

<ul>
  <li> none.
</ul>

<a name="notes">
<b>notes:</b>
<br><br>

<ul>
  <li> none.
</ul>

<!--#include virtual="/hse/ies/templates/documentation/footer/footer.html" -->
