org.biojava.bio.seq
Interface OptimizableFilter

All Superinterfaces:
FeatureFilter, java.io.Serializable
All Known Implementing Classes:
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.OnlyChildren, FeatureFilter.OnlyDescendants, FeatureFilter.OverlapsLocation, FeatureFilter.ShadowContainedByLocation, FeatureFilter.ShadowOverlapsLocation, FeatureFilter.StrandFilter

public interface OptimizableFilter
extends FeatureFilter

The interface for filters that can potentialy optimize themselves, and compare themselves with other filters.

Since:
1.2
Author:
Matthew Pocock

Nested Class Summary
 
Nested classes/interfaces inherited from interface 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
 
Method Summary
 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.
 
Methods inherited from interface org.biojava.bio.seq.FeatureFilter
accept
 

Method Detail

isProperSubset

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. 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.

Parameters:
sup - the potential super set
Returns:
true if sup contains all features contained by this filter

isDisjoint

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. The empty filter is disjoint from all other filters. The all filter is disjoint from none.