NAME

Bio::JBrowse::Store::NCList::LazyNCList

new

Title   : new
Usage   : Bio::JBrowse::Store::NCList::LazyNCList->new(
              $attrs, $lazyClass, $makeLazy,
              $measure, $output, $sizeThresh
Function: create a LazyNCList
Returns : an LazyNCList object
Args    : $attrs is a reference to an ArrayRepr instance
          $lazyClass is the class number to be used for 'lazy'
             NCLists, which are references to sub-lists,
          $makeLazy is a reference to a sub taking the arguments
             (start, end, ID), which returns a "lazy feature" with the
             given attributes
          $loadChunk is a subroutine that takes a chunk ID number and returns the contents of that chunk (
          $measure is a reference to a sub that takes a feature to be
             output, and returns the number of bytes that feature will
             take up in the output
          $output is a reference to a sub that, given a chunk ID and some data,
             will output that data under that chunk ID
          $sizeThresh is the target chunk size

addSorted

Title   : addSorted
Usage   : $ncl->addSorted($feat)
Function: Adds a single feature to the set of features in this LazyNCList;
          features passed to this method are accumulated into "chunks";
          once a chunk grows to sizeThresh, the chunk is output.
          The features given to addSorted must be sorted by the NCList sort.
Returns : nothing meaningful
Args    : $feat is the feature to be added;

finish

Title   : finish
Usage   : $ncl->finish()
Function: Once all features have been added (through addSorted),
          call "finish" to flush all of the partial chunks.
          After calling finish, you can access the "topLevelList" property.
Returns : nothing

overlapCallback( $from, $to, \&func )

Calls the given function once for each of the intervals that overlap the given interval if <$from <= $to>, iterates left-to-right, otherwise iterates right-to-left.

AUTHOR

Mitchell Skinner <jbrowse@arctur.us>

Copyright (c) 2007-2011 The Evolutionary Software Foundation

This package and its accompanying libraries are free software; you can redistribute it and/or modify it under the terms of the LGPL (either version 2.1, or at your option, any later version) or the Artistic License 2.0. Refer to LICENSE for the full license text.

AUTHOR

Robert Buels <rbuels@gmail.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2013 by Robert Buels.

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