messif.objects
Class PrecompDistPerforatedArrayFilter

java.lang.Object
  extended by messif.objects.PrecomputedDistancesFilter
      extended by messif.objects.PrecomputedDistancesFixedArrayFilter
          extended by messif.objects.PrecompDistPerforatedArrayFilter
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, BinarySerializable

public class PrecompDistPerforatedArrayFilter
extends PrecomputedDistancesFixedArrayFilter

See Also:
Serialized Form

Field Summary
 
Fields inherited from class messif.objects.PrecomputedDistancesFixedArrayFilter
actualSize, precompDist
 
Fields inherited from class messif.objects.PrecomputedDistancesFilter
counterPrecomputedDistanceSavings
 
Constructor Summary
  PrecompDistPerforatedArrayFilter()
          Creates a new instance of ProcmpDistPerforatedArrayFilter
protected PrecompDistPerforatedArrayFilter(BinaryInput input, BinarySerializator serializator)
           
  PrecompDistPerforatedArrayFilter(int initialSize)
          Creates a new instance of ProcmpDistPerforatedArrayFilter
 
Method Summary
protected  boolean excludeUsingPrecompDistImpl(PrecomputedDistancesFixedArrayFilter targetFilter, float radius)
          Return true if the obj has been filtered out using stored precomputed distance.
protected  boolean includeUsingPrecompDistImpl(PrecomputedDistancesFixedArrayFilter targetFilter, float radius)
          Returns true if object associated with targetFilter filter can be included using this precomputed distances.
 
Methods inherited from class messif.objects.PrecomputedDistancesFixedArrayFilter
addPrecompDist, addPrecompDist, addPrecompDist, addPrecompDist, addPrecompDist, binarySerialize, clone, excludeUsingPrecompDistImpl, getBinarySize, getPrecompDist, getPrecompDist, getPrecompDistSize, getPrecomputedDistanceImpl, includeUsingPrecompDistImpl, insertPrecompDist, insertPrecompDist, isDataWritable, isGetterSupported, removeLastPrecompDists, removePrecompDist, resetAllPrecompDist, resizePrecompDistArray, setFixedPivotsPrecompDist, setPrecompDist, setPrecompDist, writeData
 
Methods inherited from class messif.objects.PrecomputedDistancesFilter
excludeUsingPrecompDist, getNextFilter, getPrecomputedDistance, includeUsingPrecompDist, write
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PrecompDistPerforatedArrayFilter

public PrecompDistPerforatedArrayFilter()
Creates a new instance of ProcmpDistPerforatedArrayFilter


PrecompDistPerforatedArrayFilter

public PrecompDistPerforatedArrayFilter(int initialSize)
Creates a new instance of ProcmpDistPerforatedArrayFilter


PrecompDistPerforatedArrayFilter

protected PrecompDistPerforatedArrayFilter(BinaryInput input,
                                           BinarySerializator serializator)
                                    throws java.io.IOException
Throws:
java.io.IOException
Method Detail

excludeUsingPrecompDistImpl

protected boolean excludeUsingPrecompDistImpl(PrecomputedDistancesFixedArrayFilter targetFilter,
                                              float radius)
Description copied from class: PrecomputedDistancesFixedArrayFilter
Return true if the obj has been filtered out using stored precomputed distance. Otherwise returns false, i.e. when obj must be checked using original distance (getDistance()). In other words, method returns true if this object and obj are more distant than radius. By analogy, returns false if this object and obj are within distance radius. However, both this cases use only precomputed distances! Thus, the real distance between this object and obj can be greater than radius although the method returned false!!!

Overrides:
excludeUsingPrecompDistImpl in class PrecomputedDistancesFixedArrayFilter
Parameters:
targetFilter - the target precomputed distances
radius - the radius to check the precomputed distances for
Returns:
true if object associated with targetFilter filter can be excluded (filtered out) using this precomputed distances

includeUsingPrecompDistImpl

protected boolean includeUsingPrecompDistImpl(PrecomputedDistancesFixedArrayFilter targetFilter,
                                              float radius)
Description copied from class: PrecomputedDistancesFixedArrayFilter
Returns true if object associated with targetFilter filter can be included using this precomputed distances. See LocalAbstractObject.includeUsingPrecompDist(messif.objects.LocalAbstractObject, float) for full explanation.

Overrides:
includeUsingPrecompDistImpl in class PrecomputedDistancesFixedArrayFilter
Parameters:
targetFilter - the target precomputed distances
radius - the radius to check the precomputed distances for
Returns:
true if object associated with targetFilter filter can be included using this precomputed distances