JAL-3401 reset 'no repaint' flag after New View / copyAlignPanel
[jalview.git] / src / jalview / datamodel / features / FeatureStoreI.java
1 package jalview.datamodel.features;
2
3 import jalview.datamodel.SequenceFeature;
4
5 import java.util.Collection;
6 import java.util.List;
7 import java.util.Set;
8
9 public interface FeatureStoreI
10 {
11
12   boolean addFeature(SequenceFeature feature);
13
14   boolean contains(SequenceFeature feature);
15
16   boolean delete(SequenceFeature sf);
17
18   List<SequenceFeature> findOverlappingFeatures(long start, long end);
19
20   List<SequenceFeature> findOverlappingFeatures(long start, long end,
21           List<SequenceFeature> result);
22
23   List<SequenceFeature> getContactFeatures();
24
25   List<SequenceFeature> getContactFeatures(List<SequenceFeature> result);
26
27   int getFeatureCount(boolean positional);
28
29   Set<String> getFeatureGroups(boolean positionalFeatures);
30
31   Collection<SequenceFeature> getFeatures();
32
33   List<SequenceFeature> getFeaturesForGroup(boolean positional,
34           String group);
35
36   float getMaximumScore(boolean positional);
37
38   float getMinimumScore(boolean positional);
39
40   List<SequenceFeature> getNonPositionalFeatures();
41
42   List<SequenceFeature> getNonPositionalFeatures(
43           List<SequenceFeature> result);
44
45   List<SequenceFeature> getPositionalFeatures();
46
47   List<SequenceFeature> getPositionalFeatures(List<SequenceFeature> result);
48
49   int getTotalFeatureLength();
50
51   boolean isEmpty();
52
53   boolean shiftFeatures(int fromPosition, int shiftBy);
54
55   boolean listContains(List<SequenceFeature> features,
56           SequenceFeature feature);
57
58 }