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

<!--#set var="isip_page_title" value="SymbolGraphDatabase" -->
<?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/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h">SymbolGraphDatabase</a>

</b>
<br><br>

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

<blockquote>
<pre>

g++ [flags ...] file ... -l /isip/tools/lib/$ISIP_BINARY/lib_mmedia.a

#include &lt;SymbolGraphDatabase.h&gt;

String& getDataBaseName();
boolean setDataBaseName(String& arg);
boolean setDataBaseSof(Sof& sof);
boolean getRecord(String& identifier, Filename& record);
boolean removeRecord(String& identifier);
boolean insertRecord(String& identifier, Long& index);
boolean load(Sdb& id_list, Sdb& file_list, Vector&lt;Filename&gt;& file_vec);
boolean store(Sof& db_sof, long tag, Vector&lt;Filename&gt;& file_vec);
</pre>
</blockquote>

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

<blockquote>
<pre>

String name_00(L"TIDIGITS");

SymbolGraphDatabase audb_00;
audb_00.setDataBaseName(name_00);

</pre>
</blockquote>

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

This class facilitates the interface between the symbol graph database and another applications or classes.

<br><br>

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

<ul>
    <li> none.
</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/mmedia/SymbolGraphDatabase/audb_00.cc&constant=CLASS_NAME">static const String CLASS_NAME;</a></pre>

  <li> i/o related constants:
       
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_00.cc&constant=DEF_PARAM">static const String DEF_PARAM;</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_00.cc&constant=PARAM_KEYS">static const String PARAM_KEYS;</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_00.cc&constant=PARAM_NAME">static const String PARAM_NAME;</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_00.cc&constant=PARAM_VALUES">static const String PARAM_VALUES;</a></pre>

</ul>

<a name="error">
<b>error codes:</b>
<br><br>

<ul>
  <li> error codes indicating general errors:

</ul>

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

<ul>
  <li> declare the database name:

       <pre>String name_d;</pre>

  <li> define the container object:

       <pre>HashTable&lt;String, Long&gt; hash_d;</pre>

  <li> define the database file pointer:

       <pre>Sof* database_sof_d;</pre>

  <li> declare the debugging parameters:

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_00.cc&static=debug_level_d">static Integral::DEBUG debug_level_d;</a></pre>

  <li> declare the memory manager:

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_00.cc&static=mgr_d">static MemoryManager mgr_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/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=name&instance=0">static const String& name();</a></pre>

  <li> debug methods:

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_02.cc&method=diagnose&instance=0">static boolean diagnose(Integral::DEBUG debug_level);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_01.cc&method=debug&instance=0">boolean debug(const unichar* msg) const;</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=setDebug&instance=0">static boolean setDebug(Integral::DEBUG arg);</a></pre>

  <li> destructor/constructor(s):

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=destructor&instance=0">~SymbolGraphDatabase();</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_00.cc&method=default+constructor&instance=0">SymbolGraphDatabase();</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=copy+constructor&instance=0">SymbolGraphDatabase(const SymbolGraphDatabase& arg);</a></pre>

  <li> assign methods:

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_05.cc&method=assign&instance=0">boolean assign(const SymbolGraphDatabase& arg);</a></pre>

  <li> operator= method:

       <pre>not present.</pre>

  <li> i/o methods:

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_04.cc&method=sofSize&instance=0">long sofSize() const;</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=read&instance=0">boolean read(Sof& sof, long tag);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_03.cc&method=read&instance=0">boolean read(Sof& sof, long tag, const String& name);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_03.cc&method=readData&instance=0">boolean readData(Sof& sof, const String& pname = DEF_PARAM, long size = SofParser::FULL_OBJECT, boolean param = true, boolean nested = false);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=write&instance=0">boolean write(Sof& sof, long tag) const;</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_04.cc&method=write&instance=0">boolean write(Sof& sof, long tag, const String& name) const;</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_04.cc&method=writeData&instance=0">boolean writeData(Sof& sof, const String& pname = DEF_PARAM) const;</a></pre>

  <li> equality methods:

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_05.cc&method=eq&instance=0">boolean eq(const SymbolGraphDatabase& arg) const;</a></pre>

  <li> memory management methods:

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=new&instance=0">static void* operator new(size_t arg);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=new\[\]&instance=0">static void* operator new[](size_t arg);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=delete&instance=0">static void operator delete(void* arg);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=delete\[\]&instance=0">static void operator delete[](void* arg);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=setGrowSize&instance=0">static boolean setGrowSize(long arg);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_05.cc&method=clear&instance=0">boolean clear(Integral::CMODE cmode = Integral::DEF_CMODE);</a></pre>

</ul>

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

<ul>
  <li> declare database property methods:

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=getDataBaseName&instance=0">String& getDataBaseName();</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=setDataBaseName&instance=0">boolean setDataBaseName(String& arg);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=setDataBaseSof&instance=0">boolean setDataBaseSof(Sof& sof);</a></pre>

  <li> declare database record methods:
       
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_05.cc&method=getRecord&instance=0">boolean getRecord(String& identifier, Filename& record);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=removeRecord&instance=0">boolean removeRecord(String& identifier);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/SymbolGraphDatabase.h&method=insertRecord&instance=0">boolean insertRecord(String& identifier, Long& index);</a></pre>

  <li> declare database i/o methods:
       
       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_05.cc&method=load&instance=0">boolean load(Sdb& id_list, Sdb& file_list, Vector&lt;Filename&gt;& file_vec);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_05.cc&method=load&instance=1">boolean load(Filename& file_list, Vector&lt;Filename&gt;& file_vec);</a></pre>

       <pre><a href="/perl/ifc_document.pl?file=$isip/class/mmedia/SymbolGraphDatabase/audb_05.cc&method=store&instance=0">boolean store(Sof& db_sof, long tag, Vector&lt;Filename&gt;& file_vec);</a></pre>

</ul>

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

<ul>
  <li> declare private methods:

</ul>

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

<ul>
  <li> This <a href="/perl/ifc_document.pl?file=$isip/doc/examples/class/mmedia/mmedia_example_11/example.cc">example</a> shows how to generate an SymbolGraph database given <a href="/perl/ifc_document.pl?file=$isip/doc/examples/class/mmedia/mmedia_example_11/identifier.sof">identifiers</a> and <a href="/perl/ifc_document.pl?file=$isip/doc/examples/class/mmedia/mmedia_example_11/file_list.sof">file list</a>.
</ul>

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

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

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