Provided by: lire-devel-doc_2.1-1.1_all bug

NAME

       Lire::Group - Base class for implementation of the group aggregator

SYNOPSIS

           use Lire::Group;

DESCRIPTION

       This module is the base class for implementation of the group aggregator. This aggregator
       will split the DLF records in groups having the same key. The key is made up of one or
       more several non-numerical fields. The number of keys to keep in the report can be
       configured through the limit attribute. The keys can also be sorted using the sort
       attribute.

CONSTRUCTOR

   new( %params )
       Creates a new instance of a group aggregator. In addition to the normal report operator
       parameters, the limit attribute can be initialized at creation time.

METHODS

   limit( [$new_limit] )
       Returns the number of keys to display in the report. This can be an integer or the name of
       one of the report specification parameter (when it starts by $).

       The limit attribute can be changed by passing a $new_limit parameter.

   sort_fields( [$new_sort_fields] )
       Returns fields and/or operator values which are going to be used to sort the entries
       generated by this aggregator. This is an array reference containing group field names
       and/or operator's name.

       The sorting fields can be changed by passing a new array reference.

   group_fields( [$new_fields] )
       Returns as a reference to an array of Lire::GroupField objects the DLF fields that are
       used to group the records.

       If the $new_fields is set, the DLF fields used to group the records will be changed. This
       parameter should be a reference to an array of Lire::GroupField objects.

   binary_insert
       Recursive function that uses a binary search to insert $item in $array using $cmp as
       comparison operator.  $first_idx and $max_idx specify the boundaries of the search.
       Search ends when $first_idx == $max_idx or when $sort_key sorts at or before $first_idx or
       at or after $max_idx

SEE ALSO

        Lire::ReportSpec(3pm), Lire::GroupField(3pm),
        Lire::ReportOperator(3pm)

AUTHORS

         Francis J. Lacoste <flacoste@logreport.org>
         Wolfgang Sourdeau <wsourdeau@logreport.org>

VERSION

       $Id: Group.pm,v 1.36 2006/07/23 13:16:29 vanbaal Exp $

COPYRIGHT

       Copyright (C) 2001-2004 Stichting LogReport Foundation LogReport@LogReport.org

       This file is part of Lire.

       Lire is free software; you can redistribute it and/or modify it under the terms of the GNU
       General Public License as published by the Free Software Foundation; either version 2 of
       the License, or (at your option) any later version.

       This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
       without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
       See the GNU General Public License for more details.

       You should have received a copy of the GNU General Public License along with this program
       (see COPYING); if not, check with http://www.gnu.org/copyleft/gpl.html.