org.biojava.bio.seq
Class FeatureFilter.ShadowOverlapsLocation

java.lang.Object
  extended byorg.biojava.bio.seq.FeatureFilter.ShadowOverlapsLocation
All Implemented Interfaces:
FeatureFilter, OptimizableFilter, java.io.Serializable
Enclosing class:
FeatureFilter

public static final class FeatureFilter.ShadowOverlapsLocation
extends java.lang.Object
implements OptimizableFilter

A filter that accepts all features whose shadow overlaps a specified Location. The shadow is defined as the interval between the minimum and maximum positions of the feature's location. For features with contiguous locations, this filter is equivalent to FeatureFilter.OverlapsLocation..

A typical use of this filter is in graphics code where you are rendering features with non-contiguous locations in a `blocks and connectors' style, and wish to draw the connector even when no blocks fall within the selected field of view

Since:
1.3
Author:
Thomas Down
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class org.biojava.bio.seq.FeatureFilter
FeatureFilter.And, FeatureFilter.AnnotationContains, FeatureFilter.ByAncestor, FeatureFilter.ByAnnotation, FeatureFilter.ByAnnotationType, FeatureFilter.ByChild, FeatureFilter.ByClass, FeatureFilter.ByComponentName, FeatureFilter.ByDescendant, FeatureFilter.ByFeature, FeatureFilter.ByPairwiseScore, FeatureFilter.ByParent, FeatureFilter.BySequenceName, FeatureFilter.BySource, FeatureFilter.ByType, FeatureFilter.ContainedByLocation, FeatureFilter.FrameFilter, FeatureFilter.HasAnnotation, FeatureFilter.Not, FeatureFilter.OnlyChildren, FeatureFilter.OnlyDescendants, FeatureFilter.Or, FeatureFilter.OverlapsLocation, FeatureFilter.ShadowContainedByLocation, FeatureFilter.ShadowOverlapsLocation, FeatureFilter.StrandFilter
 
Field Summary
 
Fields inherited from interface org.biojava.bio.seq.FeatureFilter
all, leaf, none, top_level
 
Constructor Summary
FeatureFilter.ShadowOverlapsLocation(Location loc)
          Creates a filter that returns everything overlapping loc.
 
Method Summary
 boolean accept(Feature f)
          Returns true if the feature overlaps this filter's location.
 boolean equals(java.lang.Object o)
           
 Location getLocation()
           
 int hashCode()
           
 boolean isDisjoint(FeatureFilter filt)
          Returns true if this filter is disjoint from filt - that is, there is no Feature that is accepted by both filters.
 boolean isProperSubset(FeatureFilter sup)
          Returns true if this filter is a proper subset of sup - that is, for every feature that matches this, it also matches sup.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FeatureFilter.ShadowOverlapsLocation

public FeatureFilter.ShadowOverlapsLocation(Location loc)
Creates a filter that returns everything overlapping loc.

Parameters:
loc - the location that will overlap the accepted features
Method Detail

getLocation

public Location getLocation()

accept

public boolean accept(Feature f)
Returns true if the feature overlaps this filter's location.

Specified by:
accept in interface FeatureFilter
Parameters:
f - the Feature to evaluate
Returns:
true if this feature is to be selected in, or false if it is to be ignored

equals

public boolean equals(java.lang.Object o)

hashCode

public int hashCode()

isProperSubset

public boolean isProperSubset(FeatureFilter sup)
Description copied from interface: OptimizableFilter
Returns true if this filter is a proper subset of sup - that is, for every feature that matches this, it also matches sup. The empty filter is a proper subset of all filters. All filters are a proper subset of the all filter. All filters are proper subsets of themselves.

Specified by:
isProperSubset in interface OptimizableFilter
Parameters:
sup - the potential super set
Returns:
true if sup contains all features contained by this filter

isDisjoint

public boolean isDisjoint(FeatureFilter filt)
Description copied from interface: OptimizableFilter
Returns true if this filter is disjoint from filt - that is, there is no Feature that is accepted by both filters. The empty filter is disjoint from all other filters. The all filter is disjoint from none.

Specified by:
isDisjoint in interface OptimizableFilter

toString

public java.lang.String toString()