public final class


extends Object

Class Overview

Implementation of an agglomerative based clustering where all items within a certain time cutoff are grouped into the same cluster. Small adjacent clusters are merged and large individual clusters are considered for splitting. TODO: Limitation: Can deal with items not being added incrementally to the end of the current date range but effectively assumes this is the case for efficient performance.


Nested Classes
class MediaClustering.Cluster  
Public Methods
void addItemForClustering(MediaItem mediaItem)
void clear()
void compute(MediaItem currentItem, boolean processAllItems)
synchronized ArrayList<MediaClustering.Cluster> getClusters()
ArrayList<MediaClustering.Cluster> getClustersForDisplay()
void removeItemFromClustering(MediaItem mediaItem)
void setTimeRange(long timeRange, int numItems)
static long timeDistance(MediaItem a, MediaItem b)
Inherited Methods
From class java.lang.Object

Public Methods

public void addItemForClustering (MediaItem mediaItem)

public void clear ()

public void compute (MediaItem currentItem, boolean processAllItems)

public synchronized ArrayList<MediaClustering.Cluster> getClusters ()

public ArrayList<MediaClustering.Cluster> getClustersForDisplay ()

public void removeItemFromClustering (MediaItem mediaItem)

public void setTimeRange (long timeRange, int numItems)

public static long timeDistance (MediaItem a, MediaItem b)