Environment for
DeveLoping
KDD-Applications
Supported by Index-Structures

de.lmu.ifi.dbs.elki.result
Class MultiResult

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.result.MultiResult
All Implemented Interfaces:
Result
Direct Known Subclasses:
ClusterOrderResult, OutlierResult

public class MultiResult
extends Object
implements Result

MultiResult is a result collection class.

Author:
Erich Schubert

Field Summary
private  AnyMap<AssociationID<?>> meta
          Meta data.
private  ArrayList<Result> results
          Store the actual results
 
Constructor Summary
MultiResult()
          Constructor
MultiResult(ArrayList<Result> results)
          Constructor
 
Method Summary
 void addResult(Result r)
          Add a new result to the object
<C> ArrayList<C>
filterResults(Class<C> restrictionClass)
          Return only results of the given restriction class
<M> M
getAssociation(AssociationID<M> metaid)
          Get a meta data object.
<M> M
getAssociationGenerics(AssociationID<?> metaid)
          Get a meta data object, with weaker compile time type checking.
 Collection<AssociationID<?>> getAssociations()
          Get stored meta data associations.
<C> C
getFirstFilteredResult(Class<C> restrictionClass)
          Return first results of the given restriction class
 String getName()
          Get a user-understandable name for this result.
 ArrayList<Result> getResults()
          Retrieve result array.
 void prependResult(Result r)
          Insert a new result at the beginning of the results list
<M> void
setAssociation(AssociationID<M> metaid, M value)
          Put meta data.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

results

private ArrayList<Result> results
Store the actual results


meta

private AnyMap<AssociationID<?>> meta
Meta data.

Constructor Detail

MultiResult

public MultiResult(ArrayList<Result> results)
Constructor

Parameters:
results - Array to use for results.

MultiResult

public MultiResult()
Constructor

Method Detail

getResults

public ArrayList<Result> getResults()
Retrieve result array.

Returns:
results list

addResult

public void addResult(Result r)
Add a new result to the object

Parameters:
r - new result

prependResult

public void prependResult(Result r)
Insert a new result at the beginning of the results list

Parameters:
r - new result

filterResults

public <C> ArrayList<C> filterResults(Class<C> restrictionClass)
Return only results of the given restriction class

Type Parameters:
C - Class type
Parameters:
restrictionClass - Class restriction
Returns:
filtered results list

getFirstFilteredResult

public <C> C getFirstFilteredResult(Class<C> restrictionClass)
Return first results of the given restriction class

Type Parameters:
C - Class type
Parameters:
restrictionClass - Class restriction
Returns:
first matching result

setAssociation

public <M> void setAssociation(AssociationID<M> metaid,
                               M value)
Put meta data.

Type Parameters:
M - data class
Parameters:
metaid - key
value - data

getAssociation

public <M> M getAssociation(AssociationID<M> metaid)
Get a meta data object.

Type Parameters:
M - data class
Parameters:
metaid - Key
Returns:
stored meta data or null

getAssociationGenerics

public <M> M getAssociationGenerics(AssociationID<?> metaid)
Get a meta data object, with weaker compile time type checking. Note that in this version, it is not verified that the restriction class actually satisfies the return type M.

Type Parameters:
M - data class
Parameters:
metaid - Key
Returns:
stored meta data or null

getAssociations

public Collection<AssociationID<?>> getAssociations()
Get stored meta data associations.

Returns:
Stored keys

getName

public String getName()
Description copied from interface: Result
Get a user-understandable name for this result. Defaults may be returned such as "list" for a list result.

Specified by:
getName in interface Result
Returns:
result name

Release 0.3 (2010-03-31_1612)