# Auto-generated file -- DO NOT EDIT!!!!!

=head1 NAME

KinoSearch::Index::SegWriter - Write one segment of an index.


Write one segment of an index.

SegWriter is a conduit through which information fed to Indexer passes.  It
manages Segment and Inverter, invokes the Analyzer chain, and feeds low
level DataWriters such as PostingsWriter and DocWriter.  

The sub-components of a SegWriter are determined by
L<Architecture|KinoSearch::Architecture>.  DataWriter components which are
added to the stack of writers via add_writer() have add_inverted_doc()
invoked for each document supplied to SegWriter's add_doc().

=head1 METHODS

=head2 add_doc( I<[labeled params]> )

Add a document to the segment.  Inverts C<< doc >>, increments
the Segment's internal document id, then calls add_inverted_doc(),
feeding all sub-writers.

=head2 add_writer(writer)

Add a DataWriter to the SegWriter's stack of writers.

=head2 register( I<[labeled params]> )

Register a DataWriter component with the SegWriter.  (Note that
registration simply makes the writer available via fetch(), so you may
also want to call add_writer()).


=item *

B<api> - The name of the DataWriter api which C<< writer >>

=item *

B<component> - A DataWriter.


=head2 fetch(api)

Retrieve a registered component.


=item *

B<api> - The name of the DataWriter api which the component



KinoSearch::Index::SegWriter isa L<KinoSearch::Index::DataWriter> isa L<KinoSearch::Obj>.


Copyright 2005-2009 Marvin Humphrey

This program is free software; you can redistribute it and/or modify it under
the same terms as Perl itself.