Added: websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Docs/Tutorial/SimpleTutorial.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Docs/Tutorial/SimpleTutorial.html (added) +++ websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Docs/Tutorial/SimpleTutorial.html Wed Sep 28 12:07:48 2016 @@ -0,0 +1,311 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html lang="en"> + <head> + <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> + <title>Lucy::Docs::Tutorial::SimpleTutorial</title> + <link rel="stylesheet" type="text/css" media="screen" href="/css/lucy.css"> + </head> + + <body> + + <div id="lucy-rigid_wrapper"> + + <div id="lucy-top" class="container_16 lucy-white_box_3d"> + + <div id="lucy-logo_box" class="grid_8"> + <a href="/"><img src="/images/lucy_logo_150x100.png" alt="Apache Lucyâ¢"></a> + </div> <!-- lucy-logo_box --> + + <div #id="lucy-top_nav_box" class="grid_8"> + <div id="lucy-top_nav_bar" class="container_8"> + <ul> + <li><a href="http://www.apache.org/" title="Apache Software Foundation">Apache Software Foundation</a></li> + <li><a href="http://www.apache.org/licenses/" title="License">License</a></li> + <li><a href="http://www.apache.org/foundation/sponsorship.html" title="Sponsorship">Sponsorship</a></li> + <li><a href="http://www.apache.org/foundation/thanks.html" title="Thanks">Thanks</a></li> + <li><a href="http://www.apache.org/security/ " title="Security">Security</a></li> + </ul> + </div> <!-- lucy-top_nav_bar --> + <p><a href="http://www.apache.org/">Apache</a> » <a href="/">Lucy</a> » <a href="/docs/">Docs</a> » <a href="/docs/0.5.0/">0.5.0</a> » <a href="/docs/0.5.0/c/">C</a> » <a href="/docs/0.5.0/c/Lucy/">Lucy</a> » <a href="/docs/0.5.0/c/Lucy/Docs/">Docs</a> » <a href="/docs/0.5.0/c/Lucy/Docs/Tutorial/">Tutorial</a></p> + <form name="lucy-top_search_box" id="lucy-top_search_box" action="http://www.google.com/search" method="get"> + <input value="*.apache.org" name="sitesearch" type="hidden"/> + <input type="text" name="q" id="query" style="width:85%"> + <input type="submit" id="submit" value="Search"> + </form> + </div> <!-- lucy-top_nav_box --> + + <div class="clear"></div> + + </div> <!-- lucy-top --> + + <div id="lucy-main_content" class="container_16 lucy-white_box_3d"> + + <div class="grid_4" id="lucy-left_nav_box"> + <h6>About</h6> + <ul> + <li><a href="/">Welcome</a></li> + <li><a href="/clownfish.html">Clownfish</a></li> + <li><a href="/faq.html">FAQ</a></li> + <li><a href="/people.html">People</a></li> + </ul> + <h6>Resources</h6> + <ul> + <li><a href="/download.html">Download</a></li> + <li><a href="/mailing_lists.html">Mailing Lists</a></li> + <li><a href="/docs/">Documentation</a></li> + <li><a href="http://wiki.apache.org/lucy/">Wiki</a></li> + <li><a href="https://issues.apache.org/jira/browse/LUCY">Issue Tracker</a></li> + <li><a href="/version_control.html">Version Control</a></li> + </ul> + <h6>Related Projects</h6> + <ul> + <li><a href="http://lucene.apache.org/core/">Lucene</a></li> + <li><a href="http://dezi.org/">Dezi</a></li> + <li><a href="http://lucene.apache.org/solr/">Solr</a></li> + <li><a href="http://lucenenet.apache.org/">Lucene.NET</a></li> + <li><a href="http://lucene.apache.org/pylucene/">PyLucene</a></li> + </ul> + </div> <!-- lucy-left_nav_box --> + + <div id="lucy-main_content_box" class="grid_9"> + <div class="c-api"> +<h2>Bare-bones search app.</h2> +<h3>Setup</h3> +<p>Copy the text presentation of the US Constitution from the <code>sample</code> directory +of the Apache Lucy distribution to the base level of your web serverâs +<code>htdocs</code> directory.</p> +<pre><code>$ cp -R sample/us_constitution /usr/local/apache2/htdocs/ +</code></pre> +<h3>Indexing: indexer.pl</h3> +<p>Our first task will be to create an application called <code>indexer.pl</code> which +builds a searchable âinverted indexâ from a collection of documents.</p> +<p>After we specify some configuration variables and load all necessary +modulesâ¦</p> +<pre><code class="language-c">#include <dirent.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +#define CFISH_USE_SHORT_NAMES +#define LUCY_USE_SHORT_NAMES +#include "Clownfish/String.h" +#include "Lucy/Simple.h" +#include "Lucy/Document/Doc.h" + +const char path_to_index[] = "lucy_index"; +const char uscon_source[] = "../../common/sample/us_constitution"; +</code></pre> +<p>⦠weâll start by creating a <a href="../../../Lucy/Simple.html">Lucy::Simple</a> object, telling it +where weâd like the index to be located and the language of the source +material.</p> +<pre><code class="language-c">int +main() { + // Initialize the library. + lucy_bootstrap_parcel(); + + String *folder = Str_newf("%s", path_to_index); + String *language = Str_newf("en"); + Simple *lucy = Simple_new((Obj*)folder, language); +</code></pre> +<p>Next, weâll add a subroutine which parses our sample documents.</p> +<pre><code class="language-c">Doc* +S_parse_file(const char *filename) { + size_t bytes = strlen(uscon_source) + 1 + strlen(filename) + 1; + char *path = (char*)malloc(bytes); + path[0] = '\0'; + strcat(path, uscon_source); + strcat(path, "/"); + strcat(path, filename); + + FILE *stream = fopen(path, "r"); + if (stream == NULL) { + perror(path); + exit(1); + } + + char *title = NULL; + char *bodytext = NULL; + if (fscanf(stream, "%m[^\r\n] %m[\x01-\x7F]", &title, &bodytext) != 2) { + fprintf(stderr, "Can't extract title/bodytext from '%s'", path); + exit(1); + } + + Doc *doc = Doc_new(NULL, 0); + + { + // Store 'title' field + String *field = Str_newf("title"); + String *value = Str_new_from_utf8(title, strlen(title)); + Doc_Store(doc, field, (Obj*)value); + DECREF(field); + DECREF(value); + } + + { + // Store 'content' field + String *field = Str_newf("content"); + String *value = Str_new_from_utf8(bodytext, strlen(bodytext)); + Doc_Store(doc, field, (Obj*)value); + DECREF(field); + DECREF(value); + } + + { + // Store 'url' field + String *field = Str_newf("url"); + String *value = Str_new_from_utf8(filename, strlen(filename)); + Doc_Store(doc, field, (Obj*)value); + DECREF(field); + DECREF(value); + } + + fclose(stream); + free(bodytext); + free(title); + free(path); + return doc; +} +</code></pre> +<p>Add some elementary directory reading codeâ¦</p> +<pre><code class="language-c"> DIR *dir = opendir(uscon_source); + if (dir == NULL) { + perror(uscon_source); + return 1; + } +</code></pre> +<p>⦠and now weâre ready for the meat of indexer.pl â which occupies exactly +one line of code.</p> +<pre><code class="language-c"> for (struct dirent *entry = readdir(dir); + entry; + entry = readdir(dir)) { + + if (S_ends_with(entry->d_name, ".txt")) { + Doc *doc = S_parse_file(entry->d_name); + Simple_Add_Doc(lucy, doc); // ta-da! + DECREF(doc); + } + } + + closedir(dir); + + DECREF(lucy); + DECREF(language); + DECREF(folder); + return 0; +} +</code></pre> +<h3>Search: search.cgi</h3> +<p>As with our indexing app, the bulk of the code in our search script wonât be +Lucy-specific.</p> +<p>The beginning is dedicated to CGI processing and configuration.</p> +<pre><code class="language-c">#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +#define CFISH_USE_SHORT_NAMES +#define LUCY_USE_SHORT_NAMES +#include "Clownfish/String.h" +#include "Lucy/Document/HitDoc.h" +#include "Lucy/Simple.h" + +const char path_to_index[] = "lucy_index"; + +static void +S_usage_and_exit(const char *arg0) { + printf("Usage: %s <querystring>\n", arg0); + exit(1); +} + +int +main(int argc, char *argv[]) { + // Initialize the library. + lucy_bootstrap_parcel(); + + if (argc != 2) { + S_usage_and_exit(argv[0]); + } + + const char *query_c = argv[1]; + + printf("Searching for: %s\n\n", query_c); +</code></pre> +<p>Once thatâs out of the way, we create our Lucy::Simple object and feed +it a query string.</p> +<pre><code class="language-c"> String *folder = Str_newf("%s", path_to_index); + String *language = Str_newf("en"); + Simple *lucy = Simple_new((Obj*)folder, language); + + String *query_str = Str_newf("%s", query_c); + Simple_Search(lucy, query_str, 0, 10); +</code></pre> +<p>The value returned by <a href="../../../Lucy/Simple.html#func_Search">Search()</a> is the total number of documents +in the collection which matched the query. Weâll show this hit count to the +user, and also use it in conjunction with the parameters <code>offset</code> and +<code>num_wanted</code> to break up results into âpagesâ of manageable size.</p> +<p>Calling <a href="../../../Lucy/Simple.html#func_Search">Search()</a> on our Simple object turns it into an iterator. +Invoking <a href="../../../Lucy/Simple.html#func_Next">Next()</a> now returns hits one at a time as <a href="../../../Lucy/Document/HitDoc.html">HitDoc</a> +objects, starting with the most relevant.</p> +<pre><code class="language-c"> String *title_str = Str_newf("title"); + String *url_str = Str_newf("url"); + HitDoc *hit; + int i = 1; + + // Loop over search results. + while (NULL != (hit = Simple_Next(lucy))) { + String *title = (String*)HitDoc_Extract(hit, title_str); + char *title_c = Str_To_Utf8(title); + + String *url = (String*)HitDoc_Extract(hit, url_str); + char *url_c = Str_To_Utf8(url); + + printf("Result %d: %s (%s)\n", i, title_c, url_c); + + free(url_c); + free(title_c); + DECREF(url); + DECREF(title); + DECREF(hit); + i++; + } + + DECREF(url_str); + DECREF(title_str); + DECREF(query_str); + DECREF(lucy); + DECREF(language); + DECREF(folder); + return 0; +} +</code></pre> +<p>The rest of the script is just text wrangling.</p> +<pre><code>Code example for C is missing</code></pre> +<h3>OK⦠now what?</h3> +<p>Lucy::Simple is perfectly adequate for some tasks, but itâs not very flexible. +Many people find that it doesnât do at least one or two things they canât live +without.</p> +<p>In our next tutorial chapter, +<a href="../../../Lucy/Docs/Tutorial/BeyondSimpleTutorial.html">BeyondSimpleTutorial</a>, weâll rewrite our +indexing and search scripts using the classes that Lucy::Simple hides +from view, opening up the possibilities for expansion; then, weâll spend the +rest of the tutorial chapters exploring these possibilities.</p> +</div> + + </div> <!-- lucy-main_content_box --> + <div class="clear"></div> + + </div> <!-- lucy-main_content --> + + <div id="lucy-copyright" class="container_16"> + <p>Copyright © 2010-2015 The Apache Software Foundation, Licensed under the + <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>. + <br/> + Apache Lucy, Lucy, Apache, the Apache feather logo, and the Apache Lucy project logo are trademarks of The + Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their + respective owners. + </p> + </div> <!-- lucy-copyright --> + + </div> <!-- lucy-rigid_wrapper --> + + </body> +</html>
Added: websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Document/Doc.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Document/Doc.html (added) +++ websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Document/Doc.html Wed Sep 28 12:07:48 2016 @@ -0,0 +1,258 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html lang="en"> + <head> + <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> + <title>Lucy::Document::Doc â C API Documentation</title> + <link rel="stylesheet" type="text/css" media="screen" href="/css/lucy.css"> + </head> + + <body> + + <div id="lucy-rigid_wrapper"> + + <div id="lucy-top" class="container_16 lucy-white_box_3d"> + + <div id="lucy-logo_box" class="grid_8"> + <a href="/"><img src="/images/lucy_logo_150x100.png" alt="Apache Lucyâ¢"></a> + </div> <!-- lucy-logo_box --> + + <div #id="lucy-top_nav_box" class="grid_8"> + <div id="lucy-top_nav_bar" class="container_8"> + <ul> + <li><a href="http://www.apache.org/" title="Apache Software Foundation">Apache Software Foundation</a></li> + <li><a href="http://www.apache.org/licenses/" title="License">License</a></li> + <li><a href="http://www.apache.org/foundation/sponsorship.html" title="Sponsorship">Sponsorship</a></li> + <li><a href="http://www.apache.org/foundation/thanks.html" title="Thanks">Thanks</a></li> + <li><a href="http://www.apache.org/security/ " title="Security">Security</a></li> + </ul> + </div> <!-- lucy-top_nav_bar --> + <p><a href="http://www.apache.org/">Apache</a> » <a href="/">Lucy</a> » <a href="/docs/">Docs</a> » <a href="/docs/0.5.0/">0.5.0</a> » <a href="/docs/0.5.0/c/">C</a> » <a href="/docs/0.5.0/c/Lucy/">Lucy</a> » <a href="/docs/0.5.0/c/Lucy/Document/">Document</a></p> + <form name="lucy-top_search_box" id="lucy-top_search_box" action="http://www.google.com/search" method="get"> + <input value="*.apache.org" name="sitesearch" type="hidden"/> + <input type="text" name="q" id="query" style="width:85%"> + <input type="submit" id="submit" value="Search"> + </form> + </div> <!-- lucy-top_nav_box --> + + <div class="clear"></div> + + </div> <!-- lucy-top --> + + <div id="lucy-main_content" class="container_16 lucy-white_box_3d"> + + <div class="grid_4" id="lucy-left_nav_box"> + <h6>About</h6> + <ul> + <li><a href="/">Welcome</a></li> + <li><a href="/clownfish.html">Clownfish</a></li> + <li><a href="/faq.html">FAQ</a></li> + <li><a href="/people.html">People</a></li> + </ul> + <h6>Resources</h6> + <ul> + <li><a href="/download.html">Download</a></li> + <li><a href="/mailing_lists.html">Mailing Lists</a></li> + <li><a href="/docs/">Documentation</a></li> + <li><a href="http://wiki.apache.org/lucy/">Wiki</a></li> + <li><a href="https://issues.apache.org/jira/browse/LUCY">Issue Tracker</a></li> + <li><a href="/version_control.html">Version Control</a></li> + </ul> + <h6>Related Projects</h6> + <ul> + <li><a href="http://lucene.apache.org/core/">Lucene</a></li> + <li><a href="http://dezi.org/">Dezi</a></li> + <li><a href="http://lucene.apache.org/solr/">Solr</a></li> + <li><a href="http://lucenenet.apache.org/">Lucene.NET</a></li> + <li><a href="http://lucene.apache.org/pylucene/">PyLucene</a></li> + </ul> + </div> <!-- lucy-left_nav_box --> + + <div id="lucy-main_content_box" class="grid_9"> + <div class="c-api"> +<h2>Lucy::Document::Doc</h2> +<table> +<tr> +<td class="label">parcel</td> +<td><a href="../../lucy.html">Lucy</a></td> +</tr> +<tr> +<td class="label">class variable</td> +<td><code><span class="prefix">LUCY_</span>DOC</code></td> +</tr> +<tr> +<td class="label">struct symbol</td> +<td><code><span class="prefix">lucy_</span>Doc</code></td> +</tr> +<tr> +<td class="label">class nickname</td> +<td><code><span class="prefix">lucy_</span>Doc</code></td> +</tr> +<tr> +<td class="label">header file</td> +<td><code>Lucy/Document/Doc.h</code></td> +</tr> +</table> +<h3>Name</h3> +<p>Lucy::Document::Doc â A document.</p> +<h3>Description</h3> +<p>A Doc object is akin to a row in a database, in that it is made up of one +or more fields, each of which has a value.</p> +<h3>Functions</h3> +<dl> +<dt id="func_new">new</dt> +<dd> +<pre><code><span class="prefix">lucy_</span>Doc* <span class="comment">// incremented</span> +<span class="prefix">lucy_</span><strong>Doc_new</strong>( + void *<strong>fields</strong>, + int32_t <strong>doc_id</strong> +); +</code></pre> +<p>Create a new Document.</p> +<dl> +<dt>fields</dt> +<dd><p>Field-value pairs.</p> +</dd> +<dt>doc_id</dt> +<dd><p>Internal Lucy document id. Default of 0 (an +invalid doc id).</p> +</dd> +</dl> +</dd> +<dt id="func_init">init</dt> +<dd> +<pre><code><span class="prefix">lucy_</span>Doc* +<span class="prefix">lucy_</span><strong>Doc_init</strong>( + <span class="prefix">lucy_</span>Doc *<strong>self</strong>, + void *<strong>fields</strong>, + int32_t <strong>doc_id</strong> +); +</code></pre> +<p>Initialize a Document.</p> +<dl> +<dt>fields</dt> +<dd><p>Field-value pairs.</p> +</dd> +<dt>doc_id</dt> +<dd><p>Internal Lucy document id. Default of 0 (an +invalid doc id).</p> +</dd> +</dl> +</dd> +</dl> +<h3>Methods</h3> +<dl> +<dt id="func_Set_Doc_ID">Set_Doc_ID</dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>Doc_Set_Doc_ID</strong>( + <span class="prefix">lucy_</span>Doc *<strong>self</strong>, + int32_t <strong>doc_id</strong> +); +</code></pre> +<p>Set internal Lucy document id.</p> +</dd> +<dt id="func_Get_Doc_ID">Get_Doc_ID</dt> +<dd> +<pre><code>int32_t +<span class="prefix">lucy_</span><strong>Doc_Get_Doc_ID</strong>( + <span class="prefix">lucy_</span>Doc *<strong>self</strong> +); +</code></pre> +<p>Retrieve internal Lucy document id.</p> +</dd> +<dt id="func_Store">Store</dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>Doc_Store</strong>( + <span class="prefix">lucy_</span>Doc *<strong>self</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a> *<strong>field</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/Obj.html">Obj</a> *<strong>value</strong> +); +</code></pre> +<p>Store a field value in the Doc.</p> +<dl> +<dt>field</dt> +<dd><p>The field name</p> +</dd> +<dt>value</dt> +<dd><p>The value</p> +</dd> +</dl> +</dd> +<dt id="func_Get_Fields">Get_Fields</dt> +<dd> +<pre><code>void* +<span class="prefix">lucy_</span><strong>Doc_Get_Fields</strong>( + <span class="prefix">lucy_</span>Doc *<strong>self</strong> +); +</code></pre> +<p>Return the Docâs backing fields hash.</p> +</dd> +<dt id="func_Get_Size">Get_Size</dt> +<dd> +<pre><code>uint32_t +<span class="prefix">lucy_</span><strong>Doc_Get_Size</strong>( + <span class="prefix">lucy_</span>Doc *<strong>self</strong> +); +</code></pre> +<p>Return the number of fields in the Doc.</p> +</dd> +<dt id="func_Extract">Extract</dt> +<dd> +<pre><code><span class="prefix">cfish_</span><a href="../../Clownfish/Obj.html">Obj</a>* <span class="comment">// incremented</span> +<span class="prefix">lucy_</span><strong>Doc_Extract</strong>( + <span class="prefix">lucy_</span>Doc *<strong>self</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a> *<strong>field</strong> +); +</code></pre> +<p>Retrieve the fieldâs value, or NULL if the field is not present.</p> +</dd> +<dt id="func_Field_Names">Field_Names</dt> +<dd> +<pre><code><span class="prefix">cfish_</span><a href="../../Clownfish/Vector.html">Vector</a>* <span class="comment">// incremented</span> +<span class="prefix">lucy_</span><strong>Doc_Field_Names</strong>( + <span class="prefix">lucy_</span>Doc *<strong>self</strong> +); +</code></pre> +<p>Return a list of names of all fields present.</p> +</dd> +<dt id="func_Equals">Equals</dt> +<dd> +<pre><code>bool +<span class="prefix">lucy_</span><strong>Doc_Equals</strong>( + <span class="prefix">lucy_</span>Doc *<strong>self</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/Obj.html">Obj</a> *<strong>other</strong> +); +</code></pre> +<p>Indicate whether two objects are the same. By default, compares the +memory address.</p> +<dl> +<dt>other</dt> +<dd><p>Another Obj.</p> +</dd> +</dl> +</dd> +</dl> +<h3>Inheritance</h3> +<p>Lucy::Document::Doc is a <a href="../../Clownfish/Obj.html">Clownfish::Obj</a>.</p> +</div> + + </div> <!-- lucy-main_content_box --> + <div class="clear"></div> + + </div> <!-- lucy-main_content --> + + <div id="lucy-copyright" class="container_16"> + <p>Copyright © 2010-2015 The Apache Software Foundation, Licensed under the + <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>. + <br/> + Apache Lucy, Lucy, Apache, the Apache feather logo, and the Apache Lucy project logo are trademarks of The + Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their + respective owners. + </p> + </div> <!-- lucy-copyright --> + + </div> <!-- lucy-rigid_wrapper --> + + </body> +</html> Added: websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Document/HitDoc.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Document/HitDoc.html (added) +++ websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Document/HitDoc.html Wed Sep 28 12:07:48 2016 @@ -0,0 +1,238 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html lang="en"> + <head> + <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> + <title>Lucy::Document::HitDoc â C API Documentation</title> + <link rel="stylesheet" type="text/css" media="screen" href="/css/lucy.css"> + </head> + + <body> + + <div id="lucy-rigid_wrapper"> + + <div id="lucy-top" class="container_16 lucy-white_box_3d"> + + <div id="lucy-logo_box" class="grid_8"> + <a href="/"><img src="/images/lucy_logo_150x100.png" alt="Apache Lucyâ¢"></a> + </div> <!-- lucy-logo_box --> + + <div #id="lucy-top_nav_box" class="grid_8"> + <div id="lucy-top_nav_bar" class="container_8"> + <ul> + <li><a href="http://www.apache.org/" title="Apache Software Foundation">Apache Software Foundation</a></li> + <li><a href="http://www.apache.org/licenses/" title="License">License</a></li> + <li><a href="http://www.apache.org/foundation/sponsorship.html" title="Sponsorship">Sponsorship</a></li> + <li><a href="http://www.apache.org/foundation/thanks.html" title="Thanks">Thanks</a></li> + <li><a href="http://www.apache.org/security/ " title="Security">Security</a></li> + </ul> + </div> <!-- lucy-top_nav_bar --> + <p><a href="http://www.apache.org/">Apache</a> » <a href="/">Lucy</a> » <a href="/docs/">Docs</a> » <a href="/docs/0.5.0/">0.5.0</a> » <a href="/docs/0.5.0/c/">C</a> » <a href="/docs/0.5.0/c/Lucy/">Lucy</a> » <a href="/docs/0.5.0/c/Lucy/Document/">Document</a></p> + <form name="lucy-top_search_box" id="lucy-top_search_box" action="http://www.google.com/search" method="get"> + <input value="*.apache.org" name="sitesearch" type="hidden"/> + <input type="text" name="q" id="query" style="width:85%"> + <input type="submit" id="submit" value="Search"> + </form> + </div> <!-- lucy-top_nav_box --> + + <div class="clear"></div> + + </div> <!-- lucy-top --> + + <div id="lucy-main_content" class="container_16 lucy-white_box_3d"> + + <div class="grid_4" id="lucy-left_nav_box"> + <h6>About</h6> + <ul> + <li><a href="/">Welcome</a></li> + <li><a href="/clownfish.html">Clownfish</a></li> + <li><a href="/faq.html">FAQ</a></li> + <li><a href="/people.html">People</a></li> + </ul> + <h6>Resources</h6> + <ul> + <li><a href="/download.html">Download</a></li> + <li><a href="/mailing_lists.html">Mailing Lists</a></li> + <li><a href="/docs/">Documentation</a></li> + <li><a href="http://wiki.apache.org/lucy/">Wiki</a></li> + <li><a href="https://issues.apache.org/jira/browse/LUCY">Issue Tracker</a></li> + <li><a href="/version_control.html">Version Control</a></li> + </ul> + <h6>Related Projects</h6> + <ul> + <li><a href="http://lucene.apache.org/core/">Lucene</a></li> + <li><a href="http://dezi.org/">Dezi</a></li> + <li><a href="http://lucene.apache.org/solr/">Solr</a></li> + <li><a href="http://lucenenet.apache.org/">Lucene.NET</a></li> + <li><a href="http://lucene.apache.org/pylucene/">PyLucene</a></li> + </ul> + </div> <!-- lucy-left_nav_box --> + + <div id="lucy-main_content_box" class="grid_9"> + <div class="c-api"> +<h2>Lucy::Document::HitDoc</h2> +<table> +<tr> +<td class="label">parcel</td> +<td><a href="../../lucy.html">Lucy</a></td> +</tr> +<tr> +<td class="label">class variable</td> +<td><code><span class="prefix">LUCY_</span>HITDOC</code></td> +</tr> +<tr> +<td class="label">struct symbol</td> +<td><code><span class="prefix">lucy_</span>HitDoc</code></td> +</tr> +<tr> +<td class="label">class nickname</td> +<td><code><span class="prefix">lucy_</span>HitDoc</code></td> +</tr> +<tr> +<td class="label">header file</td> +<td><code>Lucy/Document/HitDoc.h</code></td> +</tr> +</table> +<h3>Name</h3> +<p>Lucy::Document::HitDoc â A document read from an index.</p> +<h3>Description</h3> +<p>HitDoc is the search-time relative of the index-time class Doc; it is +augmented by a numeric score attribute that Doc doesnât have.</p> +<h3>Methods</h3> +<dl> +<dt id="func_Set_Score">Set_Score</dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>HitDoc_Set_Score</strong>( + <span class="prefix">lucy_</span>HitDoc *<strong>self</strong>, + float <strong>score</strong> +); +</code></pre> +<p>Set score attribute.</p> +</dd> +<dt id="func_Get_Score">Get_Score</dt> +<dd> +<pre><code>float +<span class="prefix">lucy_</span><strong>HitDoc_Get_Score</strong>( + <span class="prefix">lucy_</span>HitDoc *<strong>self</strong> +); +</code></pre> +<p>Get score attribute.</p> +</dd> +<dt id="func_Equals">Equals</dt> +<dd> +<pre><code>bool +<span class="prefix">lucy_</span><strong>HitDoc_Equals</strong>( + <span class="prefix">lucy_</span>HitDoc *<strong>self</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/Obj.html">Obj</a> *<strong>other</strong> +); +</code></pre> +<p>Indicate whether two objects are the same. By default, compares the +memory address.</p> +<dl> +<dt>other</dt> +<dd><p>Another Obj.</p> +</dd> +</dl> +</dd> +</dl> +<h4>Methods inherited from Lucy::Document::Doc</h4> +<dl> +<dt id="func_Set_Doc_ID">Set_Doc_ID</dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>HitDoc_Set_Doc_ID</strong>( + <span class="prefix">lucy_</span>HitDoc *<strong>self</strong>, + int32_t <strong>doc_id</strong> +); +</code></pre> +<p>Set internal Lucy document id.</p> +</dd> +<dt id="func_Get_Doc_ID">Get_Doc_ID</dt> +<dd> +<pre><code>int32_t +<span class="prefix">lucy_</span><strong>HitDoc_Get_Doc_ID</strong>( + <span class="prefix">lucy_</span>HitDoc *<strong>self</strong> +); +</code></pre> +<p>Retrieve internal Lucy document id.</p> +</dd> +<dt id="func_Store">Store</dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>HitDoc_Store</strong>( + <span class="prefix">lucy_</span>HitDoc *<strong>self</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a> *<strong>field</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/Obj.html">Obj</a> *<strong>value</strong> +); +</code></pre> +<p>Store a field value in the Doc.</p> +<dl> +<dt>field</dt> +<dd><p>The field name</p> +</dd> +<dt>value</dt> +<dd><p>The value</p> +</dd> +</dl> +</dd> +<dt id="func_Get_Fields">Get_Fields</dt> +<dd> +<pre><code>void* +<span class="prefix">lucy_</span><strong>HitDoc_Get_Fields</strong>( + <span class="prefix">lucy_</span>HitDoc *<strong>self</strong> +); +</code></pre> +<p>Return the Docâs backing fields hash.</p> +</dd> +<dt id="func_Get_Size">Get_Size</dt> +<dd> +<pre><code>uint32_t +<span class="prefix">lucy_</span><strong>HitDoc_Get_Size</strong>( + <span class="prefix">lucy_</span>HitDoc *<strong>self</strong> +); +</code></pre> +<p>Return the number of fields in the Doc.</p> +</dd> +<dt id="func_Extract">Extract</dt> +<dd> +<pre><code><span class="prefix">cfish_</span><a href="../../Clownfish/Obj.html">Obj</a>* <span class="comment">// incremented</span> +<span class="prefix">lucy_</span><strong>HitDoc_Extract</strong>( + <span class="prefix">lucy_</span>HitDoc *<strong>self</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a> *<strong>field</strong> +); +</code></pre> +<p>Retrieve the fieldâs value, or NULL if the field is not present.</p> +</dd> +<dt id="func_Field_Names">Field_Names</dt> +<dd> +<pre><code><span class="prefix">cfish_</span><a href="../../Clownfish/Vector.html">Vector</a>* <span class="comment">// incremented</span> +<span class="prefix">lucy_</span><strong>HitDoc_Field_Names</strong>( + <span class="prefix">lucy_</span>HitDoc *<strong>self</strong> +); +</code></pre> +<p>Return a list of names of all fields present.</p> +</dd> +</dl> +<h3>Inheritance</h3> +<p>Lucy::Document::HitDoc is a <a href="../../Lucy/Document/Doc.html">Lucy::Document::Doc</a> is a <a href="../../Clownfish/Obj.html">Clownfish::Obj</a>.</p> +</div> + + </div> <!-- lucy-main_content_box --> + <div class="clear"></div> + + </div> <!-- lucy-main_content --> + + <div id="lucy-copyright" class="container_16"> + <p>Copyright © 2010-2015 The Apache Software Foundation, Licensed under the + <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>. + <br/> + Apache Lucy, Lucy, Apache, the Apache feather logo, and the Apache Lucy project logo are trademarks of The + Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their + respective owners. + </p> + </div> <!-- lucy-copyright --> + + </div> <!-- lucy-rigid_wrapper --> + + </body> +</html> Added: websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Highlight/Highlighter.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Highlight/Highlighter.html (added) +++ websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Highlight/Highlighter.html Wed Sep 28 12:07:48 2016 @@ -0,0 +1,311 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html lang="en"> + <head> + <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> + <title>Lucy::Highlight::Highlighter â C API Documentation</title> + <link rel="stylesheet" type="text/css" media="screen" href="/css/lucy.css"> + </head> + + <body> + + <div id="lucy-rigid_wrapper"> + + <div id="lucy-top" class="container_16 lucy-white_box_3d"> + + <div id="lucy-logo_box" class="grid_8"> + <a href="/"><img src="/images/lucy_logo_150x100.png" alt="Apache Lucyâ¢"></a> + </div> <!-- lucy-logo_box --> + + <div #id="lucy-top_nav_box" class="grid_8"> + <div id="lucy-top_nav_bar" class="container_8"> + <ul> + <li><a href="http://www.apache.org/" title="Apache Software Foundation">Apache Software Foundation</a></li> + <li><a href="http://www.apache.org/licenses/" title="License">License</a></li> + <li><a href="http://www.apache.org/foundation/sponsorship.html" title="Sponsorship">Sponsorship</a></li> + <li><a href="http://www.apache.org/foundation/thanks.html" title="Thanks">Thanks</a></li> + <li><a href="http://www.apache.org/security/ " title="Security">Security</a></li> + </ul> + </div> <!-- lucy-top_nav_bar --> + <p><a href="http://www.apache.org/">Apache</a> » <a href="/">Lucy</a> » <a href="/docs/">Docs</a> » <a href="/docs/0.5.0/">0.5.0</a> » <a href="/docs/0.5.0/c/">C</a> » <a href="/docs/0.5.0/c/Lucy/">Lucy</a> » <a href="/docs/0.5.0/c/Lucy/Highlight/">Highlight</a></p> + <form name="lucy-top_search_box" id="lucy-top_search_box" action="http://www.google.com/search" method="get"> + <input value="*.apache.org" name="sitesearch" type="hidden"/> + <input type="text" name="q" id="query" style="width:85%"> + <input type="submit" id="submit" value="Search"> + </form> + </div> <!-- lucy-top_nav_box --> + + <div class="clear"></div> + + </div> <!-- lucy-top --> + + <div id="lucy-main_content" class="container_16 lucy-white_box_3d"> + + <div class="grid_4" id="lucy-left_nav_box"> + <h6>About</h6> + <ul> + <li><a href="/">Welcome</a></li> + <li><a href="/clownfish.html">Clownfish</a></li> + <li><a href="/faq.html">FAQ</a></li> + <li><a href="/people.html">People</a></li> + </ul> + <h6>Resources</h6> + <ul> + <li><a href="/download.html">Download</a></li> + <li><a href="/mailing_lists.html">Mailing Lists</a></li> + <li><a href="/docs/">Documentation</a></li> + <li><a href="http://wiki.apache.org/lucy/">Wiki</a></li> + <li><a href="https://issues.apache.org/jira/browse/LUCY">Issue Tracker</a></li> + <li><a href="/version_control.html">Version Control</a></li> + </ul> + <h6>Related Projects</h6> + <ul> + <li><a href="http://lucene.apache.org/core/">Lucene</a></li> + <li><a href="http://dezi.org/">Dezi</a></li> + <li><a href="http://lucene.apache.org/solr/">Solr</a></li> + <li><a href="http://lucenenet.apache.org/">Lucene.NET</a></li> + <li><a href="http://lucene.apache.org/pylucene/">PyLucene</a></li> + </ul> + </div> <!-- lucy-left_nav_box --> + + <div id="lucy-main_content_box" class="grid_9"> + <div class="c-api"> +<h2>Lucy::Highlight::Highlighter</h2> +<table> +<tr> +<td class="label">parcel</td> +<td><a href="../../lucy.html">Lucy</a></td> +</tr> +<tr> +<td class="label">class variable</td> +<td><code><span class="prefix">LUCY_</span>HIGHLIGHTER</code></td> +</tr> +<tr> +<td class="label">struct symbol</td> +<td><code><span class="prefix">lucy_</span>Highlighter</code></td> +</tr> +<tr> +<td class="label">class nickname</td> +<td><code><span class="prefix">lucy_</span>Highlighter</code></td> +</tr> +<tr> +<td class="label">header file</td> +<td><code>Lucy/Highlight/Highlighter.h</code></td> +</tr> +</table> +<h3>Name</h3> +<p>Lucy::Highlight::Highlighter â Create and highlight excerpts.</p> +<h3>Description</h3> +<p>The Highlighter can be used to select relevant snippets from a document, +and to surround search terms with highlighting tags. It handles both stems +and phrases correctly and efficiently, using special-purpose data generated +at index-time.</p> +<h3>Functions</h3> +<dl> +<dt id="func_new">new</dt> +<dd> +<pre><code><span class="prefix">lucy_</span>Highlighter* <span class="comment">// incremented</span> +<span class="prefix">lucy_</span><strong>Highlighter_new</strong>( + <span class="prefix">lucy_</span><a href="../../Lucy/Search/Searcher.html">Searcher</a> *<strong>searcher</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/Obj.html">Obj</a> *<strong>query</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a> *<strong>field</strong>, + uint32_t <strong>excerpt_length</strong> +); +</code></pre> +<p>Create a new Highlighter.</p> +<dl> +<dt>searcher</dt> +<dd><p>An object which inherits from +<a href="../../Lucy/Search/Searcher.html">Searcher</a>, such as an +<a href="../../Lucy/Search/IndexSearcher.html">IndexSearcher</a>.</p> +</dd> +<dt>query</dt> +<dd><p>Query object or a query string.</p> +</dd> +<dt>field</dt> +<dd><p>The name of the field from which to draw the excerpt. The +field must marked as be <code>highlightable</code> (see +<a href="../../Lucy/Plan/FieldType.html">FieldType</a>).</p> +</dd> +<dt>excerpt_length</dt> +<dd><p>Maximum length of the excerpt, in characters.</p> +</dd> +</dl> +</dd> +<dt id="func_init">init</dt> +<dd> +<pre><code><span class="prefix">lucy_</span>Highlighter* +<span class="prefix">lucy_</span><strong>Highlighter_init</strong>( + <span class="prefix">lucy_</span>Highlighter *<strong>self</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Search/Searcher.html">Searcher</a> *<strong>searcher</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/Obj.html">Obj</a> *<strong>query</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a> *<strong>field</strong>, + uint32_t <strong>excerpt_length</strong> +); +</code></pre> +<p>Initialize a Highlighter.</p> +<dl> +<dt>searcher</dt> +<dd><p>An object which inherits from +<a href="../../Lucy/Search/Searcher.html">Searcher</a>, such as an +<a href="../../Lucy/Search/IndexSearcher.html">IndexSearcher</a>.</p> +</dd> +<dt>query</dt> +<dd><p>Query object or a query string.</p> +</dd> +<dt>field</dt> +<dd><p>The name of the field from which to draw the excerpt. The +field must marked as be <code>highlightable</code> (see +<a href="../../Lucy/Plan/FieldType.html">FieldType</a>).</p> +</dd> +<dt>excerpt_length</dt> +<dd><p>Maximum length of the excerpt, in characters.</p> +</dd> +</dl> +</dd> +</dl> +<h3>Methods</h3> +<dl> +<dt id="func_Create_Excerpt">Create_Excerpt</dt> +<dd> +<pre><code><span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a>* <span class="comment">// incremented</span> +<span class="prefix">lucy_</span><strong>Highlighter_Create_Excerpt</strong>( + <span class="prefix">lucy_</span>Highlighter *<strong>self</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Document/HitDoc.html">HitDoc</a> *<strong>hit_doc</strong> +); +</code></pre> +<p>Take a HitDoc object and return a highlighted excerpt as a string if +the HitDoc has a value for the specified <code>field</code>.</p> +</dd> +<dt id="func_Encode">Encode</dt> +<dd> +<pre><code><span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a>* <span class="comment">// incremented</span> +<span class="prefix">lucy_</span><strong>Highlighter_Encode</strong>( + <span class="prefix">lucy_</span>Highlighter *<strong>self</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a> *<strong>text</strong> +); +</code></pre> +<p>Encode text with HTML entities. This method is called internally by +<a href="../../Lucy/Highlight/Highlighter.html#func_Create_Excerpt">Create_Excerpt()</a> for each text fragment when assembling an excerpt. A +subclass can override this if the text should be encoded differently or +not at all.</p> +</dd> +<dt id="func_Highlight">Highlight</dt> +<dd> +<pre><code><span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a>* <span class="comment">// incremented</span> +<span class="prefix">lucy_</span><strong>Highlighter_Highlight</strong>( + <span class="prefix">lucy_</span>Highlighter *<strong>self</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a> *<strong>text</strong> +); +</code></pre> +<p>Highlight a small section of text. By default, prepends pre-tag and +appends post-tag. This method is called internally by <a href="../../Lucy/Highlight/Highlighter.html#func_Create_Excerpt">Create_Excerpt()</a> +when assembling an excerpt.</p> +</dd> +<dt id="func_Set_Pre_Tag">Set_Pre_Tag</dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>Highlighter_Set_Pre_Tag</strong>( + <span class="prefix">lucy_</span>Highlighter *<strong>self</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a> *<strong>pre_tag</strong> +); +</code></pre> +<p>Setter. The default value is â<strong>â.</p> +</dd> +<dt id="func_Set_Post_Tag">Set_Post_Tag</dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>Highlighter_Set_Post_Tag</strong>( + <span class="prefix">lucy_</span>Highlighter *<strong>self</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a> *<strong>post_tag</strong> +); +</code></pre> +<p>Setter. The default value is â</strong>â.</p> +</dd> +<dt id="func_Get_Pre_Tag">Get_Pre_Tag</dt> +<dd> +<pre><code><span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a>* +<span class="prefix">lucy_</span><strong>Highlighter_Get_Pre_Tag</strong>( + <span class="prefix">lucy_</span>Highlighter *<strong>self</strong> +); +</code></pre> +<p>Accessor.</p> +</dd> +<dt id="func_Get_Post_Tag">Get_Post_Tag</dt> +<dd> +<pre><code><span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a>* +<span class="prefix">lucy_</span><strong>Highlighter_Get_Post_Tag</strong>( + <span class="prefix">lucy_</span>Highlighter *<strong>self</strong> +); +</code></pre> +<p>Accessor.</p> +</dd> +<dt id="func_Get_Field">Get_Field</dt> +<dd> +<pre><code><span class="prefix">cfish_</span><a href="../../Clownfish/String.html">String</a>* +<span class="prefix">lucy_</span><strong>Highlighter_Get_Field</strong>( + <span class="prefix">lucy_</span>Highlighter *<strong>self</strong> +); +</code></pre> +<p>Accessor.</p> +</dd> +<dt id="func_Get_Excerpt_Length">Get_Excerpt_Length</dt> +<dd> +<pre><code>uint32_t +<span class="prefix">lucy_</span><strong>Highlighter_Get_Excerpt_Length</strong>( + <span class="prefix">lucy_</span>Highlighter *<strong>self</strong> +); +</code></pre> +<p>Accessor.</p> +</dd> +<dt id="func_Get_Searcher">Get_Searcher</dt> +<dd> +<pre><code><span class="prefix">lucy_</span><a href="../../Lucy/Search/Searcher.html">Searcher</a>* +<span class="prefix">lucy_</span><strong>Highlighter_Get_Searcher</strong>( + <span class="prefix">lucy_</span>Highlighter *<strong>self</strong> +); +</code></pre> +<p>Accessor.</p> +</dd> +<dt id="func_Get_Query">Get_Query</dt> +<dd> +<pre><code><span class="prefix">lucy_</span><a href="../../Lucy/Search/Query.html">Query</a>* +<span class="prefix">lucy_</span><strong>Highlighter_Get_Query</strong>( + <span class="prefix">lucy_</span>Highlighter *<strong>self</strong> +); +</code></pre> +<p>Accessor.</p> +</dd> +<dt id="func_Get_Compiler">Get_Compiler</dt> +<dd> +<pre><code><span class="prefix">lucy_</span><a href="../../Lucy/Search/Compiler.html">Compiler</a>* +<span class="prefix">lucy_</span><strong>Highlighter_Get_Compiler</strong>( + <span class="prefix">lucy_</span>Highlighter *<strong>self</strong> +); +</code></pre> +<p>Accessor for the Lucy::Search::Compiler object derived from +<code>query</code> and <code>searcher</code>.</p> +</dd> +</dl> +<h3>Inheritance</h3> +<p>Lucy::Highlight::Highlighter is a <a href="../../Clownfish/Obj.html">Clownfish::Obj</a>.</p> +</div> + + </div> <!-- lucy-main_content_box --> + <div class="clear"></div> + + </div> <!-- lucy-main_content --> + + <div id="lucy-copyright" class="container_16"> + <p>Copyright © 2010-2015 The Apache Software Foundation, Licensed under the + <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>. + <br/> + Apache Lucy, Lucy, Apache, the Apache feather logo, and the Apache Lucy project logo are trademarks of The + Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their + respective owners. + </p> + </div> <!-- lucy-copyright --> + + </div> <!-- lucy-rigid_wrapper --> + + </body> +</html> Added: websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Index/BackgroundMerger.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Index/BackgroundMerger.html (added) +++ websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Index/BackgroundMerger.html Wed Sep 28 12:07:48 2016 @@ -0,0 +1,205 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html lang="en"> + <head> + <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> + <title>Lucy::Index::BackgroundMerger â C API Documentation</title> + <link rel="stylesheet" type="text/css" media="screen" href="/css/lucy.css"> + </head> + + <body> + + <div id="lucy-rigid_wrapper"> + + <div id="lucy-top" class="container_16 lucy-white_box_3d"> + + <div id="lucy-logo_box" class="grid_8"> + <a href="/"><img src="/images/lucy_logo_150x100.png" alt="Apache Lucyâ¢"></a> + </div> <!-- lucy-logo_box --> + + <div #id="lucy-top_nav_box" class="grid_8"> + <div id="lucy-top_nav_bar" class="container_8"> + <ul> + <li><a href="http://www.apache.org/" title="Apache Software Foundation">Apache Software Foundation</a></li> + <li><a href="http://www.apache.org/licenses/" title="License">License</a></li> + <li><a href="http://www.apache.org/foundation/sponsorship.html" title="Sponsorship">Sponsorship</a></li> + <li><a href="http://www.apache.org/foundation/thanks.html" title="Thanks">Thanks</a></li> + <li><a href="http://www.apache.org/security/ " title="Security">Security</a></li> + </ul> + </div> <!-- lucy-top_nav_bar --> + <p><a href="http://www.apache.org/">Apache</a> » <a href="/">Lucy</a> » <a href="/docs/">Docs</a> » <a href="/docs/0.5.0/">0.5.0</a> » <a href="/docs/0.5.0/c/">C</a> » <a href="/docs/0.5.0/c/Lucy/">Lucy</a> » <a href="/docs/0.5.0/c/Lucy/Index/">Index</a></p> + <form name="lucy-top_search_box" id="lucy-top_search_box" action="http://www.google.com/search" method="get"> + <input value="*.apache.org" name="sitesearch" type="hidden"/> + <input type="text" name="q" id="query" style="width:85%"> + <input type="submit" id="submit" value="Search"> + </form> + </div> <!-- lucy-top_nav_box --> + + <div class="clear"></div> + + </div> <!-- lucy-top --> + + <div id="lucy-main_content" class="container_16 lucy-white_box_3d"> + + <div class="grid_4" id="lucy-left_nav_box"> + <h6>About</h6> + <ul> + <li><a href="/">Welcome</a></li> + <li><a href="/clownfish.html">Clownfish</a></li> + <li><a href="/faq.html">FAQ</a></li> + <li><a href="/people.html">People</a></li> + </ul> + <h6>Resources</h6> + <ul> + <li><a href="/download.html">Download</a></li> + <li><a href="/mailing_lists.html">Mailing Lists</a></li> + <li><a href="/docs/">Documentation</a></li> + <li><a href="http://wiki.apache.org/lucy/">Wiki</a></li> + <li><a href="https://issues.apache.org/jira/browse/LUCY">Issue Tracker</a></li> + <li><a href="/version_control.html">Version Control</a></li> + </ul> + <h6>Related Projects</h6> + <ul> + <li><a href="http://lucene.apache.org/core/">Lucene</a></li> + <li><a href="http://dezi.org/">Dezi</a></li> + <li><a href="http://lucene.apache.org/solr/">Solr</a></li> + <li><a href="http://lucenenet.apache.org/">Lucene.NET</a></li> + <li><a href="http://lucene.apache.org/pylucene/">PyLucene</a></li> + </ul> + </div> <!-- lucy-left_nav_box --> + + <div id="lucy-main_content_box" class="grid_9"> + <div class="c-api"> +<h2>Lucy::Index::BackgroundMerger</h2> +<table> +<tr> +<td class="label">parcel</td> +<td><a href="../../lucy.html">Lucy</a></td> +</tr> +<tr> +<td class="label">class variable</td> +<td><code><span class="prefix">LUCY_</span>BACKGROUNDMERGER</code></td> +</tr> +<tr> +<td class="label">struct symbol</td> +<td><code><span class="prefix">lucy_</span>BackgroundMerger</code></td> +</tr> +<tr> +<td class="label">class nickname</td> +<td><code><span class="prefix">lucy_</span>BGMerger</code></td> +</tr> +<tr> +<td class="label">header file</td> +<td><code>Lucy/Index/BackgroundMerger.h</code></td> +</tr> +</table> +<h3>Name</h3> +<p>Lucy::Index::BackgroundMerger â Consolidate index segments in the background.</p> +<h3>Description</h3> +<p>Adding documents to an index is usually fast, but every once in a while the +index must be compacted and an update takes substantially longer to +complete. See <a href="../../Lucy/Docs/Cookbook/FastUpdates.html">FastUpdates</a> for how to use this class to control +worst-case index update performance.</p> +<p>As with <a href="../../Lucy/Index/Indexer.html">Indexer</a>, see <a href="../../Lucy/Docs/FileLocking.html">FileLocking</a> if your index is on a +shared volume.</p> +<h3>Functions</h3> +<dl> +<dt id="func_new">new</dt> +<dd> +<pre><code><span class="prefix">lucy_</span>BackgroundMerger* <span class="comment">// incremented</span> +<span class="prefix">lucy_</span><strong>BGMerger_new</strong>( + <span class="prefix">cfish_</span><a href="../../Clownfish/Obj.html">Obj</a> *<strong>index</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Index/IndexManager.html">IndexManager</a> *<strong>manager</strong> +); +</code></pre> +<p>Open a new BackgroundMerger.</p> +<dl> +<dt>index</dt> +<dd><p>Either a string filepath or a Folder.</p> +</dd> +<dt>manager</dt> +<dd><p>An IndexManager. If not supplied, an IndexManager with +a 10-second write lock timeout will be created.</p> +</dd> +</dl> +</dd> +<dt id="func_init">init</dt> +<dd> +<pre><code><span class="prefix">lucy_</span>BackgroundMerger* +<span class="prefix">lucy_</span><strong>BGMerger_init</strong>( + <span class="prefix">lucy_</span>BackgroundMerger *<strong>self</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/Obj.html">Obj</a> *<strong>index</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Index/IndexManager.html">IndexManager</a> *<strong>manager</strong> +); +</code></pre> +<p>Initialize a BackgroundMerger.</p> +<dl> +<dt>index</dt> +<dd><p>Either a string filepath or a Folder.</p> +</dd> +<dt>manager</dt> +<dd><p>An IndexManager. If not supplied, an IndexManager with +a 10-second write lock timeout will be created.</p> +</dd> +</dl> +</dd> +</dl> +<h3>Methods</h3> +<dl> +<dt id="func_Optimize">Optimize</dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>BGMerger_Optimize</strong>( + <span class="prefix">lucy_</span>BackgroundMerger *<strong>self</strong> +); +</code></pre> +<p>Optimize the index for search-time performance. This may take a +while, as it can involve rewriting large amounts of data.</p> +</dd> +<dt id="func_Commit">Commit</dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>BGMerger_Commit</strong>( + <span class="prefix">lucy_</span>BackgroundMerger *<strong>self</strong> +); +</code></pre> +<p>Commit any changes made to the index. Until this is called, none of +the changes made during an indexing session are permanent.</p> +<p>Calls <a href="../../Lucy/Index/BackgroundMerger.html#func_Prepare_Commit">Prepare_Commit()</a> implicitly if it has not already been called.</p> +</dd> +<dt id="func_Prepare_Commit">Prepare_Commit</dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>BGMerger_Prepare_Commit</strong>( + <span class="prefix">lucy_</span>BackgroundMerger *<strong>self</strong> +); +</code></pre> +<p>Perform the expensive setup for <a href="../../Lucy/Index/BackgroundMerger.html#func_Commit">Commit()</a> in advance, so that <a href="../../Lucy/Index/BackgroundMerger.html#func_Commit">Commit()</a> +completes quickly.</p> +<p>Towards the end of <a href="../../Lucy/Index/BackgroundMerger.html#func_Prepare_Commit">Prepare_Commit()</a>, the BackgroundMerger attempts to +re-acquire the write lock, which is then held until <a href="../../Lucy/Index/BackgroundMerger.html#func_Commit">Commit()</a> finishes +and releases it.</p> +</dd> +</dl> +<h3>Inheritance</h3> +<p>Lucy::Index::BackgroundMerger is a <a href="../../Clownfish/Obj.html">Clownfish::Obj</a>.</p> +</div> + + </div> <!-- lucy-main_content_box --> + <div class="clear"></div> + + </div> <!-- lucy-main_content --> + + <div id="lucy-copyright" class="container_16"> + <p>Copyright © 2010-2015 The Apache Software Foundation, Licensed under the + <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>. + <br/> + Apache Lucy, Lucy, Apache, the Apache feather logo, and the Apache Lucy project logo are trademarks of The + Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their + respective owners. + </p> + </div> <!-- lucy-copyright --> + + </div> <!-- lucy-rigid_wrapper --> + + </body> +</html> Added: websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Index/DataReader.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Index/DataReader.html (added) +++ websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Index/DataReader.html Wed Sep 28 12:07:48 2016 @@ -0,0 +1,237 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html lang="en"> + <head> + <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> + <title>Lucy::Index::DataReader â C API Documentation</title> + <link rel="stylesheet" type="text/css" media="screen" href="/css/lucy.css"> + </head> + + <body> + + <div id="lucy-rigid_wrapper"> + + <div id="lucy-top" class="container_16 lucy-white_box_3d"> + + <div id="lucy-logo_box" class="grid_8"> + <a href="/"><img src="/images/lucy_logo_150x100.png" alt="Apache Lucyâ¢"></a> + </div> <!-- lucy-logo_box --> + + <div #id="lucy-top_nav_box" class="grid_8"> + <div id="lucy-top_nav_bar" class="container_8"> + <ul> + <li><a href="http://www.apache.org/" title="Apache Software Foundation">Apache Software Foundation</a></li> + <li><a href="http://www.apache.org/licenses/" title="License">License</a></li> + <li><a href="http://www.apache.org/foundation/sponsorship.html" title="Sponsorship">Sponsorship</a></li> + <li><a href="http://www.apache.org/foundation/thanks.html" title="Thanks">Thanks</a></li> + <li><a href="http://www.apache.org/security/ " title="Security">Security</a></li> + </ul> + </div> <!-- lucy-top_nav_bar --> + <p><a href="http://www.apache.org/">Apache</a> » <a href="/">Lucy</a> » <a href="/docs/">Docs</a> » <a href="/docs/0.5.0/">0.5.0</a> » <a href="/docs/0.5.0/c/">C</a> » <a href="/docs/0.5.0/c/Lucy/">Lucy</a> » <a href="/docs/0.5.0/c/Lucy/Index/">Index</a></p> + <form name="lucy-top_search_box" id="lucy-top_search_box" action="http://www.google.com/search" method="get"> + <input value="*.apache.org" name="sitesearch" type="hidden"/> + <input type="text" name="q" id="query" style="width:85%"> + <input type="submit" id="submit" value="Search"> + </form> + </div> <!-- lucy-top_nav_box --> + + <div class="clear"></div> + + </div> <!-- lucy-top --> + + <div id="lucy-main_content" class="container_16 lucy-white_box_3d"> + + <div class="grid_4" id="lucy-left_nav_box"> + <h6>About</h6> + <ul> + <li><a href="/">Welcome</a></li> + <li><a href="/clownfish.html">Clownfish</a></li> + <li><a href="/faq.html">FAQ</a></li> + <li><a href="/people.html">People</a></li> + </ul> + <h6>Resources</h6> + <ul> + <li><a href="/download.html">Download</a></li> + <li><a href="/mailing_lists.html">Mailing Lists</a></li> + <li><a href="/docs/">Documentation</a></li> + <li><a href="http://wiki.apache.org/lucy/">Wiki</a></li> + <li><a href="https://issues.apache.org/jira/browse/LUCY">Issue Tracker</a></li> + <li><a href="/version_control.html">Version Control</a></li> + </ul> + <h6>Related Projects</h6> + <ul> + <li><a href="http://lucene.apache.org/core/">Lucene</a></li> + <li><a href="http://dezi.org/">Dezi</a></li> + <li><a href="http://lucene.apache.org/solr/">Solr</a></li> + <li><a href="http://lucenenet.apache.org/">Lucene.NET</a></li> + <li><a href="http://lucene.apache.org/pylucene/">PyLucene</a></li> + </ul> + </div> <!-- lucy-left_nav_box --> + + <div id="lucy-main_content_box" class="grid_9"> + <div class="c-api"> +<h2>Lucy::Index::DataReader</h2> +<table> +<tr> +<td class="label">parcel</td> +<td><a href="../../lucy.html">Lucy</a></td> +</tr> +<tr> +<td class="label">class variable</td> +<td><code><span class="prefix">LUCY_</span>DATAREADER</code></td> +</tr> +<tr> +<td class="label">struct symbol</td> +<td><code><span class="prefix">lucy_</span>DataReader</code></td> +</tr> +<tr> +<td class="label">class nickname</td> +<td><code><span class="prefix">lucy_</span>DataReader</code></td> +</tr> +<tr> +<td class="label">header file</td> +<td><code>Lucy/Index/DataReader.h</code></td> +</tr> +</table> +<h3>Name</h3> +<p>Lucy::Index::DataReader â Abstract base class for reading index data.</p> +<h3>Description</h3> +<p>DataReader is the companion class to +<a href="../../Lucy/Index/DataWriter.html">DataWriter</a>. Every index component will +implement one of each.</p> +<h3>Functions</h3> +<dl> +<dt id="func_init">init</dt> +<dd> +<pre><code><span class="prefix">lucy_</span>DataReader* +<span class="prefix">lucy_</span><strong>DataReader_init</strong>( + <span class="prefix">lucy_</span>DataReader *<strong>self</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Plan/Schema.html">Schema</a> *<strong>schema</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Store/Folder.html">Folder</a> *<strong>folder</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Index/Snapshot.html">Snapshot</a> *<strong>snapshot</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/Vector.html">Vector</a> *<strong>segments</strong>, + int32_t <strong>seg_tick</strong> +); +</code></pre> +<p>Abstract initializer.</p> +<dl> +<dt>schema</dt> +<dd><p>A Schema.</p> +</dd> +<dt>folder</dt> +<dd><p>A Folder.</p> +</dd> +<dt>snapshot</dt> +<dd><p>A Snapshot.</p> +</dd> +<dt>segments</dt> +<dd><p>An array of Segments.</p> +</dd> +<dt>seg_tick</dt> +<dd><p>The array index of the Segment object within the +<code>segments</code> array that this particular DataReader is assigned +to, if any. A value of -1 indicates that no Segment should be +assigned.</p> +</dd> +</dl> +</dd> +</dl> +<h3>Methods</h3> +<dl> +<dt id="func_Aggregator">Aggregator <span class="comment">(abstract)</span></dt> +<dd> +<pre><code><span class="prefix">lucy_</span>DataReader* <span class="comment">// incremented</span> +<span class="prefix">lucy_</span><strong>DataReader_Aggregator</strong>( + <span class="prefix">lucy_</span>DataReader *<strong>self</strong>, + <span class="prefix">cfish_</span><a href="../../Clownfish/Vector.html">Vector</a> *<strong>readers</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Object/I32Array.html">I32Array</a> *<strong>offsets</strong> +); +</code></pre> +<p>Create a reader which aggregates the output of several lower level +readers. Return NULL if such a reader is not valid.</p> +<dl> +<dt>readers</dt> +<dd><p>An array of DataReaders.</p> +</dd> +<dt>offsets</dt> +<dd><p>Doc id start offsets for each reader.</p> +</dd> +</dl> +</dd> +<dt id="func_Get_Schema">Get_Schema</dt> +<dd> +<pre><code><span class="prefix">lucy_</span><a href="../../Lucy/Plan/Schema.html">Schema</a>* +<span class="prefix">lucy_</span><strong>DataReader_Get_Schema</strong>( + <span class="prefix">lucy_</span>DataReader *<strong>self</strong> +); +</code></pre> +<p>Accessor for âschemaâ member var.</p> +</dd> +<dt id="func_Get_Folder">Get_Folder</dt> +<dd> +<pre><code><span class="prefix">lucy_</span><a href="../../Lucy/Store/Folder.html">Folder</a>* +<span class="prefix">lucy_</span><strong>DataReader_Get_Folder</strong>( + <span class="prefix">lucy_</span>DataReader *<strong>self</strong> +); +</code></pre> +<p>Accessor for âfolderâ member var.</p> +</dd> +<dt id="func_Get_Snapshot">Get_Snapshot</dt> +<dd> +<pre><code><span class="prefix">lucy_</span><a href="../../Lucy/Index/Snapshot.html">Snapshot</a>* +<span class="prefix">lucy_</span><strong>DataReader_Get_Snapshot</strong>( + <span class="prefix">lucy_</span>DataReader *<strong>self</strong> +); +</code></pre> +<p>Accessor for âsnapshotâ member var.</p> +</dd> +<dt id="func_Get_Segments">Get_Segments</dt> +<dd> +<pre><code><span class="prefix">cfish_</span><a href="../../Clownfish/Vector.html">Vector</a>* +<span class="prefix">lucy_</span><strong>DataReader_Get_Segments</strong>( + <span class="prefix">lucy_</span>DataReader *<strong>self</strong> +); +</code></pre> +<p>Accessor for âsegmentsâ member var.</p> +</dd> +<dt id="func_Get_Segment">Get_Segment</dt> +<dd> +<pre><code><span class="prefix">lucy_</span><a href="../../Lucy/Index/Segment.html">Segment</a>* +<span class="prefix">lucy_</span><strong>DataReader_Get_Segment</strong>( + <span class="prefix">lucy_</span>DataReader *<strong>self</strong> +); +</code></pre> +<p>Accessor for âsegmentâ member var.</p> +</dd> +<dt id="func_Get_Seg_Tick">Get_Seg_Tick</dt> +<dd> +<pre><code>int32_t +<span class="prefix">lucy_</span><strong>DataReader_Get_Seg_Tick</strong>( + <span class="prefix">lucy_</span>DataReader *<strong>self</strong> +); +</code></pre> +<p>Accessor for âseg_tickâ member var.</p> +</dd> +</dl> +<h3>Inheritance</h3> +<p>Lucy::Index::DataReader is a <a href="../../Clownfish/Obj.html">Clownfish::Obj</a>.</p> +</div> + + </div> <!-- lucy-main_content_box --> + <div class="clear"></div> + + </div> <!-- lucy-main_content --> + + <div id="lucy-copyright" class="container_16"> + <p>Copyright © 2010-2015 The Apache Software Foundation, Licensed under the + <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>. + <br/> + Apache Lucy, Lucy, Apache, the Apache feather logo, and the Apache Lucy project logo are trademarks of The + Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their + respective owners. + </p> + </div> <!-- lucy-copyright --> + + </div> <!-- lucy-rigid_wrapper --> + + </body> +</html> Added: websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Index/DataWriter.html ============================================================================== --- websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Index/DataWriter.html (added) +++ websites/staging/lucy/trunk/content/docs/0.5.0/c/Lucy/Index/DataWriter.html Wed Sep 28 12:07:48 2016 @@ -0,0 +1,301 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html lang="en"> + <head> + <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> + <title>Lucy::Index::DataWriter â C API Documentation</title> + <link rel="stylesheet" type="text/css" media="screen" href="/css/lucy.css"> + </head> + + <body> + + <div id="lucy-rigid_wrapper"> + + <div id="lucy-top" class="container_16 lucy-white_box_3d"> + + <div id="lucy-logo_box" class="grid_8"> + <a href="/"><img src="/images/lucy_logo_150x100.png" alt="Apache Lucyâ¢"></a> + </div> <!-- lucy-logo_box --> + + <div #id="lucy-top_nav_box" class="grid_8"> + <div id="lucy-top_nav_bar" class="container_8"> + <ul> + <li><a href="http://www.apache.org/" title="Apache Software Foundation">Apache Software Foundation</a></li> + <li><a href="http://www.apache.org/licenses/" title="License">License</a></li> + <li><a href="http://www.apache.org/foundation/sponsorship.html" title="Sponsorship">Sponsorship</a></li> + <li><a href="http://www.apache.org/foundation/thanks.html" title="Thanks">Thanks</a></li> + <li><a href="http://www.apache.org/security/ " title="Security">Security</a></li> + </ul> + </div> <!-- lucy-top_nav_bar --> + <p><a href="http://www.apache.org/">Apache</a> » <a href="/">Lucy</a> » <a href="/docs/">Docs</a> » <a href="/docs/0.5.0/">0.5.0</a> » <a href="/docs/0.5.0/c/">C</a> » <a href="/docs/0.5.0/c/Lucy/">Lucy</a> » <a href="/docs/0.5.0/c/Lucy/Index/">Index</a></p> + <form name="lucy-top_search_box" id="lucy-top_search_box" action="http://www.google.com/search" method="get"> + <input value="*.apache.org" name="sitesearch" type="hidden"/> + <input type="text" name="q" id="query" style="width:85%"> + <input type="submit" id="submit" value="Search"> + </form> + </div> <!-- lucy-top_nav_box --> + + <div class="clear"></div> + + </div> <!-- lucy-top --> + + <div id="lucy-main_content" class="container_16 lucy-white_box_3d"> + + <div class="grid_4" id="lucy-left_nav_box"> + <h6>About</h6> + <ul> + <li><a href="/">Welcome</a></li> + <li><a href="/clownfish.html">Clownfish</a></li> + <li><a href="/faq.html">FAQ</a></li> + <li><a href="/people.html">People</a></li> + </ul> + <h6>Resources</h6> + <ul> + <li><a href="/download.html">Download</a></li> + <li><a href="/mailing_lists.html">Mailing Lists</a></li> + <li><a href="/docs/">Documentation</a></li> + <li><a href="http://wiki.apache.org/lucy/">Wiki</a></li> + <li><a href="https://issues.apache.org/jira/browse/LUCY">Issue Tracker</a></li> + <li><a href="/version_control.html">Version Control</a></li> + </ul> + <h6>Related Projects</h6> + <ul> + <li><a href="http://lucene.apache.org/core/">Lucene</a></li> + <li><a href="http://dezi.org/">Dezi</a></li> + <li><a href="http://lucene.apache.org/solr/">Solr</a></li> + <li><a href="http://lucenenet.apache.org/">Lucene.NET</a></li> + <li><a href="http://lucene.apache.org/pylucene/">PyLucene</a></li> + </ul> + </div> <!-- lucy-left_nav_box --> + + <div id="lucy-main_content_box" class="grid_9"> + <div class="c-api"> +<h2>Lucy::Index::DataWriter</h2> +<table> +<tr> +<td class="label">parcel</td> +<td><a href="../../lucy.html">Lucy</a></td> +</tr> +<tr> +<td class="label">class variable</td> +<td><code><span class="prefix">LUCY_</span>DATAWRITER</code></td> +</tr> +<tr> +<td class="label">struct symbol</td> +<td><code><span class="prefix">lucy_</span>DataWriter</code></td> +</tr> +<tr> +<td class="label">class nickname</td> +<td><code><span class="prefix">lucy_</span>DataWriter</code></td> +</tr> +<tr> +<td class="label">header file</td> +<td><code>Lucy/Index/DataWriter.h</code></td> +</tr> +</table> +<h3>Name</h3> +<p>Lucy::Index::DataWriter â Write data to an index.</p> +<h3>Description</h3> +<p>DataWriter is an abstract base class for writing index data, generally in +segment-sized chunks. Each component of an index â e.g. stored fields, +lexicon, postings, deletions â is represented by a +DataWriter/<a href="../../Lucy/Index/DataReader.html">DataReader</a> pair.</p> +<p>Components may be specified per index by subclassing +<a href="../../Lucy/Plan/Architecture.html">Architecture</a>.</p> +<h3>Functions</h3> +<dl> +<dt id="func_init">init</dt> +<dd> +<pre><code><span class="prefix">lucy_</span>DataWriter* +<span class="prefix">lucy_</span><strong>DataWriter_init</strong>( + <span class="prefix">lucy_</span>DataWriter *<strong>self</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Plan/Schema.html">Schema</a> *<strong>schema</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Index/Snapshot.html">Snapshot</a> *<strong>snapshot</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Index/Segment.html">Segment</a> *<strong>segment</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Index/PolyReader.html">PolyReader</a> *<strong>polyreader</strong> +); +</code></pre> +<p>Abstract initializer.</p> +<dl> +<dt>snapshot</dt> +<dd><p>The Snapshot that will be committed at the end of the +indexing session.</p> +</dd> +<dt>segment</dt> +<dd><p>The Segment in progress.</p> +</dd> +<dt>polyreader</dt> +<dd><p>A PolyReader representing all existing data in the +index. (If the index is brand new, the PolyReader will have no +sub-readers).</p> +</dd> +</dl> +</dd> +</dl> +<h3>Methods</h3> +<dl> +<dt id="func_Add_Segment">Add_Segment <span class="comment">(abstract)</span></dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>DataWriter_Add_Segment</strong>( + <span class="prefix">lucy_</span>DataWriter *<strong>self</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Index/SegReader.html">SegReader</a> *<strong>reader</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Object/I32Array.html">I32Array</a> *<strong>doc_map</strong> +); +</code></pre> +<p>Add content from an existing segment into the one currently being +written.</p> +<dl> +<dt>reader</dt> +<dd><p>The SegReader containing content to add.</p> +</dd> +<dt>doc_map</dt> +<dd><p>An array of integers mapping old document ids to +new. Deleted documents are mapped to 0, indicating that they should be +skipped.</p> +</dd> +</dl> +</dd> +<dt id="func_Delete_Segment">Delete_Segment</dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>DataWriter_Delete_Segment</strong>( + <span class="prefix">lucy_</span>DataWriter *<strong>self</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Index/SegReader.html">SegReader</a> *<strong>reader</strong> +); +</code></pre> +<p>Remove a segmentâs data. The default implementation is a no-op, as +all files within the segment directory will be automatically deleted. +Subclasses which manage their own files outside of the segment system +should override this method and use it as a trigger for cleaning up +obsolete data.</p> +<dl> +<dt>reader</dt> +<dd><p>The SegReader containing content to merge, which must +represent a segment which is part of the the current snapshot.</p> +</dd> +</dl> +</dd> +<dt id="func_Merge_Segment">Merge_Segment</dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>DataWriter_Merge_Segment</strong>( + <span class="prefix">lucy_</span>DataWriter *<strong>self</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Index/SegReader.html">SegReader</a> *<strong>reader</strong>, + <span class="prefix">lucy_</span><a href="../../Lucy/Object/I32Array.html">I32Array</a> *<strong>doc_map</strong> +); +</code></pre> +<p>Move content from an existing segment into the one currently being +written.</p> +<p>The default implementation calls <a href="../../Lucy/Index/DataWriter.html#func_Add_Segment">Add_Segment()</a> then <a href="../../Lucy/Index/DataWriter.html#func_Delete_Segment">Delete_Segment()</a>.</p> +<dl> +<dt>reader</dt> +<dd><p>The SegReader containing content to merge, which must +represent a segment which is part of the the current snapshot.</p> +</dd> +<dt>doc_map</dt> +<dd><p>An array of integers mapping old document ids to +new. Deleted documents are mapped to 0, indicating that they should be +skipped.</p> +</dd> +</dl> +</dd> +<dt id="func_Finish">Finish <span class="comment">(abstract)</span></dt> +<dd> +<pre><code>void +<span class="prefix">lucy_</span><strong>DataWriter_Finish</strong>( + <span class="prefix">lucy_</span>DataWriter *<strong>self</strong> +); +</code></pre> +<p>Complete the segment: close all streams, store metadata, etc.</p> +</dd> +<dt id="func_Metadata">Metadata</dt> +<dd> +<pre><code><span class="prefix">cfish_</span><a href="../../Clownfish/Hash.html">Hash</a>* <span class="comment">// incremented</span> +<span class="prefix">lucy_</span><strong>DataWriter_Metadata</strong>( + <span class="prefix">lucy_</span>DataWriter *<strong>self</strong> +); +</code></pre> +<p>Arbitrary metadata to be serialized and stored by the Segment. The +default implementation supplies a hash with a single key-value pair for +âformatâ.</p> +</dd> +<dt id="func_Format">Format <span class="comment">(abstract)</span></dt> +<dd> +<pre><code>int32_t +<span class="prefix">lucy_</span><strong>DataWriter_Format</strong>( + <span class="prefix">lucy_</span>DataWriter *<strong>self</strong> +); +</code></pre> +<p>Every writer must specify a file format revision number, which should +increment each time the format changes. Responsibility for revision +checking is left to the companion DataReader.</p> +</dd> +<dt id="func_Get_Snapshot">Get_Snapshot</dt> +<dd> +<pre><code><span class="prefix">lucy_</span><a href="../../Lucy/Index/Snapshot.html">Snapshot</a>* +<span class="prefix">lucy_</span><strong>DataWriter_Get_Snapshot</strong>( + <span class="prefix">lucy_</span>DataWriter *<strong>self</strong> +); +</code></pre> +<p>Accessor for âsnapshotâ member var.</p> +</dd> +<dt id="func_Get_Segment">Get_Segment</dt> +<dd> +<pre><code><span class="prefix">lucy_</span><a href="../../Lucy/Index/Segment.html">Segment</a>* +<span class="prefix">lucy_</span><strong>DataWriter_Get_Segment</strong>( + <span class="prefix">lucy_</span>DataWriter *<strong>self</strong> +); +</code></pre> +<p>Accessor for âsegmentâ member var.</p> +</dd> +<dt id="func_Get_PolyReader">Get_PolyReader</dt> +<dd> +<pre><code><span class="prefix">lucy_</span><a href="../../Lucy/Index/PolyReader.html">PolyReader</a>* +<span class="prefix">lucy_</span><strong>DataWriter_Get_PolyReader</strong>( + <span class="prefix">lucy_</span>DataWriter *<strong>self</strong> +); +</code></pre> +<p>Accessor for âpolyreaderâ member var.</p> +</dd> +<dt id="func_Get_Schema">Get_Schema</dt> +<dd> +<pre><code><span class="prefix">lucy_</span><a href="../../Lucy/Plan/Schema.html">Schema</a>* +<span class="prefix">lucy_</span><strong>DataWriter_Get_Schema</strong>( + <span class="prefix">lucy_</span>DataWriter *<strong>self</strong> +); +</code></pre> +<p>Accessor for âschemaâ member var.</p> +</dd> +<dt id="func_Get_Folder">Get_Folder</dt> +<dd> +<pre><code><span class="prefix">lucy_</span><a href="../../Lucy/Store/Folder.html">Folder</a>* +<span class="prefix">lucy_</span><strong>DataWriter_Get_Folder</strong>( + <span class="prefix">lucy_</span>DataWriter *<strong>self</strong> +); +</code></pre> +<p>Accessor for âfolderâ member var.</p> +</dd> +</dl> +<h3>Inheritance</h3> +<p>Lucy::Index::DataWriter is a <a href="../../Clownfish/Obj.html">Clownfish::Obj</a>.</p> +</div> + + </div> <!-- lucy-main_content_box --> + <div class="clear"></div> + + </div> <!-- lucy-main_content --> + + <div id="lucy-copyright" class="container_16"> + <p>Copyright © 2010-2015 The Apache Software Foundation, Licensed under the + <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>. + <br/> + Apache Lucy, Lucy, Apache, the Apache feather logo, and the Apache Lucy project logo are trademarks of The + Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their + respective owners. + </p> + </div> <!-- lucy-copyright --> + + </div> <!-- lucy-rigid_wrapper --> + + </body> +</html>
