X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fapi%2FFeatureRenderer.java;h=54303037f19109bc4c17c3c8ddbb2c5e54249a6a;hb=57738a1f3c19b1c3a00bd3ac5108f8cd0af32f99;hp=a9bbe31a73ae9a187b3ff0130e7863395dd77f66;hpb=74393b51f368cb9f58589472d432a433d9c4386d;p=jalview.git diff --git a/src/jalview/api/FeatureRenderer.java b/src/jalview/api/FeatureRenderer.java index a9bbe31..5430303 100644 --- a/src/jalview/api/FeatureRenderer.java +++ b/src/jalview/api/FeatureRenderer.java @@ -20,6 +20,7 @@ */ package jalview.api; +import jalview.datamodel.MappedFeatures; import jalview.datamodel.SequenceFeature; import jalview.datamodel.SequenceI; import jalview.datamodel.features.FeatureMatcherSetI; @@ -150,15 +151,16 @@ public interface FeatureRenderer /** * Returns visible features at the specified aligned column on the given - * sequence. Non-positional features are not included. If the column has a gap, - * then enclosing features are included (but not contact features). + * sequence. Non-positional features are not included. If the column has a + * gap, then enclosing features are included (but not contact features). * * @param sequence * @param column * aligned column position (1..) * @return */ - List findFeaturesAtColumn(SequenceI sequence, int column); + List findFeaturesAtColumn(SequenceI sequence, + int column); /** * Returns features at the specified residue positions on the given sequence. @@ -283,4 +285,25 @@ public interface FeatureRenderer * @return */ boolean isVisible(SequenceFeature feature); + + /** + * Answers a bean containing a mapping, and a list of visible features in this + * alignment at a position (or range) which is mappable from the given + * sequence residue position in a mapped alignment. Features are returned in + * render order of feature type (on top last), with order within feature type + * undefined. If no features or mapping are found, answers null. + * + * @param sequence + * @param pos + * @return + */ + MappedFeatures findComplementFeaturesAtResidue(SequenceI sequence, + int pos); + + /** + * Sends a message to let any registered parties know that something about + * feature rendering has changed + */ + void notifyFeaturesChanged(); + }