uk.ac.starlink.table.join
Class Match1Type

java.lang.Object
  extended by uk.ac.starlink.table.join.Match1Type

public abstract class Match1Type
extends java.lang.Object

Defines how an output table is created from the results of an internal (single-table) match operation. This class contains several factory methods for generating sensible output tables from an internal match. Others are possible.

Since:
15 Nov 2007

Constructor Summary
Match1Type()
           
 
Method Summary
static Match1Type createEliminateMatchesType(int retainCount)
          Factory method returning a type object which eliminates rows forming part of the same match group.
static Match1Type createIdentifyType()
          Factory method returning a type object which identifies matched rows by adding some additional columns to the input.
abstract  StarTable createMatchTable(StarTable inTable, LinkSet rowLinks)
          Generates an output table given an input table and the LinkSet object which defines how its rows are related to each other by matching.
static Match1Type createWideType(int grpSize)
          Factory method returning a type object which aligns match groups with each other in the rows of a new wide table.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Match1Type

public Match1Type()
Method Detail

createMatchTable

public abstract StarTable createMatchTable(StarTable inTable,
                                           LinkSet rowLinks)
Generates an output table given an input table and the LinkSet object which defines how its rows are related to each other by matching.

Parameters:
inTable - input table
rowLinks - link set object giving the result of a single-table match

createIdentifyType

public static Match1Type createIdentifyType()
Factory method returning a type object which identifies matched rows by adding some additional columns to the input. These flag which rows match which other ones and give a group size count.

Returns:
new identification type

createEliminateMatchesType

public static Match1Type createEliminateMatchesType(int retainCount)
Factory method returning a type object which eliminates rows forming part of the same match group. All rows from a match group starting at index retainCount are removed from the output table. Thus retainCount=0 removes any rows which participate in matches with other ones, and retainCount=1 leaves just one from any such group.

Parameters:
retainCount - number of items to retain from each match group

createWideType

public static Match1Type createWideType(int grpSize)
Factory method returning a type object which aligns match groups with each other in the rows of a new wide table. The output table has columns like grpSize versions of the input table side by side, and where there are exactly grpSize matches in a group they form a row. Rows which are not part of a grpSize-element match do not appear in the output.

Parameters:
grpSize - size of group we are interested in