From f8ccad28f3a8fc90f4f0a13ec0c8d230dec6b230 Mon Sep 17 00:00:00 2001 From: jprocter Date: Fri, 19 Jan 2007 16:01:33 +0000 Subject: [PATCH] PDBChain maintains reference to dataset of sequences created by PDBfile reader. --- src/MCview/PDBChain.java | 45 ++++++++++++++++++++++++++------------------- src/MCview/PDBfile.java | 16 ++++------------ 2 files changed, 30 insertions(+), 31 deletions(-) diff --git a/src/MCview/PDBChain.java b/src/MCview/PDBChain.java index a9d2d3a..12e7978 100755 --- a/src/MCview/PDBChain.java +++ b/src/MCview/PDBChain.java @@ -33,6 +33,7 @@ public class PDBChain { * SequenceFeature group for PDB File features added to sequences */ private static final String PDBFILEFEATURE = "PDBFile"; + private static final String IEASTATUS = "IEA:jalview"; public String id; public Vector bonds = new Vector(); public Vector atoms = new Vector(); @@ -44,8 +45,9 @@ public class PDBChain { public int pdbend = 0; public int seqstart = 0; public int seqend = 0; - - public PDBChain(String id) { + public String pdbid=""; + public PDBChain(String pdbid, String id) { + this.pdbid=pdbid.toLowerCase(); this.id = id; } @@ -93,28 +95,33 @@ public class PDBChain { /** * copy over the RESNUM seqfeatures from the internal chain sequence to the mapped sequence * @param seq + * @param status The Status of the transferred annotation */ public void transferRESNUMFeatures(SequenceI seq, String status) { - if (seq != sequence) { - /** SequenceFeature[] seqsfeatures=seq.getSequenceFeatures(); + SequenceI sq = seq; + while (sq!=null) { + if (sq==sequence) + return; + sq = sq.getDatasetSequence(); + } + /** + * Remove any existing features for this chain if they exist ? + * SequenceFeature[] seqsfeatures=seq.getSequenceFeatures(); int totfeat=seqsfeatures.length; // Remove any features for this exact chain ? for (int i=0; i