Classes
core/vnl/vnl_scalar_join_iterator.h File Reference

Database join on matrix columns. More...

#include <vcl_list.h>
#include <vnl/vnl_matrix.h>

Go to the source code of this file.

Classes

class  vnl_scalar_join_iterator< T >
 Database join on matrix columns. More...
class  vnl_scalar_join_iterator_indexed_pair< T >
 Helper class to hold the sorted arrays of indices. More...

Detailed Description

Database join on matrix columns.

Author:
Andrew W. Fitzgibbon, Oxford RRG
Date:
27 Dec 96

vnl_scalar_join_iterator implements a fast database join on columns of matrices of scalars. "Scalar" here really means that the objects have comparison operators. The cost is O(n log n) where n is the number of rows, all for the two sorts in the ctor.

CAVEAT: The current implementation fudges multiple occurrences of the same key in the source column. For example,

      join  1 3 and  3 5 on columns 2 and 1 respectively
            2 3      3 6
   

should give

            1 3 3 5
            1 3 3 6
            2 3 3 5
            2 3 3 6
   

and it doesn't. Contact awf if you need this to work.

    Modifications
     LSB (Manchester) Documentation Tidied
     Feb.2002 - Peter Vanroose - brief doxygen comment placed on single line
   

Definition in file vnl_scalar_join_iterator.h.