Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > by-pkgid > a74ec78bdb789d910d054e3918f3f007 > files > 220

libsword1-devel-1.5.5-2mdk.ppc.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>SWModule class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.2.15 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; </center>
<hr><h1>SWModule  Class Reference</h1>The class SWModule is the base class for all modules used in Sword. 
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="swmodule_8h-source.html">swmodule.h</a>&gt;</code>
<p>
Inheritance diagram for SWModule:<p><center><img src="class_s_w_module__inherit__graph.png" border="0" usemap="#_s_w_module__inherit__map" alt="Inheritance graph"></center>
<map name="_s_w_module__inherit__map">
<area href="class_s_w_com.html" shape="rect" coords="14,84,75,103" alt="">
<area href="class_s_w_gen_book.html" shape="rect" coords="99,84,187,103" alt="">
<area href="class_s_w_l_d.html" shape="rect" coords="211,84,259,103" alt="">
<area href="class_s_w_text.html" shape="rect" coords="283,84,342,103" alt="">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for SWModule:<p><center><img src="class_s_w_module__coll__graph.png" border="0" usemap="#_s_w_module__coll__map" alt="Collaboration graph"></center>
<map name="_s_w_module__coll__map">
<area href="class_list_key.html" shape="rect" coords="75,294,129,313" alt="">
<area href="class_s_w_key.html" shape="rect" coords="122,197,178,215" alt="">
<area href="class_s_w_object.html" shape="rect" coords="219,106,291,125" alt="">
<area href="class_s_w_display.html" shape="rect" coords="273,197,347,215" alt="">
<area href="class_s_w_class.html" shape="rect" coords="145,15,209,34" alt="">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="class_s_w_module-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td colspan=2><br><h2>Public Methods</h2></td></tr>
<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a0">SWModule</a> (const char *imodname=0, const char *imoddesc=0, <a class="el" href="class_s_w_display.html">SWDisplay</a> *idisp=0, char *imodtype=0, SWTextEncoding encoding=ENC_UNKNOWN, SWTextDirection dir=DIRECTION_LTR, SWTextMarkup markup=FMT_UNKNOWN, const char *modlang=0)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Initializes data for instance of SWModule.</em> <a href="#a0">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a1" doxytag="SWModule::~SWModule"></a>
virtual&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a1">~SWModule</a> ()</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Cleans up instance of SWModule.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual char&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a2">Error</a> ()</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Gets and clears error status.</em> <a href="#a2">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual const bool&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a3">isUnicode</a> () const</td></tr>
<tr><td nowrap align=right valign=top><a name="a4" doxytag="SWModule::getConfig"></a>
virtual const ConfigEntMap &amp;&nbsp;</td><td valign=bottom><b>getConfig</b> () const</td></tr>
<tr><td nowrap align=right valign=top><a name="a5" doxytag="SWModule::setConfig"></a>
virtual void&nbsp;</td><td valign=bottom><b>setConfig</b> (ConfigEntMap *config)</td></tr>
<tr><td nowrap align=right valign=top><a name="a6" doxytag="SWModule::getConfigEntry"></a>
virtual const char *&nbsp;</td><td valign=bottom><b>getConfigEntry</b> (const char *<a class="el" href="class_s_w_module.html#n6">key</a>) const</td></tr>
<tr><td nowrap align=right valign=top>virtual const int&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a7">getEntrySize</a> () const</td></tr>
<tr><td nowrap align=right valign=top>virtual char&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a8">SetKey</a> (const <a class="el" href="class_s_w_key.html">SWKey</a> *ikey)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Sets a key to this module for position to a particular record or set of records.</em> <a href="#a8">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual char&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a9">SetKey</a> (const <a class="el" href="class_s_w_key.html">SWKey</a> &amp;ikey)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Sets the key of this module.</em> <a href="#a9">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual <a class="el" href="class_s_w_key.html">SWKey</a> &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a10">Key</a> () const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Gets the current module key.</em> <a href="#a10">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual char&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a11">Key</a> (const <a class="el" href="class_s_w_key.html">SWKey</a> &amp;ikey)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Sets the current key of the module to ikey, and returns the keytext.</em> <a href="#a11">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual const char *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a12">KeyText</a> (const char *imodtype=0)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Sets/gets module KeyText.</em> <a href="#a12">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual char&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a13">Display</a> ()</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Calls this modules display object and passes itself.</em> <a href="#a13">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual <a class="el" href="class_s_w_display.html">SWDisplay</a> *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a14">Disp</a> (<a class="el" href="class_s_w_display.html">SWDisplay</a> *idisp=0)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Sets/gets display driver.</em> <a href="#a14">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual char *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a15">Name</a> (const char *imodname=0)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Sets/gets module name.</em> <a href="#a15">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual char *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a16">Description</a> (const char *imoddesc=0)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Sets/gets module description.</em> <a href="#a16">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual char *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a17">Type</a> (const char *imodtype=0)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Sets/gets module type.</em> <a href="#a17">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual char&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a18">Direction</a> (signed char newdir=-1)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Sets/gets module direction.</em> <a href="#a18">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual char&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a19">Encoding</a> (signed char enc=-1)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Sets/gets module encoding.</em> <a href="#a19">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual char&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a20">Markup</a> (signed char enc=-1)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Sets/gets module markup.</em> <a href="#a20">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual char *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a21">Lang</a> (const char *imodlang=0)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Sets/gets module language.</em> <a href="#a21">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual <a class="el" href="class_list_key.html">ListKey</a> &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a22">Search</a> (const char *istr, int searchType=0, int flags=0, <a class="el" href="class_s_w_key.html">SWKey</a> *scope=0, bool *justCheckIfSupported=0, void(*percent)(char, void *)=&amp;nullPercent, void *percentUserData=0)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Searches a module for a string.</em> <a href="#a22">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a23" doxytag="SWModule::createSearchFramework"></a>
virtual signed char&nbsp;</td><td valign=bottom><b>createSearchFramework</b> ()</td></tr>
<tr><td nowrap align=right valign=top><a name="a24" doxytag="SWModule::hasSearchFramework"></a>
virtual bool&nbsp;</td><td valign=bottom><b>hasSearchFramework</b> ()</td></tr>
<tr><td nowrap align=right valign=top>virtual bool&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a25">isSearchOptimallySupported</a> (const char *istr, int searchType, int flags, <a class="el" href="class_s_w_key.html">SWKey</a> *scope)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Check if the search is optimally supported (e.g.</em> <a href="#a25">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual <a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a26">CreateKey</a> ()</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Allocates a key of specific type for module The different reimplementatiosn of SWModule (e.g.</em> <a href="#a26">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a27">operator const char *</a> ()</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Renders and returns the current module text.</em> <a href="#a27">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual char *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a28">getRawEntry</a> ()=0</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>This function is reimplemented by the different kinds of module objects.</em> <a href="#a28">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a29">operator SWKey &amp;</a> ()</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Cast operator to cast to a <a class="el" href="class_s_w_key.html">SWKey</a> reference.</em> <a href="#a29">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a30">operator SWKey *</a> ()</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Operator to cast to an <a class="el" href="class_s_w_key.html">SWKey</a> pointer.</em> <a href="#a30">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual bool&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a31">isWritable</a> ()</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Is the module writable? :).</em> <a href="#a31">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a32">setentry</a> (const char *inbuf, long len)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Modify the current module entry text only if module <a class="el" href="class_s_w_module.html#a31">isWritable</a>.</em> <a href="#a32">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a33">operator&lt;&lt;</a> (const char *)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Modify the current module entry text only if module <a class="el" href="class_s_w_module.html#a31">isWritable</a>.</em> <a href="#a33">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a34">operator&lt;&lt;</a> (const <a class="el" href="class_s_w_key.html">SWKey</a> *)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Link the current module entry to another module entry only if module <a class="el" href="class_s_w_module.html#a31">isWritable</a>.</em> <a href="#a34">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a35" doxytag="SWModule::deleteEntry"></a>
virtual void&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a35">deleteEntry</a> ()</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Delete current module entry - only if module <a class="el" href="class_s_w_module.html#a31">isWritable</a>.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a36">operator-=</a> (int decrement)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Decrements module key a number of entries.</em> <a href="#a36">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a37">operator+=</a> (int increment)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Increments module key a number of entries.</em> <a href="#a37">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a38" doxytag="SWModule::operator++"></a>
virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a38">operator++</a> (int)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Increments module key by 1 entry.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a39" doxytag="SWModule::operator--"></a>
virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a39">operator--</a> (int)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Decrements module key by 1 entry.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a40">operator=</a> (SW_POSITION p)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Positions this modules to an entry.</em> <a href="#a40">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a41">AddRenderFilter</a> (SWFilter *newfilter)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Adds a RenderFilter to this module's.</em> <a href="#a41">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a42">RemoveRenderFilter</a> (SWFilter *oldfilter)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Removes a RenderFilter from this module's.</em> <a href="#a42">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a43">ReplaceRenderFilter</a> (SWFilter *oldfilter, SWFilter *newfilter)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Replaces a RenderFilter in this module's.</em> <a href="#a43">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a44">renderFilter</a> (char *buf, long size, <a class="el" href="class_s_w_key.html">SWKey</a> *<a class="el" href="class_s_w_module.html#n6">key</a>)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>RenderFilter a text buffer.</em> <a href="#a44">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a45">AddEncodingFilter</a> (SWFilter *newfilter)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Adds an EncodingFilter to this module's.</em> <a href="#a45">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a46">RemoveEncodingFilter</a> (SWFilter *oldfilter)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Removes an EncodingFilter from this module's.</em> <a href="#a46">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a47">ReplaceEncodingFilter</a> (SWFilter *oldfilter, SWFilter *newfilter)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Replaces an EncodingFilter in this module's.</em> <a href="#a47">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a48">encodingFilter</a> (char *buf, long size, <a class="el" href="class_s_w_key.html">SWKey</a> *<a class="el" href="class_s_w_module.html#n6">key</a>)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>encodingFilter a text buffer.</em> <a href="#a48">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a49">AddStripFilter</a> (SWFilter *newfilter)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Adds a StripFilter to this module's stripfilters queue.</em> <a href="#a49">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a50">stripFilter</a> (char *buf, long size, <a class="el" href="class_s_w_key.html">SWKey</a> *<a class="el" href="class_s_w_module.html#n6">key</a>)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>StripFilter a text buffer.</em> <a href="#a50">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a51">AddRawFilter</a> (SWFilter *newfilter)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Adds a RawFilter to this module's rawfilters queue.</em> <a href="#a51">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a52">filterBuffer</a> (FilterList *filters, char *buf, long size, <a class="el" href="class_s_w_key.html">SWKey</a> *<a class="el" href="class_s_w_module.html#n6">key</a>)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>FilterBuffer a text buffer.</em> <a href="#a52">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a53">rawFilter</a> (char *buf, long size, <a class="el" href="class_s_w_key.html">SWKey</a> *<a class="el" href="class_s_w_module.html#n6">key</a>)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>RawFilter a text buffer.</em> <a href="#a53">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual SWModule &amp;&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a54">AddOptionFilter</a> (SWFilter *newfilter)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Adds an OptionFilter to this module's optionfilters queue.</em> <a href="#a54">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a55">optionFilter</a> (char *buf, long size, <a class="el" href="class_s_w_key.html">SWKey</a> *<a class="el" href="class_s_w_module.html#n6">key</a>)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>OptionFilter a text buffer.</em> <a href="#a55">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual const char *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a56">StripText</a> (char *buf=0, int len=-1)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>calls all StripFilters on buffer or current text.</em> <a href="#a56">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual const char *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a57">RenderText</a> (char *buf=0, int len=-1, bool render=true)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>calls all RenderFilters on buffer or current text.</em> <a href="#a57">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual const char *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a58">StripText</a> (<a class="el" href="class_s_w_key.html">SWKey</a> *tmpKey)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>calls all StripFilters on current text.</em> <a href="#a58">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual const char *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a59">RenderText</a> (<a class="el" href="class_s_w_key.html">SWKey</a> *tmpKey)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>calls all RenderFilters on current text.</em> <a href="#a59">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#a60">setSkipConsecutiveLinks</a> (bool val)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>option to specify behaviour when iterating over consecutive entried linked to same text.</em> <a href="#a60">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a61" doxytag="SWModule::getSkipConsecutiveLinks"></a>
virtual bool&nbsp;</td><td valign=bottom><b>getSkipConsecutiveLinks</b> ()</td></tr>
<tr><td nowrap align=right valign=top><a name="a62" doxytag="SWModule::getEntryAttributes"></a>
virtual AttributeTypeList &amp;&nbsp;</td><td valign=bottom><b>getEntryAttributes</b> () const</td></tr>
<tr><td nowrap align=right valign=top><a name="a63" doxytag="SWModule::processEntryAttributes"></a>
virtual void&nbsp;</td><td valign=bottom><b>processEntryAttributes</b> (bool val) const</td></tr>
<tr><td nowrap align=right valign=top><a name="a64" doxytag="SWModule::isProcessEntryAttributes"></a>
virtual bool&nbsp;</td><td valign=bottom><b>isProcessEntryAttributes</b> () const</td></tr>
<tr><td colspan=2><br><h2>Static Public Methods</h2></td></tr>
<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#d0">nullPercent</a> (char percent, void *userData)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>This is the default callback function for searching.</em> <a href="#d0">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>signed char&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#d1">createModule</a> (const char *)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Creates a new module.</em> <a href="#d1">More...</a><em></em></font><br><br></td></tr>
<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#m0">terminateSearch</a></td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Set this bool to false to terminate the search which is executed by this module (<a class="el" href="class_s_w_module.html#a22">Search</a>).</em> <a href="#m0">More...</a><em></em></font><br><br></td></tr>
<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
<tr><td nowrap align=right valign=top><a name="n0" doxytag="SWModule::ownConfig"></a>
ConfigEntMap&nbsp;</td><td valign=bottom><b>ownConfig</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n1" doxytag="SWModule::config"></a>
ConfigEntMap *&nbsp;</td><td valign=bottom><b>config</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n2" doxytag="SWModule::entryAttributes"></a>
AttributeTypeList&nbsp;</td><td valign=bottom><b>entryAttributes</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n3" doxytag="SWModule::procEntAttr"></a>
bool&nbsp;</td><td valign=bottom><b>procEntAttr</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n4" doxytag="SWModule::error"></a>
char&nbsp;</td><td valign=bottom><b>error</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n5" doxytag="SWModule::skipConsecutiveLinks"></a>
bool&nbsp;</td><td valign=bottom><b>skipConsecutiveLinks</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n6" doxytag="SWModule::key"></a>
<a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#n6">key</a></td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>the current key.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="n7" doxytag="SWModule::listkey"></a>
<a class="el" href="class_list_key.html">ListKey</a>&nbsp;</td><td valign=bottom><b>listkey</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n8" doxytag="SWModule::modname"></a>
char *&nbsp;</td><td valign=bottom><b>modname</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n9" doxytag="SWModule::moddesc"></a>
char *&nbsp;</td><td valign=bottom><b>moddesc</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n10" doxytag="SWModule::modtype"></a>
char *&nbsp;</td><td valign=bottom><b>modtype</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n11" doxytag="SWModule::modlang"></a>
char *&nbsp;</td><td valign=bottom><b>modlang</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n12" doxytag="SWModule::direction"></a>
char&nbsp;</td><td valign=bottom><b>direction</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n13" doxytag="SWModule::markup"></a>
char&nbsp;</td><td valign=bottom><b>markup</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n14" doxytag="SWModule::encoding"></a>
char&nbsp;</td><td valign=bottom><b>encoding</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n15" doxytag="SWModule::disp"></a>
<a class="el" href="class_s_w_display.html">SWDisplay</a> *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#n15">disp</a></td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>this module's display object.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="n16" doxytag="SWModule::entrybuf"></a>
char *&nbsp;</td><td valign=bottom><b>entrybuf</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n17" doxytag="SWModule::entrybufallocsize"></a>
unsigned long&nbsp;</td><td valign=bottom><b>entrybufallocsize</b></td></tr>
<tr><td nowrap align=right valign=top><a name="n18" doxytag="SWModule::stripFilters"></a>
FilterList *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#n18">stripFilters</a></td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>executed to remove all markup (for searches).</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="n19" doxytag="SWModule::rawFilters"></a>
FilterList *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#n19">rawFilters</a></td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>executed immediately upon fileread.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="n20" doxytag="SWModule::renderFilters"></a>
FilterList *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#n20">renderFilters</a></td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>executed to format for display.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="n21" doxytag="SWModule::optionFilters"></a>
FilterList *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#n21">optionFilters</a></td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>executed to change markup to user prefs.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="n22" doxytag="SWModule::encodingFilters"></a>
FilterList *&nbsp;</td><td valign=bottom><a class="el" href="class_s_w_module.html#n22">encodingFilters</a></td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>executed to decode text for display.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="n23" doxytag="SWModule::entrySize"></a>
int&nbsp;</td><td valign=bottom><b>entrySize</b></td></tr>
<tr><td colspan=2><br><h2>Static Protected Attributes</h2></td></tr>
<tr><td nowrap align=right valign=top><a name="q0" doxytag="SWModule::rawdisp"></a>
<a class="el" href="class_s_w_display.html">SWDisplay</a>&nbsp;</td><td valign=bottom><b>rawdisp</b></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The class SWModule is the base class for all modules used in Sword.
<p>
It provides functions to look up a text passage, to search in the module, to switch on/off the state of optional things like Strong's numbers or footnotes.
<p>
SWModule has also functions to write to the data files. This might be useful in future for frontend authors to support user-created modules. 
<p>

<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00064">64</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="SWModule::SWModule"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> SWModule::SWModule </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>imodname</em> = 0, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>const char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>imoddesc</em> = 0, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap><a class="el" href="class_s_w_display.html">SWDisplay</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>idisp</em> = 0, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>imodtype</em> = 0, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>SWTextEncoding&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>encoding</em> = ENC_UNKNOWN, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>SWTextDirection&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>dir</em> = DIRECTION_LTR, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>SWTextMarkup&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>markup</em> = FMT_UNKNOWN, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>const char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>modlang</em> = 0</td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Initializes data for instance of SWModule.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>imodname</em>&nbsp;</td><td>
Internal name for module; see also <a class="el" href="class_s_w_module.html#a15">Name</a> </td></tr>
<tr><td valign=top><em>imoddesc</em>&nbsp;</td><td>
Name to display to user for module; see also <a class="el" href="class_s_w_module.html#a16">Description</a> </td></tr>
<tr><td valign=top><em>idisp</em>&nbsp;</td><td>
Display object to use for displaying see also <a class="el" href="class_s_w_module.html#a14">Disp</a> </td></tr>
<tr><td valign=top><em>imodtype</em>&nbsp;</td><td>
Type of Module (All modules will be displayed with others of same type under their modtype heading) see also <a class="el" href="class_s_w_module.html#a17">Type</a> </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00031">31</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swmodule_8cpp-source.html#l00105">CreateKey</a>(), <a class="el" href="swmodule_8h-source.html#l00090">disp</a>, <a class="el" href="swmodule_8h-source.html#l00109">encodingFilters</a>, <a class="el" href="swmodule_8h-source.html#l00077">key</a>, <a class="el" href="swmodule_8h-source.html#l00106">optionFilters</a>, <a class="el" href="swmodule_8h-source.html#l00100">rawFilters</a>, <a class="el" href="swmodule_8h-source.html#l00103">renderFilters</a>, and <a class="el" href="swmodule_8h-source.html#l00097">stripFilters</a>.
<p>
<div class="fragment"><pre>00032 {
00033         <a class="code" href="class_s_w_module.html#n6">key</a>       = <a class="code" href="class_s_w_module.html#a26">CreateKey</a>();
00034         entrybuf  = <font class="keyword">new</font> <font class="keywordtype">char</font> [1];
00035         *entrybuf = 0;
00036         config    = &amp;ownConfig;
00037         entrybufallocsize = 0;
00038         modname   = 0;
00039         error     = 0;
00040         moddesc   = 0;
00041         modtype   = 0;
00042         modlang   = 0;
00043         this-&gt;encoding = encoding;
00044         this-&gt;direction = direction;
00045         this-&gt;markup  = markup;
00046         entrySize= -1;
00047         <a class="code" href="class_s_w_module.html#n15">disp</a>     = (idisp) ? idisp : &amp;rawdisp;
00048         stdstr(&amp;modname, imodname);
00049         stdstr(&amp;moddesc, imoddesc);
00050         stdstr(&amp;modtype, imodtype);
00051         stdstr(&amp;modlang, imodlang);
00052         <a class="code" href="class_s_w_module.html#n18">stripFilters</a> = <font class="keyword">new</font> FilterList();
00053         <a class="code" href="class_s_w_module.html#n19">rawFilters</a> = <font class="keyword">new</font> FilterList();
00054         <a class="code" href="class_s_w_module.html#n20">renderFilters</a> = <font class="keyword">new</font> FilterList();
00055         <a class="code" href="class_s_w_module.html#n21">optionFilters</a> = <font class="keyword">new</font> FilterList();
00056         <a class="code" href="class_s_w_module.html#n22">encodingFilters</a> = <font class="keyword">new</font> FilterList();
00057         skipConsecutiveLinks = <font class="keyword">true</font>;
00058         procEntAttr = <font class="keyword">true</font>;
00059 }
</pre></div>    </td>
  </tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a name="a45" doxytag="SWModule::AddEncodingFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule&amp; SWModule::AddEncodingFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">SWFilter *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>newfilter</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Adds an EncodingFilter to this module's.
<p>
<dl compact><dt><b>
See also: </b><dd>
encodingfilters queue </dl><dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>newfilter</em>&nbsp;</td><td>
the filter to add </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00451">451</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
Referenced by <a class="el" href="encfiltmgr_8cpp-source.html#l00092">EncodingFilterMgr::AddEncodingFilters</a>().
<p>
<div class="fragment"><pre>00451                                                               {
00452     <a class="code" href="class_s_w_module.html#n22">encodingFilters</a>-&gt;push_back (newfilter);
00453     <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00454   }
</pre></div>    </td>
  </tr>
</table>
<a name="a54" doxytag="SWModule::AddOptionFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule&amp; SWModule::AddOptionFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">SWFilter *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>newfilter</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Adds an OptionFilter to this module's optionfilters queue.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>newfilter</em>&nbsp;</td><td>
the filter to add </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00536">536</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00536                                                             {
00537     <a class="code" href="class_s_w_module.html#n21">optionFilters</a>-&gt;push_back (newfilter);
00538     <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00539   }
</pre></div>    </td>
  </tr>
</table>
<a name="a51" doxytag="SWModule::AddRawFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule&amp; SWModule::AddRawFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">SWFilter *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>newfilter</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Adds a RawFilter to this module's rawfilters queue.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>newfilter</em>&nbsp;</td><td>
the filter to add </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00505">505</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
Referenced by <a class="el" href="swmgr_8cpp-source.html#l00791">SWMgr::AddRawFilters</a>(), and <a class="el" href="encfiltmgr_8cpp-source.html#l00079">EncodingFilterMgr::AddRawFilters</a>().
<p>
<div class="fragment"><pre>00505                                                          {
00506     <a class="code" href="class_s_w_module.html#n19">rawFilters</a>-&gt;push_back (newfilter);
00507     <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00508   }
</pre></div>    </td>
  </tr>
</table>
<a name="a41" doxytag="SWModule::AddRenderFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule&amp; SWModule::AddRenderFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">SWFilter *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>newfilter</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Adds a RenderFilter to this module's.
<p>
<dl compact><dt><b>
See also: </b><dd>
renderfilters queue </dl><dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>newfilter</em>&nbsp;</td><td>
the filter to add </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00414">414</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
Referenced by <a class="el" href="markupfiltmgr_8cpp-source.html#l00168">MarkupFilterMgr::AddRenderFilters</a>().
<p>
<div class="fragment"><pre>00414                                                             {
00415     <a class="code" href="class_s_w_module.html#n20">renderFilters</a>-&gt;push_back (newfilter);
00416     <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00417   }
</pre></div>    </td>
  </tr>
</table>
<a name="a49" doxytag="SWModule::AddStripFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule&amp; SWModule::AddStripFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">SWFilter *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>newfilter</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Adds a StripFilter to this module's stripfilters queue.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>newfilter</em>&nbsp;</td><td>
the filter to add </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00488">488</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
Referenced by <a class="el" href="swmgr_8cpp-source.html#l00841">SWMgr::AddStripFilters</a>().
<p>
<div class="fragment"><pre>00488                                                            {
00489     <a class="code" href="class_s_w_module.html#n18">stripFilters</a>-&gt;push_back (newfilter);
00490     <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00491   }
</pre></div>    </td>
  </tr>
</table>
<a name="a26" doxytag="SWModule::CreateKey"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> <a class="el" href="class_s_w_key.html">SWKey</a> * SWModule::CreateKey </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Allocates a key of specific type for module The different reimplementatiosn of SWModule (e.g.
<p>
<a class="el" href="class_s_w_text.html">SWText</a>) support <a class="el" href="class_s_w_key.html">SWKey</a> implementations, which support special. This functions returns a <a class="el" href="class_s_w_key.html">SWKey</a> object which works with the current implementation of SWModule. For example for the <a class="el" href="class_s_w_text.html">SWText</a> class it returns a <a class="el" href="class_verse_key.html">VerseKey</a> object. <dl compact><dt><b>
See also: </b><dd>
<a class="el" href="class_verse_key.html">VerseKey</a>, <a class="el" href="class_list_key.html">ListKey</a>, <a class="el" href="class_s_w_text.html">SWText</a>, <a class="el" href="class_s_w_l_d.html">SWLD</a>, <a class="el" href="class_s_w_com.html">SWCom</a> </dl><dl compact><dt><b>
Returns: </b><dd>
pointer to allocated key </dl>
<p>
Reimplemented in <a class="el" href="class_s_w_com.html#a2">SWCom</a>, <a class="el" href="class_s_w_gen_book.html#a2">SWGenBook</a>, <a class="el" href="class_s_w_l_d.html#a2">SWLD</a>, and <a class="el" href="class_s_w_text.html#a2">SWText</a>.
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00105">105</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
Referenced by <a class="el" href="swmodule_8cpp-source.html#l00606">RenderText</a>(), <a class="el" href="swmodule_8cpp-source.html#l00391">Search</a>(), <a class="el" href="swmodule_8cpp-source.html#l00272">SetKey</a>(), <a class="el" href="swmodule_8cpp-source.html#l00638">StripText</a>(), and <a class="el" href="swmodule_8cpp-source.html#l00031">SWModule</a>().
<p>
<div class="fragment"><pre>00106 {
00107         <font class="keywordflow">return</font> <font class="keyword">new</font> <a class="code" href="class_s_w_key.html">SWKey</a>();
00108 }
</pre></div>    </td>
  </tr>
</table>
<a name="d1" doxytag="SWModule::createModule"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> signed char SWModule::createModule </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, static]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Creates a new module.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>path</em>&nbsp;</td><td>
The first parameter is path of the new module </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
error </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00349">349</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00349                                                  {
00350     <font class="keywordflow">return</font> -1;
00351   }
</pre></div>    </td>
  </tr>
</table>
<a name="a16" doxytag="SWModule::Description"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> char * SWModule::Description </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>imoddesc</em> = 0          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets/gets module description.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>imoddesc</em>&nbsp;</td><td>
value which to set moddesc; [0] - only get </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
pointer to moddesc </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00150">150</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
<div class="fragment"><pre>00151 {
00152         <font class="keywordflow">return</font> stdstr(&amp;moddesc, imoddesc);
00153 }
</pre></div>    </td>
  </tr>
</table>
<a name="a18" doxytag="SWModule::Direction"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> char SWModule::Direction </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">signed char&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>newdir</em> = -1          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets/gets module direction.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>newdir</em>&nbsp;</td><td>
value which to set direction; [-1] - only get </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
char direction </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00178">178</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
<div class="fragment"><pre>00178                                            {
00179         <font class="keywordflow">if</font> (newdir != -1)
00180                 direction = newdir;
00181         <font class="keywordflow">return</font> direction;
00182 }
</pre></div>    </td>
  </tr>
</table>
<a name="a14" doxytag="SWModule::Disp"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> <a class="el" href="class_s_w_display.html">SWDisplay</a> * SWModule::Disp </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="class_s_w_display.html">SWDisplay</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>idisp</em> = 0          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets/gets display driver.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>idisp</em>&nbsp;</td><td>
value which to set disp; [0] - only get </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
pointer to disp </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00237">237</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swmodule_8h-source.html#l00090">disp</a>.
<p>
<div class="fragment"><pre>00238 {
00239         <font class="keywordflow">if</font> (idisp)
00240                 <a class="code" href="class_s_w_module.html#n15">disp</a> = idisp;
00241 
00242         <font class="keywordflow">return</font> <a class="code" href="class_s_w_module.html#n15">disp</a>;
00243 }
</pre></div>    </td>
  </tr>
</table>
<a name="a13" doxytag="SWModule::Display"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> char SWModule::Display </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Calls this modules display object and passes itself.
<p>
<dl compact><dt><b>
Returns: </b><dd>
error status </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00252">252</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swmodule_8h-source.html#l00090">disp</a>, and <a class="el" href="swdisp_8cpp-source.html#l00023">SWDisplay::Display</a>().
<p>
<div class="fragment"><pre>00253 {
00254         <a class="code" href="class_s_w_module.html#n15">disp</a>-&gt;<a class="code" href="class_s_w_display.html#a1">Display</a>(*<font class="keyword">this</font>);
00255         <font class="keywordflow">return</font> 0;
00256 }
</pre></div>    </td>
  </tr>
</table>
<a name="a19" doxytag="SWModule::Encoding"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> char SWModule::Encoding </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">signed char&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>enc</em> = -1          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets/gets module encoding.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>newdir</em>&nbsp;</td><td>
value which to set encoding; [-1] - only get </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
char encoding </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00192">192</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
<div class="fragment"><pre>00192                                           {
00193         <font class="keywordflow">if</font> (newenc != -1)
00194                 encoding = newenc;
00195         <font class="keywordflow">return</font> encoding;
00196 }
</pre></div>    </td>
  </tr>
</table>
<a name="a48" doxytag="SWModule::encodingFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void SWModule::encodingFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>buf</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>long&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>size</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap><a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>key</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
encodingFilter a text buffer.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>buf</em>&nbsp;</td><td>
the buffer to filter </td></tr>
<tr><td valign=top><em>size</em>&nbsp;</td><td>
the allocated size of the buffer </td></tr>
<tr><td valign=top><em>key</em>&nbsp;</td><td>
key location from where this buffer was extracted </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00481">481</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
Referenced by <a class="el" href="swmodule_8cpp-source.html#l00570">RenderText</a>().
<p>
<div class="fragment"><pre>00481                                                                  {
00482         <a class="code" href="class_s_w_module.html#a52">filterBuffer</a>(<a class="code" href="class_s_w_module.html#n22">encodingFilters</a>, buf, size, key);
00483   }
</pre></div>    </td>
  </tr>
</table>
<a name="a2" doxytag="SWModule::Error"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> char SWModule::Error </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Gets and clears error status.
<p>
<dl compact><dt><b>
Returns: </b><dd>
error status </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00117">117</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
Referenced by <a class="el" href="swmodule_8cpp-source.html#l00391">Search</a>().
<p>
<div class="fragment"><pre>00118 {
00119         <font class="keywordtype">char</font> retval = error;
00120 
00121         error = 0;
00122         <font class="keywordflow">return</font> retval;
00123 }
</pre></div>    </td>
  </tr>
</table>
<a name="a52" doxytag="SWModule::filterBuffer"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void SWModule::filterBuffer </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">FilterList *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>filters</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>buf</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>long&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>size</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap><a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>key</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
FilterBuffer a text buffer.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>filters</em>&nbsp;</td><td>
the FilterList of filters to iterate </td></tr>
<tr><td valign=top><em>buf</em>&nbsp;</td><td>
the buffer to filter </td></tr>
<tr><td valign=top><em>size</em>&nbsp;</td><td>
the allocated size of the buffer </td></tr>
<tr><td valign=top><em>key</em>&nbsp;</td><td>
key location from where this buffer was extracted </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00516">516</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00516                                                                                     {
00517         FilterList::iterator it;
00518         <font class="keywordflow">for</font> (it = filters-&gt;begin(); it != filters-&gt;end(); it++) {
00519                 (*it)-&gt;ProcessText(buf, size, key, <font class="keyword">this</font>);
00520         }
00521   }
</pre></div>    </td>
  </tr>
</table>
<a name="a7" doxytag="SWModule::getEntrySize"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual const int SWModule::getEntrySize </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<dl compact><dt><b>
Returns: </b><dd>
The size of the current entry. </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00162">162</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
Referenced by <a class="el" href="swmodule_8cpp-source.html#l00570">RenderText</a>().
<p>
<div class="fragment"><pre>00162 {<font class="keywordflow">return</font> entrySize;}
</pre></div>    </td>
  </tr>
</table>
<a name="a28" doxytag="SWModule::getRawEntry"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual char* SWModule::getRawEntry </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
This function is reimplemented by the different kinds of module objects.
<p>
<dl compact><dt><b>
Returns: </b><dd>
the raw module text of the current entry </dl>
<p>
Referenced by <a class="el" href="swld_8cpp-source.html#l00047">SWLD::KeyText</a>(), and <a class="el" href="swmodule_8cpp-source.html#l00570">RenderText</a>().    </td>
  </tr>
</table>
<a name="a25" doxytag="SWModule::isSearchOptimallySupported"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual bool SWModule::isSearchOptimallySupported </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>istr</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>searchType</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>flags</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap><a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>scope</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Check if the search is optimally supported (e.g.
<p>
if index files are presnt and working) This function checks whether the search framework may work in the best way. <dl compact><dt><b>
Returns: </b><dd>
True if the the search is optimally supported, false if it's not working in the best way. </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00295">295</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00296                                                                      {
00297       <font class="keywordtype">bool</font> retVal = <font class="keyword">false</font>;
00298       <a class="code" href="class_s_w_module.html#a22">Search</a> (istr, searchType, flags, scope, &amp;retVal);
00299       <font class="keywordflow">return</font> retVal;
00300   }
</pre></div>    </td>
  </tr>
</table>
<a name="a3" doxytag="SWModule::isUnicode"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual const bool SWModule::isUnicode </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<dl compact><dt><b>
Returns: </b><dd>
True if this module is encoded in Unicode, otherwise return false. </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00150">150</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00150 {<font class="keywordflow">return</font> (encoding == (char)ENC_UTF8 || encoding == (char)ENC_SCSU);}
</pre></div>    </td>
  </tr>
</table>
<a name="a31" doxytag="SWModule::isWritable"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual bool SWModule::isWritable </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Is the module writable? :).
<p>
<dl compact><dt><b>
Returns: </b><dd>
yes or no </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00342">342</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00342                              {
00343     <font class="keywordflow">return</font> <font class="keyword">false</font>;
00344   }
</pre></div>    </td>
  </tr>
</table>
<a name="a11" doxytag="SWModule::Key"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual char SWModule::Key </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="class_s_w_key.html">SWKey</a> &amp;&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>ikey</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets the current key of the module to ikey, and returns the keytext.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>ikey</em>&nbsp;</td><td>
new current key for the module </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
the keytext of the current module key </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00189">189</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00189                                         {
00190     <font class="keywordflow">return</font> <a class="code" href="class_s_w_module.html#a8">SetKey</a> (ikey);
00191   }
</pre></div>    </td>
  </tr>
</table>
<a name="a10" doxytag="SWModule::Key"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual <a class="el" href="class_s_w_key.html">SWKey</a>&amp; SWModule::Key </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Gets the current module key.
<p>
<dl compact><dt><b>
Returns: </b><dd>
the current key of this module </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00180">180</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00180                                {
00181     <font class="keywordflow">return</font> *<a class="code" href="class_s_w_module.html#n6">key</a>;
00182   }
</pre></div>    </td>
  </tr>
</table>
<a name="a12" doxytag="SWModule::KeyText"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> const char * SWModule::KeyText </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>imodtype</em> = 0          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets/gets module KeyText.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>ikeytext</em>&nbsp;</td><td>
value which to set keytext; [0] - only get </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
pointer to keytext </dl>
<p>
Reimplemented in <a class="el" href="class_s_w_l_d.html#a3">SWLD</a>.
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00303">303</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swmodule_8h-source.html#l00077">key</a>, and <a class="el" href="swmodule_8cpp-source.html#l00272">SetKey</a>().
<p>
Referenced by <a class="el" href="swld_8cpp-source.html#l00047">SWLD::KeyText</a>(), and <a class="el" href="swmodule_8cpp-source.html#l00391">Search</a>().
<p>
<div class="fragment"><pre>00304 {
00305         <font class="keywordflow">if</font> (ikeytext)
00306                 <a class="code" href="class_s_w_module.html#a8">SetKey</a>(ikeytext);
00307 
00308         <font class="keywordflow">return</font> *<a class="code" href="class_s_w_module.html#n6">key</a>;
00309 }
</pre></div>    </td>
  </tr>
</table>
<a name="a21" doxytag="SWModule::Lang"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> char * SWModule::Lang </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>imodlang</em> = 0          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets/gets module language.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>imodlang</em>&nbsp;</td><td>
value which to set modlang; [0] - only get </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
pointer to modlang </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00222">222</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
<div class="fragment"><pre>00223 {
00224         <font class="keywordflow">return</font> stdstr(&amp;modlang, imodlang);
00225 }
</pre></div>    </td>
  </tr>
</table>
<a name="a20" doxytag="SWModule::Markup"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> char SWModule::Markup </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">signed char&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>enc</em> = -1          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets/gets module markup.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>newdir</em>&nbsp;</td><td>
value which to set markup; [-1] - only get </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
char markup </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00206">206</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
Referenced by <a class="el" href="markupfiltmgr_8cpp-source.html#l00168">MarkupFilterMgr::AddRenderFilters</a>().
<p>
<div class="fragment"><pre>00206                                          {
00207         <font class="keywordflow">if</font> (newmark != -1)
00208                 markup = newmark;
00209         <font class="keywordflow">return</font> markup;
00210 }
</pre></div>    </td>
  </tr>
</table>
<a name="a15" doxytag="SWModule::Name"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> char * SWModule::Name </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>imodname</em> = 0          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets/gets module name.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>imodname</em>&nbsp;</td><td>
value which to set modname; [0] - only get </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
pointer to modname </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00135">135</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
Referenced by <a class="el" href="swmgr_8cpp-source.html#l00791">SWMgr::AddRawFilters</a>().
<p>
<div class="fragment"><pre>00136 {
00137         <font class="keywordflow">return</font> stdstr(&amp;modname, imodname);
00138 }
</pre></div>    </td>
  </tr>
</table>
<a name="d0" doxytag="SWModule::nullPercent"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> void SWModule::nullPercent </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>percent</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>void *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>userData</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [static]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
This is the default callback function for searching.
<p>
This function is a placeholder and does nothing. You can define your own function for search progress evaluation, and pass it over to <a class="el" href="class_s_w_module.html#a22">Search</a>. 
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00018">18</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
<div class="fragment"><pre>00018 {}
</pre></div>    </td>
  </tr>
</table>
<a name="a27" doxytag="SWModule::operator const char *"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> SWModule::operator const char * </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Renders and returns the current module text.
<p>
<dl compact><dt><b>
Returns: </b><dd>
the rendered current module text </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00662">662</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swmodule_8cpp-source.html#l00570">RenderText</a>().
<p>
<div class="fragment"><pre>00662                                {
00663         <font class="keywordflow">return</font> <a class="code" href="class_s_w_module.html#a57">RenderText</a>();
00664 }
</pre></div>    </td>
  </tr>
</table>
<a name="a29" doxytag="SWModule::operator SWKey &"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule::operator <a class="el" href="class_s_w_key.html">SWKey</a> &amp; </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Cast operator to cast to a <a class="el" href="class_s_w_key.html">SWKey</a> reference.
<p>
This operator may be used to cast this module to a <a class="el" href="class_s_w_key.html">SWKey</a> object. <dl compact><dt><b>
See also: </b><dd>
<a class="el" href="class_s_w_key.html">SWKey</a>*() </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00322">322</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00322                               {
00323     <font class="keywordflow">return</font> *<a class="code" href="class_s_w_module.html#n6">key</a>;
00324   }
</pre></div>    </td>
  </tr>
</table>
<a name="a30" doxytag="SWModule::operator SWKey *"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule::operator <a class="el" href="class_s_w_key.html">SWKey</a> * </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Operator to cast to an <a class="el" href="class_s_w_key.html">SWKey</a> pointer.
<p>
This function may be used to cast this object to an <a class="el" href="class_s_w_key.html">SWKey</a> pointer. <div class="fragment"><pre> <font class="comment">//we assume here that SWModule* module is already defined and valid.</font>
 <a class="code" href="class_s_w_key.html">SWKey</a>* currentKey = (<a class="code" href="class_s_w_key.html">SWKey</a>*)module;
 <font class="comment">// do something with currentKey (e.g. print out on screen)</font>
</pre></div> 
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00333">333</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00333                              {
00334     <font class="keywordflow">return</font> <a class="code" href="class_s_w_module.html#n6">key</a>;
00335   }
</pre></div>    </td>
  </tr>
</table>
<a name="a37" doxytag="SWModule::operator+="></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> SWModule &amp; SWModule::operator+= </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">int&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>increment</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Increments module key a number of entries.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>increment</em>&nbsp;</td><td>
Number of entries to jump forward </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00350">350</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swkey_8cpp-source.html#l00100">SWKey::Error</a>(), and <a class="el" href="swmodule_8h-source.html#l00077">key</a>.
<p>
<div class="fragment"><pre>00351 {
00352         (*key) += increment;
00353         error = <a class="code" href="class_s_w_module.html#n6">key</a>-&gt;<a class="code" href="class_s_w_key.html#a6">Error</a>();
00354 
00355         <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00356 }
</pre></div>    </td>
  </tr>
</table>
<a name="a36" doxytag="SWModule::operator-="></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> SWModule &amp; SWModule::operator-= </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">int&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>decrement</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Decrements module key a number of entries.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>decrement</em>&nbsp;</td><td>
Number of entries to jump backward </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00367">367</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swkey_8cpp-source.html#l00100">SWKey::Error</a>(), and <a class="el" href="swmodule_8h-source.html#l00077">key</a>.
<p>
<div class="fragment"><pre>00368 {
00369         (*key) -= increment;
00370         error = <a class="code" href="class_s_w_module.html#n6">key</a>-&gt;<a class="code" href="class_s_w_key.html#a6">Error</a>();
00371 
00372         <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00373 }
</pre></div>    </td>
  </tr>
</table>
<a name="a34" doxytag="SWModule::operator<<"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule&amp; SWModule::operator&lt;&lt; </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Link the current module entry to another module entry only if module <a class="el" href="class_s_w_module.html#a31">isWritable</a>.
<p>
<ul>
<li></ul>
<dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00370">370</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00370                                                  {
00371     <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00372   }
</pre></div>    </td>
  </tr>
</table>
<a name="a33" doxytag="SWModule::operator<<"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule&amp; SWModule::operator&lt;&lt; </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Modify the current module entry text only if module <a class="el" href="class_s_w_module.html#a31">isWritable</a>.
<p>
<ul>
<li></ul>
<dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00363">363</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00363                                                 {
00364     <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00365   }
</pre></div>    </td>
  </tr>
</table>
<a name="a40" doxytag="SWModule::operator="></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> SWModule &amp; SWModule::operator= </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">SW_POSITION&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>p</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Positions this modules to an entry.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>p</em>&nbsp;</td><td>
position (e.g. TOP, BOTTOM) </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00320">320</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swkey_8cpp-source.html#l00100">SWKey::Error</a>(), and <a class="el" href="swmodule_8h-source.html#l00077">key</a>.
<p>
<div class="fragment"><pre>00321 {
00322         *<a class="code" href="class_s_w_module.html#n6">key</a> = p;
00323         <font class="keywordtype">char</font> saveError = <a class="code" href="class_s_w_module.html#n6">key</a>-&gt;<a class="code" href="class_s_w_key.html#a6">Error</a>();
00324 
00325         <font class="keywordflow">switch</font> (p) {
00326         <font class="keywordflow">case</font> POS_TOP:
00327                 (*this)++;
00328                 (*this)--;
00329                 <font class="keywordflow">break</font>;
00330 
00331         <font class="keywordflow">case</font> POS_BOTTOM:
00332                 (*this)--;
00333                 (*this)++;
00334                 <font class="keywordflow">break</font>;
00335         }
00336 
00337         error = saveError;
00338         <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00339 }
</pre></div>    </td>
  </tr>
</table>
<a name="a55" doxytag="SWModule::optionFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void SWModule::optionFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>buf</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>long&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>size</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap><a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>key</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
OptionFilter a text buffer.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>buf</em>&nbsp;</td><td>
the buffer to filter </td></tr>
<tr><td valign=top><em>size</em>&nbsp;</td><td>
the allocated size of the buffer </td></tr>
<tr><td valign=top><em>key</em>&nbsp;</td><td>
key location from where this buffer was extracted </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00546">546</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
Referenced by <a class="el" href="swmodule_8cpp-source.html#l00570">RenderText</a>().
<p>
<div class="fragment"><pre>00546                                                                {
00547         <a class="code" href="class_s_w_module.html#a52">filterBuffer</a>(<a class="code" href="class_s_w_module.html#n21">optionFilters</a>, buf, size, key);
00548   }
</pre></div>    </td>
  </tr>
</table>
<a name="a53" doxytag="SWModule::rawFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void SWModule::rawFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>buf</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>long&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>size</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap><a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>key</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
RawFilter a text buffer.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>buf</em>&nbsp;</td><td>
the buffer to filter </td></tr>
<tr><td valign=top><em>size</em>&nbsp;</td><td>
the allocated size of the buffer </td></tr>
<tr><td valign=top><em>key</em>&nbsp;</td><td>
key location from where this buffer was extracted </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00528">528</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00528                                                             {
00529         buf[size] = 0;
00530         <a class="code" href="class_s_w_module.html#a52">filterBuffer</a>(<a class="code" href="class_s_w_module.html#n19">rawFilters</a>, buf, size, key);
00531   }
</pre></div>    </td>
  </tr>
</table>
<a name="a46" doxytag="SWModule::RemoveEncodingFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule&amp; SWModule::RemoveEncodingFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">SWFilter *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>oldfilter</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Removes an EncodingFilter from this module's.
<p>
<dl compact><dt><b>
See also: </b><dd>
encodingfilters queue </dl><dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>oldfilter</em>&nbsp;</td><td>
the filter to remove </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00459">459</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00459                                                                  {
00460     <a class="code" href="class_s_w_module.html#n22">encodingFilters</a>-&gt;remove (oldfilter);
00461     <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00462   }
</pre></div>    </td>
  </tr>
</table>
<a name="a42" doxytag="SWModule::RemoveRenderFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule&amp; SWModule::RemoveRenderFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">SWFilter *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>oldfilter</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Removes a RenderFilter from this module's.
<p>
<dl compact><dt><b>
See also: </b><dd>
renderfilters queue </dl><dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>oldfilter</em>&nbsp;</td><td>
the filter to remove </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00422">422</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00422                                                                {
00423     <a class="code" href="class_s_w_module.html#n20">renderFilters</a>-&gt;remove (oldfilter);
00424     <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00425   }
</pre></div>    </td>
  </tr>
</table>
<a name="a44" doxytag="SWModule::renderFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void SWModule::renderFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>buf</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>long&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>size</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap><a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>key</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
RenderFilter a text buffer.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>buf</em>&nbsp;</td><td>
the buffer to filter </td></tr>
<tr><td valign=top><em>size</em>&nbsp;</td><td>
the allocated size of the buffer </td></tr>
<tr><td valign=top><em>key</em>&nbsp;</td><td>
key location from where this buffer was extracted </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00444">444</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
Referenced by <a class="el" href="swmodule_8cpp-source.html#l00570">RenderText</a>().
<p>
<div class="fragment"><pre>00444                                                                {
00445         <a class="code" href="class_s_w_module.html#a52">filterBuffer</a>(<a class="code" href="class_s_w_module.html#n20">renderFilters</a>, buf, size, key);
00446   }
</pre></div>    </td>
  </tr>
</table>
<a name="a59" doxytag="SWModule::RenderText"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> const char * SWModule::RenderText </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>tmpKey</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
calls all RenderFilters on current text.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>tmpKey</em>&nbsp;</td><td>
key to use to grab text </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
this module's text at specified key location massaged by Render filters </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00606">606</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swmodule_8cpp-source.html#l00105">CreateKey</a>(), <a class="el" href="swmodule_8h-source.html#l00077">key</a>, <a class="el" href="swkey_8cpp-source.html#l00068">SWKey::Persist</a>(), <a class="el" href="swmodule_8cpp-source.html#l00570">RenderText</a>(), and <a class="el" href="swmodule_8cpp-source.html#l00272">SetKey</a>().
<p>
<div class="fragment"><pre>00607 {
00608         <a class="code" href="class_s_w_key.html">SWKey</a> *savekey;
00609         <font class="keyword">const</font> <font class="keywordtype">char</font> *retVal;
00610 
00611         <font class="keywordflow">if</font> (!<a class="code" href="class_s_w_module.html#n6">key</a>-&gt;<a class="code" href="class_s_w_key.html#a4">Persist</a>()) {
00612                 savekey = <a class="code" href="class_s_w_module.html#a26">CreateKey</a>();
00613                 *savekey = *<a class="code" href="class_s_w_module.html#n6">key</a>;
00614         }
00615         <font class="keywordflow">else</font>    savekey = <a class="code" href="class_s_w_module.html#n6">key</a>;
00616 
00617         <a class="code" href="class_s_w_module.html#a8">SetKey</a>(*tmpKey);
00618 
00619         retVal = <a class="code" href="class_s_w_module.html#a57">RenderText</a>();
00620 
00621         <a class="code" href="class_s_w_module.html#a8">SetKey</a>(*savekey);
00622 
00623         <font class="keywordflow">if</font> (!savekey-&gt;<a class="code" href="class_s_w_key.html#a4">Persist</a>())
00624                 <font class="keyword">delete</font> savekey;
00625 
00626         <font class="keywordflow">return</font> retVal;
00627 }
</pre></div>    </td>
  </tr>
</table>
<a name="a57" doxytag="SWModule::RenderText"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> const char * SWModule::RenderText </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>buf</em> = 0, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>len</em> = -1, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>bool&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>render</em> = true</td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
calls all RenderFilters on buffer or current text.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>buf</em>&nbsp;</td><td>
buffer to Render instead of current module position; if buf is NULL, the current text will be used </td></tr>
<tr><td valign=top><em>len</em>&nbsp;</td><td>
max len of buf OR current text -- will be applied anyway </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
this module's text at specified key location massaged by Render filters </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00570">570</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swmodule_8h-source.html#l00481">encodingFilter</a>(), <a class="el" href="swmodule_8h-source.html#l00162">getEntrySize</a>(), <a class="el" href="class_s_w_module.html#a28">getRawEntry</a>(), <a class="el" href="swmodule_8h-source.html#l00077">key</a>, <a class="el" href="swmodule_8h-source.html#l00546">optionFilter</a>(), <a class="el" href="swmodule_8h-source.html#l00444">renderFilter</a>(), and <a class="el" href="swmodule_8h-source.html#l00498">stripFilter</a>().
<p>
Referenced by <a class="el" href="swmodule_8cpp-source.html#l00662">operator const char *</a>(), <a class="el" href="swmodule_8cpp-source.html#l00606">RenderText</a>(), and <a class="el" href="swmodule_8cpp-source.html#l00556">StripText</a>().
<p>
<div class="fragment"><pre>00570                                                                  {
00571         entryAttributes.clear();
00572         <font class="keywordtype">char</font> *tmpbuf = (buf) ? buf : <a class="code" href="class_s_w_module.html#a28">getRawEntry</a>();
00573         <a class="code" href="class_s_w_key.html">SWKey</a> *<a class="code" href="class_s_w_module.html#n6">key</a> = 0;
00574         <font class="keyword">static</font> <font class="keywordtype">char</font> *null = <font class="stringliteral">""</font>;
00575 
00576         <font class="keywordflow">if</font> (tmpbuf) {
00577                 <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> size = (len &lt; 0) ? ((<a class="code" href="class_s_w_module.html#a7">getEntrySize</a>()&lt;0) ? strlen(tmpbuf) : <a class="code" href="class_s_w_module.html#a7">getEntrySize</a>()) * FILTERPAD : len;
00578                 <font class="keywordflow">if</font> (size &gt; 0) {
00579                         key = (<a class="code" href="class_s_w_key.html">SWKey</a> *)*<font class="keyword">this</font>;
00580 
00581                         <a class="code" href="class_s_w_module.html#a55">optionFilter</a>(tmpbuf, size, key);
00582         
00583                         <font class="keywordflow">if</font> (render) {
00584                                 <a class="code" href="class_s_w_module.html#a44">renderFilter</a>(tmpbuf, size, key);
00585                                 <a class="code" href="class_s_w_module.html#a48">encodingFilter</a>(tmpbuf, size, key);
00586                         }
00587                         <font class="keywordflow">else</font>    <a class="code" href="class_s_w_module.html#a50">stripFilter</a>(tmpbuf, size, key);
00588                 }
00589         }
00590         <font class="keywordflow">else</font> {
00591                 tmpbuf = null;
00592         }
00593 
00594         <font class="keywordflow">return</font> tmpbuf;
00595 }
</pre></div>    </td>
  </tr>
</table>
<a name="a47" doxytag="SWModule::ReplaceEncodingFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule&amp; SWModule::ReplaceEncodingFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">SWFilter *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>oldfilter</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>SWFilter *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>newfilter</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Replaces an EncodingFilter in this module's.
<p>
<dl compact><dt><b>
See also: </b><dd>
encodingfilters queue </dl><dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>oldfilter</em>&nbsp;</td><td>
the filter to remove </td></tr>
<tr><td valign=top><em>newfilter</em>&nbsp;</td><td>
the filter to add in its place </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00468">468</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00468                                                                                         {
00469     FilterList::iterator iter;
00470     <font class="keywordflow">for</font> (iter = <a class="code" href="class_s_w_module.html#n22">encodingFilters</a>-&gt;begin(); iter != <a class="code" href="class_s_w_module.html#n22">encodingFilters</a>-&gt;end(); iter++)
00471         <font class="keywordflow">if</font> (*iter == oldfilter)
00472                 *iter = newfilter;
00473     <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00474   }
</pre></div>    </td>
  </tr>
</table>
<a name="a43" doxytag="SWModule::ReplaceRenderFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule&amp; SWModule::ReplaceRenderFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">SWFilter *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>oldfilter</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>SWFilter *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>newfilter</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Replaces a RenderFilter in this module's.
<p>
<dl compact><dt><b>
See also: </b><dd>
renderfilters queue </dl><dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>oldfilter</em>&nbsp;</td><td>
the filter to remove </td></tr>
<tr><td valign=top><em>newfilter</em>&nbsp;</td><td>
the filter to add in its place </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00431">431</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00431                                                                                       {
00432     FilterList::iterator iter;
00433     <font class="keywordflow">for</font> (iter = <a class="code" href="class_s_w_module.html#n20">renderFilters</a>-&gt;begin(); iter != <a class="code" href="class_s_w_module.html#n20">renderFilters</a>-&gt;end(); iter++)
00434         <font class="keywordflow">if</font> (*iter == oldfilter)
00435                 *iter = newfilter;
00436     <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00437   }
</pre></div>    </td>
  </tr>
</table>
<a name="a22" doxytag="SWModule::Search"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> <a class="el" href="class_list_key.html">ListKey</a> &amp; SWModule::Search </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>istr</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>searchType</em> = 0, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>flags</em> = 0, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap><a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>scope</em> = 0, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>bool *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>justCheckIfSupported</em> = 0, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>void(*&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>percent</em>)(char, void *) = &amp;nullPercent, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>void *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>percentUserData</em> = 0</td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Searches a module for a string.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>istr</em>&nbsp;</td><td>
string for which to search </td></tr>
<tr><td valign=top><em>searchType</em>&nbsp;</td><td>
type of search to perform &lt;=0 -&gt;regex; 1-&gt;phrase; 2-&gt;multiword; </td></tr>
<tr><td valign=top><em>flags</em>&nbsp;</td><td>
options flags for search </td></tr>
<tr><td valign=top><em>justCheckIfSupported</em>&nbsp;</td><td>
if set, don't search, only tell if this function supports requested search.</td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
listkey set to verses that contain istr </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00391">391</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="listkey_8cpp-source.html#l00064">ListKey::ClearList</a>(), <a class="el" href="swkey_8cpp-source.html#l00045">SWKey::clone</a>(), <a class="el" href="swmodule_8cpp-source.html#l00105">CreateKey</a>(), <a class="el" href="swmodule_8cpp-source.html#l00117">Error</a>(), <a class="el" href="swkey_8h-source.html#l00208">SWKey::Index</a>(), <a class="el" href="swmodule_8h-source.html#l00077">key</a>, <a class="el" href="swmodule_8cpp-source.html#l00303">KeyText</a>(), <a class="el" href="versekey_8cpp-source.html#l01300">VerseKey::NewIndex</a>(), <a class="el" href="swkey_8cpp-source.html#l00068">SWKey::Persist</a>(), <a class="el" href="swmodule_8cpp-source.html#l00272">SetKey</a>(), <a class="el" href="swmodule_8cpp-source.html#l00556">StripText</a>(), and <a class="el" href="swmodule_8h-source.html#l00125">terminateSearch</a>.
<p>
<div class="fragment"><pre>00392 {
00393         <a class="code" href="class_s_w_key.html">SWKey</a> *savekey = 0;
00394         <a class="code" href="class_s_w_key.html">SWKey</a> *searchkey = 0;
00395         regex_t preg;
00396         <a class="code" href="class_s_w_key.html">SWKey</a> textkey;
00397         <font class="keywordtype">char</font> **words = 0;
00398         <font class="keywordtype">char</font> *wordBuf = 0;
00399         <font class="keywordtype">int</font> wordCount = 0;
00400         <font class="keyword">const</font> <font class="keywordtype">char</font> *sres;
00401         <a class="code" href="class_s_w_module.html#m0">terminateSearch</a> = <font class="keyword">false</font>;
00402         <font class="keywordtype">char</font> perc = 1;
00403         <font class="keywordtype">bool</font> savePEA = isProcessEntryAttributes();
00404 
00405         processEntryAttributes(<font class="keyword">false</font>);
00406         listkey.<a class="code" href="class_list_key.html#a4">ClearList</a>();
00407 
00408         <font class="keywordflow">if</font> (!<a class="code" href="class_s_w_module.html#n6">key</a>-&gt;<a class="code" href="class_s_w_key.html#a4">Persist</a>()) {
00409                 savekey = <a class="code" href="class_s_w_module.html#a26">CreateKey</a>();
00410                 *savekey = *<a class="code" href="class_s_w_module.html#n6">key</a>;
00411         }
00412         <font class="keywordflow">else</font>    savekey = <a class="code" href="class_s_w_module.html#n6">key</a>;
00413 
00414         searchkey = (scope)?scope-&gt;<a class="code" href="class_s_w_key.html#a3">clone</a>():(<a class="code" href="class_s_w_module.html#n6">key</a>-&gt;Persist())?<a class="code" href="class_s_w_module.html#n6">key</a>-&gt;clone():0;
00415         <font class="keywordflow">if</font> (searchkey) {
00416                 searchkey-&gt;<a class="code" href="class_s_w_key.html#a4">Persist</a>(1);
00417                 <a class="code" href="class_s_w_module.html#a8">SetKey</a>(*searchkey);
00418         }
00419 
00420         (*percent)(perc, percentUserData);
00421         <font class="comment">// MAJOR KLUDGE: VerseKey::Index still return index within testament.</font>
00422         <font class="comment">//      VerseKey::NewIndex should be moved to Index and Index should be some</font>
00423         <font class="comment">//      VerseKey specific name</font>
00424         <a class="code" href="class_verse_key.html">VerseKey</a> *vkcheck = 0;
00425 <font class="preprocessor">#ifndef _WIN32_WCE</font>
00426 <font class="preprocessor"></font>        <font class="keywordflow">try</font> {
00427 <font class="preprocessor">#endif</font>
00428 <font class="preprocessor"></font>                vkcheck = SWDYNAMIC_CAST(<a class="code" href="class_verse_key.html">VerseKey</a>, <a class="code" href="class_s_w_module.html#n6">key</a>);
00429 <font class="preprocessor">#ifndef _WIN32_WCE</font>
00430 <font class="preprocessor"></font>        }
00431         <font class="keywordflow">catch</font> (...) {}
00432 <font class="preprocessor">#endif</font>
00433 <font class="preprocessor"></font>        <font class="comment">// end MAJOR KLUDGE</font>
00434 
00435         *<font class="keyword">this</font> = BOTTOM;
00436         <font class="comment">// fix below when we find out the bug</font>
00437         <font class="keywordtype">long</font> highIndex = (vkcheck)?32300<font class="comment">/*vkcheck-&gt;NewIndex()*/</font>:<a class="code" href="class_s_w_module.html#n6">key</a>-&gt;<a class="code" href="class_s_w_key.html#a17">Index</a>();
00438         <font class="keywordflow">if</font> (!highIndex)
00439                 highIndex = 1;          <font class="comment">// avoid division by zero errors.</font>
00440         *<font class="keyword">this</font> = TOP;
00441         <font class="keywordflow">if</font> (searchType &gt;= 0) {
00442                 flags |=searchType|REG_NOSUB|REG_EXTENDED;
00443                 regcomp(&amp;preg, istr, flags);
00444         }
00445 
00446         (*percent)(++perc, percentUserData);
00447         <font class="keywordflow">if</font> (searchType == -2) {
00448                 wordBuf = (<font class="keywordtype">char</font> *)calloc(<font class="keyword">sizeof</font>(<font class="keywordtype">char</font>), strlen(istr) + 1);
00449                 strcpy(wordBuf, istr);
00450                 words = (<font class="keywordtype">char</font> **)calloc(<font class="keyword">sizeof</font>(<font class="keywordtype">char</font> *), 10);
00451                 <font class="keywordtype">int</font> allocWords = 10;
00452                 words[wordCount] = strtok(wordBuf, <font class="stringliteral">" "</font>);
00453                 <font class="keywordflow">while</font> (words[wordCount]) {
00454                         wordCount++;
00455                         <font class="keywordflow">if</font> (wordCount == allocWords) {
00456                                 allocWords+=10;
00457                                 words = (<font class="keywordtype">char</font> **)realloc(words, <font class="keyword">sizeof</font>(<font class="keywordtype">char</font> *)*allocWords);
00458                         }
00459                         words[wordCount] = strtok(NULL, <font class="stringliteral">" "</font>);
00460                 }
00461         }
00462 
00463         perc = 5;
00464         (*percent)(perc, percentUserData);
00465 
00466         <font class="keywordflow">while</font> (!<a class="code" href="class_s_w_module.html#a2">Error</a>() &amp;&amp; !<a class="code" href="class_s_w_module.html#m0">terminateSearch</a>) {
00467 
00468         
00469                 <font class="keywordtype">long</font> mindex = 0;
00470                 <font class="keywordflow">if</font> (vkcheck)
00471                         mindex = vkcheck-&gt;<a class="code" href="class_verse_key.html#a33">NewIndex</a>();
00472                 <font class="keywordflow">else</font> mindex = <a class="code" href="class_s_w_module.html#n6">key</a>-&gt;<a class="code" href="class_s_w_key.html#a17">Index</a>();
00473                 <font class="keywordtype">float</font> per = (float)mindex / highIndex;
00474                 per *= 93;
00475                 per += 5;
00476                 <font class="keywordtype">char</font> newperc = (char)per;
00477 <font class="comment">//              char newperc = (char)(5+(93*(((float)((vkcheck)?vkcheck-&gt;NewIndex():key-&gt;Index()))/highIndex)));</font>
00478                 <font class="keywordflow">if</font> (newperc &gt; perc) {
00479                         perc = newperc;
00480                         (*percent)(perc, percentUserData);
00481                 }
00482                 <font class="keywordflow">else</font> <font class="keywordflow">if</font> (newperc &lt; perc) {
00483 <font class="preprocessor">#ifndef _MSC_VER</font>
00484 <font class="preprocessor"></font>                        cerr &lt;&lt; <font class="stringliteral">"Serious error: new percentage complete is less than previous value\n"</font>;
00485                         cerr &lt;&lt; <font class="stringliteral">"using vk? "</font> &lt;&lt; ((vkcheck)?<font class="stringliteral">"yes"</font>:<font class="stringliteral">"no"</font>) &lt;&lt; <font class="stringliteral">"\n"</font>;
00486                         cerr &lt;&lt; <font class="stringliteral">"index: "</font> &lt;&lt; ((vkcheck)?vkcheck-&gt;<a class="code" href="class_verse_key.html#a33">NewIndex</a>():<a class="code" href="class_s_w_module.html#n6">key</a>-&gt;Index()) &lt;&lt; "\n";
00487                         cerr &lt;&lt; <font class="stringliteral">"highIndex: "</font> &lt;&lt; highIndex &lt;&lt; <font class="stringliteral">"\n"</font>;
00488                         cerr &lt;&lt; <font class="stringliteral">"newperc =="</font> &lt;&lt; (int)newperc &lt;&lt; <font class="stringliteral">"%"</font> &lt;&lt; <font class="stringliteral">"is smaller than\n"</font>;
00489                         cerr &lt;&lt; <font class="stringliteral">"perc == "</font>  &lt;&lt; (int )perc &lt;&lt; <font class="stringliteral">"% \n"</font>;
00490 <font class="preprocessor">#endif</font>
00491 <font class="preprocessor"></font>                }
00492                 <font class="keywordflow">if</font> (searchType &gt;= 0) {
00493                         <font class="keywordflow">if</font> (!regexec(&amp;preg,  <a class="code" href="class_s_w_module.html#a56">StripText</a>(), 0, 0, 0)) {
00494                                 textkey = <a class="code" href="class_s_w_module.html#a12">KeyText</a>();
00495                                 listkey &lt;&lt; textkey;
00496                         }
00497                 }
00498                 <font class="keywordflow">else</font> {
00499                         <font class="keywordflow">if</font> (searchType == -1) {
00500                                 sres = ((flags &amp; REG_ICASE) == REG_ICASE) ? stristr(<a class="code" href="class_s_w_module.html#a56">StripText</a>(), istr) : strstr(<a class="code" href="class_s_w_module.html#a56">StripText</a>(), istr);
00501                                 <font class="keywordflow">if</font> (sres) {
00502                                                 textkey = <a class="code" href="class_s_w_module.html#a12">KeyText</a>();
00503                                                 listkey &lt;&lt; textkey;
00504                                 }
00505                         }
00506                         <font class="keywordflow">if</font> (searchType == -2) {
00507                                 <font class="keywordtype">int</font> i;
00508                                 <font class="keyword">const</font> <font class="keywordtype">char</font> *stripBuf = <a class="code" href="class_s_w_module.html#a56">StripText</a>();
00509                                 <font class="keywordflow">for</font> (i = 0; i &lt; wordCount; i++) {
00510                                         sres = ((flags &amp; REG_ICASE) == REG_ICASE) ? stristr(stripBuf, words[i]) : strstr(stripBuf, words[i]);
00511                                         <font class="keywordflow">if</font> (!sres)
00512                                                 <font class="keywordflow">break</font>;
00513                                 }
00514                                 <font class="keywordflow">if</font> (i == wordCount) {
00515                                         textkey = <a class="code" href="class_s_w_module.html#a12">KeyText</a>();
00516                                         listkey &lt;&lt; textkey;
00517                                 }
00518 
00519                         }
00520                 }
00521                 (*this)++;
00522         }
00523         <font class="keywordflow">if</font> (searchType &gt;= 0)
00524                 regfree(&amp;preg);
00525 
00526         <font class="keywordflow">if</font> (searchType == -2) {
00527                 free(words);
00528                 free(wordBuf);
00529         }
00530 
00531         <a class="code" href="class_s_w_module.html#a8">SetKey</a>(*savekey);
00532 
00533         <font class="keywordflow">if</font> (!savekey-&gt;<a class="code" href="class_s_w_key.html#a4">Persist</a>())
00534                 <font class="keyword">delete</font> savekey;
00535 
00536         <font class="keywordflow">if</font> (searchkey)
00537                 <font class="keyword">delete</font> searchkey;
00538 
00539         listkey = TOP;
00540         processEntryAttributes(savePEA);
00541         (*percent)(100, percentUserData);
00542 
00543         <font class="keywordflow">return</font> listkey;
00544 }
</pre></div>    </td>
  </tr>
</table>
<a name="a32" doxytag="SWModule::setentry"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual SWModule&amp; SWModule::setentry </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>inbuf</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>long&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>len</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Modify the current module entry text only if module <a class="el" href="class_s_w_module.html#a31">isWritable</a>.
<p>
<ul>
<li></ul>
<dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00356">356</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00356                                                             {
00357     <font class="keywordflow">return</font> *<font class="keyword">this</font>;
00358   }
</pre></div>    </td>
  </tr>
</table>
<a name="a9" doxytag="SWModule::SetKey"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> char SWModule::SetKey </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="class_s_w_key.html">SWKey</a> &amp;&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>ikey</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets the key of this module.
<p>
Similair to <dl compact><dt><b>
See also: </b><dd>
<a class="el" href="class_s_w_module.html#a8">SetKey</a>(const SWKey*) . </dl><dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>ikey</em>&nbsp;</td><td>
The <a class="el" href="class_s_w_key.html">SWKey</a> which should be used as new key. </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
Error status </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00268">268</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swmodule_8cpp-source.html#l00272">SetKey</a>().
<p>
<div class="fragment"><pre>00268                                        {
00269         <font class="keywordflow">return</font> <a class="code" href="class_s_w_module.html#a8">SetKey</a>(&amp;ikey);
00270 }
</pre></div>    </td>
  </tr>
</table>
<a name="a8" doxytag="SWModule::SetKey"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> char SWModule::SetKey </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>ikey</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets a key to this module for position to a particular record or set of records.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>ikey</em>&nbsp;</td><td>
key with which to set this module </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
error status </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00272">272</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swmodule_8cpp-source.html#l00105">CreateKey</a>(), <a class="el" href="swmodule_8h-source.html#l00077">key</a>, and <a class="el" href="swkey_8cpp-source.html#l00068">SWKey::Persist</a>().
<p>
Referenced by <a class="el" href="swmodule_8cpp-source.html#l00303">KeyText</a>(), <a class="el" href="swmodule_8cpp-source.html#l00606">RenderText</a>(), <a class="el" href="swmodule_8cpp-source.html#l00391">Search</a>(), <a class="el" href="swmodule_8cpp-source.html#l00268">SetKey</a>(), and <a class="el" href="swmodule_8cpp-source.html#l00638">StripText</a>().
<p>
<div class="fragment"><pre>00273 {
00274         <a class="code" href="class_s_w_key.html">SWKey</a> *oldKey = 0;
00275 
00276         <font class="keywordflow">if</font> (key) {
00277                 <font class="keywordflow">if</font> (!<a class="code" href="class_s_w_module.html#n6">key</a>-&gt;<a class="code" href="class_s_w_key.html#a4">Persist</a>())    <font class="comment">// if we have our own copy</font>
00278                         oldKey = <a class="code" href="class_s_w_module.html#n6">key</a>;
00279         }
00280 
00281         <font class="keywordflow">if</font> (!ikey-&gt;<a class="code" href="class_s_w_key.html#a4">Persist</a>()) {         <font class="comment">// if we are to keep our own copy</font>
00282                  <a class="code" href="class_s_w_module.html#n6">key</a> = <a class="code" href="class_s_w_module.html#a26">CreateKey</a>();
00283                 *<a class="code" href="class_s_w_module.html#n6">key</a> = *ikey;
00284         }
00285         <font class="keywordflow">else</font>     <a class="code" href="class_s_w_module.html#n6">key</a> = (<a class="code" href="class_s_w_key.html">SWKey</a> *)ikey;           <font class="comment">// if we are to just point to an external key</font>
00286 
00287         <font class="keywordflow">if</font> (oldKey)
00288                 <font class="keyword">delete</font> oldKey;
00289 
00290         <font class="keywordflow">return</font> 0;
00291 }
</pre></div>    </td>
  </tr>
</table>
<a name="a60" doxytag="SWModule::setSkipConsecutiveLinks"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void SWModule::setSkipConsecutiveLinks </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">bool&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>val</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
option to specify behaviour when iterating over consecutive entried linked to same text.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>val</em>&nbsp;</td><td>
= true means only include entry once in iteration </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00584">584</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
<div class="fragment"><pre>00584 { skipConsecutiveLinks = val; }
</pre></div>    </td>
  </tr>
</table>
<a name="a50" doxytag="SWModule::stripFilter"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void SWModule::stripFilter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>buf</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>long&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>size</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap><a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>key</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [inline, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
StripFilter a text buffer.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>buf</em>&nbsp;</td><td>
the buffer to filter </td></tr>
<tr><td valign=top><em>size</em>&nbsp;</td><td>
the allocated size of the buffer </td></tr>
<tr><td valign=top><em>key</em>&nbsp;</td><td>
key location from where this buffer was extracted </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
*this </dl>
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00498">498</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
Referenced by <a class="el" href="swmodule_8cpp-source.html#l00570">RenderText</a>().
<p>
<div class="fragment"><pre>00498                                                               {
00499         <a class="code" href="class_s_w_module.html#a52">filterBuffer</a>(<a class="code" href="class_s_w_module.html#n18">stripFilters</a>, buf, size, key);
00500   }
</pre></div>    </td>
  </tr>
</table>
<a name="a58" doxytag="SWModule::StripText"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> const char * SWModule::StripText </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="class_s_w_key.html">SWKey</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>tmpKey</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
calls all StripFilters on current text.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>tmpKey</em>&nbsp;</td><td>
key to use to grab text </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
this module's text at specified key location massaged by Strip filters </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00638">638</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swmodule_8cpp-source.html#l00105">CreateKey</a>(), <a class="el" href="swmodule_8h-source.html#l00077">key</a>, <a class="el" href="swkey_8cpp-source.html#l00068">SWKey::Persist</a>(), <a class="el" href="swmodule_8cpp-source.html#l00272">SetKey</a>(), and <a class="el" href="swmodule_8cpp-source.html#l00556">StripText</a>().
<p>
<div class="fragment"><pre>00639 {
00640         <a class="code" href="class_s_w_key.html">SWKey</a> *savekey;
00641         <font class="keyword">const</font> <font class="keywordtype">char</font> *retVal;
00642 
00643         <font class="keywordflow">if</font> (!<a class="code" href="class_s_w_module.html#n6">key</a>-&gt;<a class="code" href="class_s_w_key.html#a4">Persist</a>()) {
00644                 savekey = <a class="code" href="class_s_w_module.html#a26">CreateKey</a>();
00645                 *savekey = *<a class="code" href="class_s_w_module.html#n6">key</a>;
00646         }
00647         <font class="keywordflow">else</font>    savekey = <a class="code" href="class_s_w_module.html#n6">key</a>;
00648 
00649         <a class="code" href="class_s_w_module.html#a8">SetKey</a>(*tmpKey);
00650 
00651         retVal = <a class="code" href="class_s_w_module.html#a56">StripText</a>();
00652 
00653         <a class="code" href="class_s_w_module.html#a8">SetKey</a>(*savekey);
00654 
00655         <font class="keywordflow">if</font> (!savekey-&gt;<a class="code" href="class_s_w_key.html#a4">Persist</a>())
00656                 <font class="keyword">delete</font> savekey;
00657 
00658         <font class="keywordflow">return</font> retVal;
00659 }
</pre></div>    </td>
  </tr>
</table>
<a name="a56" doxytag="SWModule::StripText"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> const char * SWModule::StripText </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>buf</em> = 0, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>len</em> = -1</td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
calls all StripFilters on buffer or current text.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>buf</em>&nbsp;</td><td>
buf to massage instead of current module position; if buf is NULL, the current text will be used </td></tr>
<tr><td valign=top><em>len</em>&nbsp;</td><td>
max len of buf OR current text -- will be applied anyway </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
this module's text at specified key location massaged by Strip filters </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00556">556</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
References <a class="el" href="swmodule_8cpp-source.html#l00570">RenderText</a>().
<p>
Referenced by <a class="el" href="swmodule_8cpp-source.html#l00391">Search</a>(), and <a class="el" href="swmodule_8cpp-source.html#l00638">StripText</a>().
<p>
<div class="fragment"><pre>00557 {
00558         <font class="keywordflow">return</font> <a class="code" href="class_s_w_module.html#a57">RenderText</a>(buf, len, <font class="keyword">false</font>);
00559 }
</pre></div>    </td>
  </tr>
</table>
<a name="a17" doxytag="SWModule::Type"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> char * SWModule::Type </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>imodtype</em> = 0          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets/gets module type.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>imodtype</em>&nbsp;</td><td>
value which to set modtype; [0] - only get </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
pointer to modtype </dl>
<p>
Definition at line <a class="el" href="swmodule_8cpp-source.html#l00165">165</a> of file <a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a>.
<p>
<div class="fragment"><pre>00166 {
00167         <font class="keywordflow">return</font> stdstr(&amp;modtype, imodtype);
00168 }
</pre></div>    </td>
  </tr>
</table>
<hr><h2>Member Data Documentation</h2>
<a name="m0" doxytag="SWModule::terminateSearch"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> bool SWModule::terminateSearch
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set this bool to false to terminate the search which is executed by this module (<a class="el" href="class_s_w_module.html#a22">Search</a>).
<p>
This is useful for threaded applications to terminate the search in another thread. 
<p>
Definition at line <a class="el" href="swmodule_8h-source.html#l00125">125</a> of file <a class="el" href="swmodule_8h-source.html">swmodule.h</a>.
<p>
Referenced by <a class="el" href="swmodule_8cpp-source.html#l00391">Search</a>().    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="swmodule_8h-source.html">swmodule.h</a><li><a class="el" href="swmodule_8cpp-source.html">swmodule.cpp</a></ul>
<hr><address align="right"><small>Generated on Thu Jun 20 22:13:04 2002 for The Sword Project by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 
width=110 height=53></a>1.2.15 </small></address>
</body>
</html>