frameworkClustering
public static <S,F> IDBasedHierarchicClustering frameworkClustering(Iterator<OrderedElement<S>> structures,
Function<S,Iterator<F>> frameworkAssociation,
FrameworkIndex<F> frameworkIndex,
Consumer<Exception> errorHandler,
SubProgressObserver po)
Build hierarchy.
This methods implements the core functionality of framework based clustering hierarchy building.
- Type Parameters:
S
- Type of structures clustered
F
- Type of frameworks associated
- Parameters:
structures
- Input structures. This Iterator
is accessed only from the calling thread.
frameworkAssociation
- Structural framework series association. This method is expected to be thread safe
and side effect free. This Function
might be accessed from other threads.
frameworkIndex
- The returned indices are used for building the clustering hierarchy. A typical
implementation also stores the associations. The passed implementation is expected to be thread safe.
errorHandler
- Error handler. Expect errors during framework enumeration.
po
- Observer to track execution. Method ProgressObserver.done()
will be invoked upon completion.
- Returns:
- Clustering hierarchy in which the representant structure of each cluster is set to an arbitrary structure
read; structure IDs are supplied by the passed
OrderedElement
instances.
- Throws:
LicenseException
- when appropriate license is not available
CancellationException
- Upon cancellation through the given ProgressObserver