public class AnnotationParser extends java.lang.Object implements JmolAnnotationParser
| Modifier and Type | Field and Description |
|---|---|
private javajs.util.Lst<java.util.Map<java.lang.String,java.lang.Object>> |
basePairs |
private java.util.Map<java.lang.String,java.lang.Object> |
dssr |
private java.util.Map<java.lang.String,java.lang.String[]> |
htPar |
private java.util.Map<java.lang.String,java.lang.Object> |
htTemp |
private java.lang.String |
line |
private javajs.util.SB |
message |
private int[] |
next |
private static java.util.Map<java.lang.String,java.lang.String> |
pdbAtomForH |
private javajs.api.GenericLineReader |
reader |
| Constructor and Description |
|---|
AnnotationParser() |
| Modifier and Type | Method and Description |
|---|---|
private void |
addArray(java.util.Map<java.lang.String,java.lang.Object> data,
java.lang.String key,
float[] f) |
private void |
addFloat(java.util.Map<java.lang.String,java.lang.Object> data,
java.lang.String key,
int pt) |
private void |
addMessage(java.lang.String s) |
private void |
addToMessages(java.lang.String s) |
private java.lang.String |
after(java.lang.String s,
java.lang.String key) |
private void |
assignPDBH(java.lang.String group3,
java.lang.String sNames) |
java.lang.String |
calculateDSSRStructure(Viewer vwr,
BS bsAtoms) |
java.lang.String |
catalogStructureUnits(Viewer viewer,
SV map0,
int[] modelAtomIndices,
java.util.Map<java.lang.String,int[]> resMap,
java.lang.Object object,
java.util.Map<java.lang.String,java.lang.Integer> modelMap) |
private boolean |
catalogUnit(Viewer viewer,
float[][] vals,
java.lang.String unitID,
float val,
BS bsAtoms,
int[] modelAtomIndices,
java.util.Map<java.lang.String,int[]> resMap,
java.util.Map<java.lang.String,java.lang.Integer> atomMap,
java.util.Map<java.lang.String,java.lang.Integer> modelMap)
Carried out for each unit
|
javajs.util.Lst<java.lang.Object> |
catalogValidations(Viewer viewer,
SV map0,
int[] modelAtomIndices,
java.util.Map<java.lang.String,int[]> resMap,
java.util.Map<java.lang.String,java.lang.Integer> atomMap,
java.util.Map<java.lang.String,java.lang.Integer> modelMap)
Returns a Lst
|
private void |
extractFloats(java.util.Map<java.lang.String,java.lang.Object> data,
java.lang.String[] names) |
private void |
findAnnotationAtoms(Viewer vwr,
java.lang.String name,
javajs.util.Lst<SV> _list,
java.lang.String key,
BS bs)
find annotations; allows for wild cards InterPro.* where .....
|
private java.lang.String |
fix(java.lang.String nt,
boolean withName)
A.T8 --> [T]8:A N1@A.G2673 --> [G]2673:A.N1
A.US3/4 --> [US3]4:A
|
void |
fixAtoms(int modelIndex,
SV dbObj,
BS bsAddedMask,
int type,
int margin)
Adjusts _atoms bitset to account for added hydrogen atoms.
|
private java.lang.String |
fixKeyDSSR(java.lang.String key) |
java.lang.String |
getAnnotationInfo(Viewer vwr,
SV a,
java.lang.String match,
int type,
int modelIndex)
Get a string report of annotation data
|
private void |
getAnnotationKVPairs(SV a,
java.lang.String match,
java.lang.String dotPath,
javajs.util.SB sb,
java.lang.String pre,
boolean showDetail,
boolean isMappingOnly,
int type)
Construct a nice listing for this annotation, including validation
|
BS |
getAtomBits(Viewer vwr,
java.lang.String key,
java.lang.Object dbObj,
java.util.Map<java.lang.String,java.lang.Object> annotationCache,
int type,
int modelIndex,
BS bsModel) |
javajs.util.Lst<java.lang.Float> |
getAtomValidation(Viewer vwr,
java.lang.String type,
Atom atom)
Get all validation values corresponding to a specific validation type.
|
java.lang.String |
getAttachedAtomForPDBH(java.lang.String group3,
java.lang.String name)
Finds the standard attached heavy atom for a PDB H atom; used in EBI clash
validation.
|
private java.util.Map<java.lang.String,java.lang.Object> |
getBPData(int i0,
java.lang.String type,
boolean readParams) |
private java.lang.String |
getDataKey(int type) |
private void |
getDSSRAtoms(Viewer vwr,
java.lang.String res,
javajs.util.Lst<?> lst,
BS bs,
java.util.Map<java.lang.String,BS> htChains)
parsing a residue designation for tokens in DSSR.
|
private java.lang.String |
getDSSRForModel(Viewer vwr,
int modelIndex) |
java.lang.String |
getHBonds(ModelSet ms,
int modelIndex,
javajs.util.Lst<Bond> vHBonds,
boolean doReport) |
private java.lang.String |
getHeader() |
private void |
getHelixOrStem(int n,
java.lang.String key,
java.lang.String type,
boolean isHelix) |
private javajs.util.Lst<java.lang.Object> |
getLinkNTList(java.lang.String linkStr,
java.lang.String type,
javajs.util.Lst<java.lang.Object> list) |
private SV |
getMainItem(java.util.Map<java.lang.String,SV> data) |
private java.lang.Object |
getNT(java.lang.String s,
boolean isResno) |
private java.util.Map<java.lang.String,java.lang.Object> |
getNTList() |
private void |
getNTs(javajs.util.Lst<java.lang.Object> linkNTList,
javajs.util.Lst<java.lang.Object> lst,
boolean isStem,
boolean isResno) |
private javajs.util.P3 |
getPoint(java.lang.String data) |
javajs.util.Lst<SV> |
initializeAnnotation(SV objAnn,
int type,
int modelIndex)
We create a main list of mappings, where each mapping has _atoms and _path
|
private boolean |
isHeader(java.lang.String line) |
private void |
mapGroups(java.util.Map<java.lang.String,java.lang.String> map) |
private javajs.util.Lst<java.util.Map<java.lang.String,java.lang.Object>> |
newList(java.lang.String name) |
java.lang.String |
processDSSR(java.util.Map<java.lang.String,java.lang.Object> info,
javajs.api.GenericLineReader reader,
java.lang.String line0,
java.util.Map<java.lang.String,java.lang.String> htGroup1) |
private java.lang.String |
rd() |
private void |
readBulges(int n) |
private void |
readHBonds(int n) |
private javajs.util.Lst<java.lang.String> |
readInfo(java.lang.String key,
int n)
Default for no real processing -- just the lines
|
private void |
readJunctions(int n) |
private void |
readLoops(int n) |
private void |
readMore(java.util.Map<java.lang.String,java.lang.Object> data,
boolean isBP,
boolean isRev) |
private void |
readMotifs(int n) |
private javajs.util.Lst<java.util.Map<java.lang.String,java.lang.Object>> |
readNTList(java.lang.String ntsKey,
java.lang.String type,
int n) |
private void |
readPairs(int n) |
private void |
readSets(java.lang.String key,
int n,
int nway,
int ptnts) |
private void |
readStacks(int n)
List of 40 coaxial stacks
1 Helix#1 contains 4 stems: [#1,#2,#3,#4]
2 Helix#4 contains 4 stems: [#6,#7,#9,#13]
3 Helix#10 contains 3 stems: [#16,#17,#18]
4 Helix#13 contains 2 stems: [#21,#22]
|
private void |
readStructure() |
private void |
readTurns(int n) |
void |
setAllDSSRParametersForModel(Viewer vwr,
int modelIndex) |
private BS |
setAnnotationAtoms(Viewer vwr,
java.util.Map<java.lang.String,SV> mapping,
int i) |
private NucleicMonomer |
setDSSRPhos(Viewer vwr,
int n,
java.util.Map<java.lang.String,java.lang.Object> bp,
BS bs,
java.util.Map<java.lang.String,BS> htChains) |
private NucleicMonomer |
setDSSRRes(Viewer vwr,
java.lang.String res,
BS bs,
java.util.Map<java.lang.String,BS> htChains) |
private void |
skipHeader()
Numbers are right justified in columns 0-3 followed by a space and a
character;
base-pair data start in column 5, but notes start with "Note: " or " ",
both of which have a space in column 5.
|
private void |
skipTo(java.lang.String key,
boolean startsWith) |
private javajs.api.GenericLineReader reader
private java.lang.String line
private java.util.Map<java.lang.String,java.lang.Object> dssr
private java.util.Map<java.lang.String,java.lang.Object> htTemp
private javajs.util.SB message
private java.util.Map<java.lang.String,java.lang.String[]> htPar
private javajs.util.Lst<java.util.Map<java.lang.String,java.lang.Object>> basePairs
private int[] next
private static java.util.Map<java.lang.String,java.lang.String> pdbAtomForH
public java.lang.String processDSSR(java.util.Map<java.lang.String,java.lang.Object> info,
javajs.api.GenericLineReader reader,
java.lang.String line0,
java.util.Map<java.lang.String,java.lang.String> htGroup1)
throws java.lang.Exception
processDSSR in interface JmolAnnotationParserjava.lang.Exceptionprivate void mapGroups(java.util.Map<java.lang.String,java.lang.String> map)
throws java.lang.Exception
java.lang.Exceptionprivate void readStructure()
throws java.lang.Exception
java.lang.Exceptionprivate void readHBonds(int n)
throws java.lang.Exception
java.lang.Exceptionprivate void addToMessages(java.lang.String s)
throws java.lang.Exception
java.lang.Exceptionprivate void addMessage(java.lang.String s)
private javajs.util.Lst<java.util.Map<java.lang.String,java.lang.Object>> newList(java.lang.String name)
private void readStacks(int n)
throws java.lang.Exception
n - java.lang.Exceptionprivate javajs.util.Lst<java.lang.String> readInfo(java.lang.String key,
int n)
throws java.lang.Exception
key - n - java.lang.Exceptionprivate void readLoops(int n)
throws java.lang.Exception
java.lang.Exceptionprivate void readJunctions(int n)
throws java.lang.Exception
java.lang.Exceptionprivate void readBulges(int n)
throws java.lang.Exception
java.lang.Exceptionprivate void readSets(java.lang.String key,
int n,
int nway,
int ptnts)
throws java.lang.Exception
java.lang.Exceptionprivate void getNTs(javajs.util.Lst<java.lang.Object> linkNTList,
javajs.util.Lst<java.lang.Object> lst,
boolean isStem,
boolean isResno)
private javajs.util.Lst<java.lang.Object> getLinkNTList(java.lang.String linkStr,
java.lang.String type,
javajs.util.Lst<java.lang.Object> list)
private void readMotifs(int n)
throws java.lang.Exception
java.lang.Exceptionprivate void readTurns(int n)
throws java.lang.Exception
java.lang.Exceptionprivate void readPairs(int n)
throws java.lang.Exception
java.lang.Exceptionprivate java.util.Map<java.lang.String,java.lang.Object> getBPData(int i0,
java.lang.String type,
boolean readParams)
throws java.lang.Exception
i0 - type - readParams - helix or base pair, not stemjava.lang.Exceptionprivate void readMore(java.util.Map<java.lang.String,java.lang.Object> data,
boolean isBP,
boolean isRev)
throws java.lang.Exception
java.lang.Exceptionprivate void extractFloats(java.util.Map<java.lang.String,java.lang.Object> data,
java.lang.String[] names)
private void addArray(java.util.Map<java.lang.String,java.lang.Object> data,
java.lang.String key,
float[] f)
private void addFloat(java.util.Map<java.lang.String,java.lang.Object> data,
java.lang.String key,
int pt)
private javajs.util.Lst<java.util.Map<java.lang.String,java.lang.Object>> readNTList(java.lang.String ntsKey,
java.lang.String type,
int n)
throws java.lang.Exception
java.lang.Exceptionprivate void getHelixOrStem(int n,
java.lang.String key,
java.lang.String type,
boolean isHelix)
throws java.lang.Exception
java.lang.Exceptionprivate javajs.util.P3 getPoint(java.lang.String data)
private java.util.Map<java.lang.String,java.lang.Object> getNTList()
throws java.lang.Exception
java.lang.Exceptionprivate java.lang.Object getNT(java.lang.String s,
boolean isResno)
private java.lang.String getHeader()
throws java.lang.Exception
java.lang.Exceptionprivate void skipHeader()
throws java.lang.Exception
java.lang.Exceptionprivate boolean isHeader(java.lang.String line)
private void skipTo(java.lang.String key,
boolean startsWith)
throws java.lang.Exception
java.lang.Exceptionprivate java.lang.String fix(java.lang.String nt,
boolean withName)
nt - withName - private java.lang.String after(java.lang.String s,
java.lang.String key)
private java.lang.String rd()
throws java.lang.Exception
java.lang.Exceptionpublic void setAllDSSRParametersForModel(Viewer vwr, int modelIndex)
setAllDSSRParametersForModel in interface JmolAnnotationParserprivate NucleicMonomer setDSSRPhos(Viewer vwr, int n, java.util.Map<java.lang.String,java.lang.Object> bp, BS bs, java.util.Map<java.lang.String,BS> htChains)
private NucleicMonomer setDSSRRes(Viewer vwr, java.lang.String res, BS bs, java.util.Map<java.lang.String,BS> htChains)
public java.lang.String getHBonds(ModelSet ms, int modelIndex, javajs.util.Lst<Bond> vHBonds, boolean doReport)
getHBonds in interface JmolAnnotationParserpublic java.lang.String calculateDSSRStructure(Viewer vwr, BS bsAtoms)
calculateDSSRStructure in interface JmolAnnotationParserprivate java.lang.String getDSSRForModel(Viewer vwr, int modelIndex)
private void getAnnotationKVPairs(SV a, java.lang.String match, java.lang.String dotPath, javajs.util.SB sb, java.lang.String pre, boolean showDetail, boolean isMappingOnly, int type)
a - match - dotPath - sb - pre - showDetail - isMappingOnly - type - private java.lang.String getDataKey(int type)
public java.lang.String catalogStructureUnits(Viewer viewer, SV map0, int[] modelAtomIndices, java.util.Map<java.lang.String,int[]> resMap, java.lang.Object object, java.util.Map<java.lang.String,java.lang.Integer> modelMap)
catalogStructureUnits in interface JmolAnnotationParserpublic javajs.util.Lst<java.lang.Object> catalogValidations(Viewer viewer, SV map0, int[] modelAtomIndices, java.util.Map<java.lang.String,int[]> resMap, java.util.Map<java.lang.String,java.lang.Integer> atomMap, java.util.Map<java.lang.String,java.lang.Integer> modelMap)
catalogValidations in interface JmolAnnotationParserpublic javajs.util.Lst<SV> initializeAnnotation(SV objAnn, int type, int modelIndex)
initializeAnnotation in interface JmolAnnotationParserobjAnn - private void findAnnotationAtoms(Viewer vwr, java.lang.String name, javajs.util.Lst<SV> _list, java.lang.String key, BS bs)
vwr - name - _list - key - bs - private BS setAnnotationAtoms(Viewer vwr, java.util.Map<java.lang.String,SV> mapping, int i)
private boolean catalogUnit(Viewer viewer, float[][] vals, java.lang.String unitID, float val, BS bsAtoms, int[] modelAtomIndices, java.util.Map<java.lang.String,int[]> resMap, java.util.Map<java.lang.String,java.lang.Integer> atomMap, java.util.Map<java.lang.String,java.lang.Integer> modelMap)
viewer - vals - model-based array of float values for a given validation typeunitID - val - bsAtoms - modelAtomIndices - resMap - atomMap - modelMap - TODOprivate java.lang.String fixKeyDSSR(java.lang.String key)
private void getDSSRAtoms(Viewer vwr, java.lang.String res, javajs.util.Lst<?> lst, BS bs, java.util.Map<java.lang.String,BS> htChains)
vwr - res - lst - bs - htChains - public BS getAtomBits(Viewer vwr, java.lang.String key, java.lang.Object dbObj, java.util.Map<java.lang.String,java.lang.Object> annotationCache, int type, int modelIndex, BS bsModel)
getAtomBits in interface JmolAnnotationParserpublic javajs.util.Lst<java.lang.Float> getAtomValidation(Viewer vwr, java.lang.String type, Atom atom)
getAtomValidation in interface JmolAnnotationParservwr - type - e.g. "clashes"atom - public java.lang.String getAnnotationInfo(Viewer vwr, SV a, java.lang.String match, int type, int modelIndex)
getAnnotationInfo in interface JmolAnnotationParsera - an annotation structure wrapped as a script variablematch - can contain "mappings" to get those specificallypublic java.lang.String getAttachedAtomForPDBH(java.lang.String group3,
java.lang.String name)
group3 - name - private void assignPDBH(java.lang.String group3,
java.lang.String sNames)
public void fixAtoms(int modelIndex,
SV dbObj,
BS bsAddedMask,
int type,
int margin)
fixAtoms in interface JmolAnnotationParser