
O - the type of database objects the preprocessor can be applied toD - the type of distance the used distance function will returnN - the type of spatial nodes in the spatial indexE - the type of spatial entries in the spatial index@Title(value="Spatial Approximation Materialize kNN Preprocessor") @Description(value="Caterializes the (approximate) k nearest neighbors of objects of a database using a spatial approximation.") public class MetricalIndexApproximationMaterializeKNNPreprocessor<O extends NumberVector<?>,D extends Distance<D>,N extends Node<E>,E extends MTreeEntry<D>> extends AbstractMaterializeKNNPreprocessor<O,D,KNNResult<D>>
LOF.
 
 TODO correct handling of datastore events| Modifier and Type | Class and Description | 
|---|---|
| static class  | MetricalIndexApproximationMaterializeKNNPreprocessor.Factory<O extends NumberVector<?>,D extends Distance<D>,N extends Node<E>,E extends MTreeEntry<D>>The parameterizable factory. | 
| Modifier and Type | Field and Description | 
|---|---|
| private static Logging | LOGLogger to use | 
distanceFunction, distanceQuery, kstoragerelation| Constructor and Description | 
|---|
| MetricalIndexApproximationMaterializeKNNPreprocessor(Relation<O> relation,
                                                    DistanceFunction<? super O,D> distanceFunction,
                                                    int k)Constructor | 
| Modifier and Type | Method and Description | 
|---|---|
| protected Logging | getLogger()Get the classes static logger. | 
| String | getLongName()A "pretty" name for the result, for use in titles, captions and menus. | 
| private MetricalIndexTree<O,D,N,E> | getMetricalIndex(Relation<O> relation)Do some (limited) type checking, then cast the database into a spatial
 database. | 
| String | getShortName()A short name for the result, useful for file names. | 
| protected void | preprocess()Perform the preprocessing step. | 
createStorage, get, getDistanceFactory, getDistanceQuery, getK, getKNNQuery, insertAlldelete, deleteAll, getPageFileStatistics, insertclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitdelete, deleteAll, getPageFileStatistics, insertprivate static final Logging LOG
public MetricalIndexApproximationMaterializeKNNPreprocessor(Relation<O> relation, DistanceFunction<? super O,D> distanceFunction, int k)
relation - Relation to preprocessdistanceFunction - the distance function to usek - query kprotected void preprocess()
AbstractMaterializeKNNPreprocessorpreprocess in class AbstractMaterializeKNNPreprocessor<O extends NumberVector<?>,D extends Distance<D>,KNNResult<D extends Distance<D>>>private MetricalIndexTree<O,D,N,E> getMetricalIndex(Relation<O> relation) throws IllegalStateException
relation - DatabaseIllegalStateException - when the cast fails.public String getLongName()
ResultgetLongName in interface ResultgetLongName in class AbstractIndex<O extends NumberVector<?>>public String getShortName()
ResultgetShortName in interface ResultgetShortName in class AbstractIndex<O extends NumberVector<?>>protected Logging getLogger()
AbstractPreprocessorIndexgetLogger in class AbstractPreprocessorIndex<O extends NumberVector<?>,KNNResult<D extends Distance<D>>>