|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectmessif.buckets.split.SplitPolicy
messif.buckets.split.impl.SplitPolicyExcludedMiddlePartitioning
public class SplitPolicyExcludedMiddlePartitioning
This class an excluded-middle ball-partitioning policy for bucket splitting.
The policy is fully defined by:
LocalAbstractObject
pivot
float
radius and
float
rho
The parameter rho
defines a ring of the 2rho width centered at the distance radius
from the pivot.
All objects that have distances to the pivot smaller or equal to the radius minus rho form one partition,
object having the distances greater than the radius plus rho form the second partitiong. The remaining objects falls to
the excluded one (third partition). The matcher
returns 1 for objects outside farer than the ring, 0 for objects closer than the ring, and 2 for objects within the ring.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class messif.buckets.split.SplitPolicy |
---|
SplitPolicy.ParameterField |
Field Summary | |
---|---|
protected float |
dist
The distance to the pivot computed by the last call to match(Region). |
static int |
PART_ID_EXCLUDED
Identification of the outer partition. |
static int |
PART_ID_INNER
Identification of the inner partition. |
static int |
PART_ID_OUTER
Identification of the outer partition. |
protected LocalAbstractObject |
pivot
Policy parameter pivot |
protected float |
radius
Policy parameter radius |
protected float |
rho
Policy parameter rho |
Fields inherited from class messif.buckets.split.SplitPolicy |
---|
PART_ID_ANY |
Constructor Summary | |
---|---|
SplitPolicyExcludedMiddlePartitioning()
Creates a new instance of SplitPolicyExcludedMiddlePartitioning |
Method Summary | |
---|---|
float |
getDistanceToPivot()
Returns the distance to the pivot which might have been computed by the last call to match(Region). |
int |
getPartitionsCount()
Returns the number of partitions of this policy. |
LocalAbstractObject |
getPivot()
Returns the pivot for ball partitioning. |
float |
getRadius()
Returns the radius for ball partitioning. |
float |
getRho()
Returns the rho for excluded-middle partitioning. |
int |
match(BallRegion region)
Returns the group (partition) to which the whole ball region belongs. |
int |
match(LocalAbstractObject object)
Returns 1 for objects outside the ball partition defined by this policy and 0 for objects belonging to the partition. |
void |
setPivot(LocalAbstractObject pivot)
Sets the pivot for ball partitioning. |
void |
setRadius(float radius)
Sets the radius for ball partitioning. |
void |
setRho(float rho)
Sets the rho for excluded-middle partitioning. |
Methods inherited from class messif.buckets.split.SplitPolicy |
---|
getBucketBallRegion, getParameter, getParameterNames, getParameterType, isComplete, isParameterFilled, isParameterLocked, lockParameter, match, setParameter |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected LocalAbstractObject pivot
protected float radius
protected float rho
protected float dist
public static final int PART_ID_INNER
0
public static final int PART_ID_OUTER
1
public static final int PART_ID_EXCLUDED
2
Constructor Detail |
---|
public SplitPolicyExcludedMiddlePartitioning()
Method Detail |
---|
public void setPivot(LocalAbstractObject pivot)
pivot
- the pivotpublic LocalAbstractObject getPivot()
public void setRadius(float radius)
radius
- the radiuspublic float getRadius()
public void setRho(float rho)
rho
- the rho valuepublic float getRho()
public float getDistanceToPivot()
LocalAbstractObject.UNKNOWN_DISTANCE
, the distance
was not evaluated.
public int match(LocalAbstractObject object)
match
in interface ObjectMatcher<LocalAbstractObject>
match
in class SplitPolicy
object
- an object that is tested for partition
public int getPartitionsCount()
getPartitionsCount
in class SplitPolicy
public int match(BallRegion region)
match(messif.objects.LocalAbstractObject)
method.
match
in class SplitPolicy
region
- a ball region that is tested for the matching condition
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |