Package org.jmol.dssx
Class AnnotationParser
- java.lang.Object
-
- org.jmol.dssx.AnnotationParser
-
- All Implemented Interfaces:
JmolAnnotationParser
- Direct Known Subclasses:
DSSR1
public class AnnotationParser extends Object implements JmolAnnotationParser
A parser for output from 3DNA web service. load =1d66/dssr also other annotations now, load *1cbs/dom calls EBI for the mmCIF file and also retrieves the domains mapping JSON report. load *1cbs/val calls EBI for the mmCIF file and also retrieves the validation outliers JSON report. Bob Hanson July 2014- Author:
- Bob Hanson hansonr@stolaf.edu
-
-
Field Summary
Fields Modifier and Type Field Description private static Map<String,String>pdbAtomForH
-
Constructor Summary
Constructors Constructor Description AnnotationParser()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidassignPDBH(String group3, String sNames)StringcalculateDSSRStructure(Viewer vwr, javajs.util.BS bsAtoms)StringcatalogStructureUnits(Viewer viewer, SV map0, int[] modelAtomIndices, Map<String,int[]> resMap, Object object, Map<String,Integer> modelMap)private booleancatalogUnit(Viewer viewer, float[][] vals, String unitID, float val, javajs.util.BS bsAtoms, int[] modelAtomIndices, Map<String,int[]> resMap, Map<String,Integer> atomMap, Map<String,Integer> modelMap)Carried out for each unitjavajs.util.Lst<Object>catalogValidations(Viewer viewer, SV map0, int[] modelAtomIndices, Map<String,int[]> resMap, Map<String,Integer> atomMap, Map<String,Integer> modelMap)Returns a Lst<Object> of property data in the form name(String), data(float[]), modelIndex (Integer), isGroup (Boolean);private voidfindAnnotationAtoms(Viewer vwr, String name, javajs.util.Lst<SV> _list, String key, javajs.util.BS bs)find annotations; allows for wild cards InterPro.* where .....voidfixAtoms(int modelIndex, SV dbObj, javajs.util.BS bsAddedMask, int type, int margin)Adjusts _atoms bitset to account for added hydrogen atoms.StringfixDSSRJSONMap(Map<String,Object> map)StringgetAnnotationInfo(Viewer vwr, SV a, String match, int type, int modelIndex)Get a string report of annotation dataprivate voidgetAnnotationKVPairs(SV a, String match, String dotPath, javajs.util.SB sb, String pre, boolean showDetail, boolean isMappingOnly, int type)Construct a nice listing for this annotation, including validationjavajs.util.BSgetAtomBits(Viewer vwr, String key, Object dbObj, Map<String,Object> annotationCache, int type, int modelIndex, javajs.util.BS bsModel)voidgetAtomicDSSRData(ModelSet ms, int modelIndex, float[] dssrData, String dataType)javajs.util.Lst<Float>getAtomValidation(Viewer vwr, String type, Atom atom)Get all validation values corresponding to a specific validation type.StringgetAttachedAtomForPDBH(String group3, String name)Finds the standard attached heavy atom for a PDB H atom; used in EBI clash validation.voidgetBasePairs(Viewer vwr, int modelIndex)private StringgetDataKey(int type)javajs.util.P3[]getDSSRFrame(Map<String,Object> dssrNT)StringgetHBonds(ModelSet ms, int modelIndex, javajs.util.Lst<Bond> vHBonds, boolean doReport)private SVgetMainItem(Map<String,SV> 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 _pathprivate javajs.util.BSsetAnnotationAtoms(Viewer vwr, Map<String,SV> mapping, int i)voidsetGroup1(ModelSet ms, int modelIndex)
-
-
-
Method Detail
-
getAnnotationKVPairs
private void getAnnotationKVPairs(SV a, String match, String dotPath, javajs.util.SB sb, String pre, boolean showDetail, boolean isMappingOnly, int type)
Construct a nice listing for this annotation, including validation- Parameters:
a-match-dotPath-sb-pre-showDetail-isMappingOnly-type-
-
getDataKey
private String getDataKey(int type)
-
catalogStructureUnits
public String catalogStructureUnits(Viewer viewer, SV map0, int[] modelAtomIndices, Map<String,int[]> resMap, Object object, Map<String,Integer> modelMap)
- Specified by:
catalogStructureUnitsin interfaceJmolAnnotationParser
-
catalogValidations
public javajs.util.Lst<Object> catalogValidations(Viewer viewer, SV map0, int[] modelAtomIndices, Map<String,int[]> resMap, Map<String,Integer> atomMap, Map<String,Integer> modelMap)
Returns a Lst<Object> of property data in the form name(String), data(float[]), modelIndex (Integer), isGroup (Boolean);- Specified by:
catalogValidationsin interfaceJmolAnnotationParser
-
initializeAnnotation
public 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- Specified by:
initializeAnnotationin interfaceJmolAnnotationParser- Parameters:
objAnn-- Returns:
- Lst of mappings
-
findAnnotationAtoms
private void findAnnotationAtoms(Viewer vwr, String name, javajs.util.Lst<SV> _list, String key, javajs.util.BS bs)
find annotations; allows for wild cards InterPro.* where .....- Parameters:
vwr-name-_list-key-bs-
-
setAnnotationAtoms
private javajs.util.BS setAnnotationAtoms(Viewer vwr, Map<String,SV> mapping, int i)
-
catalogUnit
private boolean catalogUnit(Viewer viewer, float[][] vals, String unitID, float val, javajs.util.BS bsAtoms, int[] modelAtomIndices, Map<String,int[]> resMap, Map<String,Integer> atomMap, Map<String,Integer> modelMap)
Carried out for each unit- Parameters:
viewer-vals- model-based array of float values for a given validation typeunitID-val-bsAtoms-modelAtomIndices-resMap-atomMap-modelMap- TODO- Returns:
- true if this is residue-based validation (to be added to H atoms when pdbAddHydrogens is set
-
getAtomBits
public javajs.util.BS getAtomBits(Viewer vwr, String key, Object dbObj, Map<String,Object> annotationCache, int type, int modelIndex, javajs.util.BS bsModel)
- Specified by:
getAtomBitsin interfaceJmolAnnotationParser
-
getAtomValidation
public javajs.util.Lst<Float> getAtomValidation(Viewer vwr, String type, Atom atom)
Get all validation values corresponding to a specific validation type. Used by label %[validation.clashes]- Specified by:
getAtomValidationin interfaceJmolAnnotationParser- Parameters:
vwr-type- e.g. "clashes"atom-- Returns:
- a list of Float values associated with this atom and this type of validation
-
getAnnotationInfo
public String getAnnotationInfo(Viewer vwr, SV a, String match, int type, int modelIndex)
Get a string report of annotation data- Specified by:
getAnnotationInfoin interfaceJmolAnnotationParser- Parameters:
a- an annotation structure wrapped as a script variablematch- can contain "mappings" to get those specifically- Returns:
- tab-separated line-based listing
-
getAttachedAtomForPDBH
public String getAttachedAtomForPDBH(String group3, String name)
Finds the standard attached heavy atom for a PDB H atom; used in EBI clash validation.- Parameters:
group3-name-- Returns:
- name of attached atom or hName
-
fixAtoms
public void fixAtoms(int modelIndex, SV dbObj, javajs.util.BS bsAddedMask, int type, int margin)Adjusts _atoms bitset to account for added hydrogen atoms. A margin of 20 allows for 20 added H atoms per group- Specified by:
fixAtomsin interfaceJmolAnnotationParser
-
getBasePairs
public void getBasePairs(Viewer vwr, int modelIndex)
- Specified by:
getBasePairsin interfaceJmolAnnotationParser
-
calculateDSSRStructure
public String calculateDSSRStructure(Viewer vwr, javajs.util.BS bsAtoms)
- Specified by:
calculateDSSRStructurein interfaceJmolAnnotationParser
-
fixDSSRJSONMap
public String fixDSSRJSONMap(Map<String,Object> map)
- Specified by:
fixDSSRJSONMapin interfaceJmolAnnotationParser
-
getHBonds
public String getHBonds(ModelSet ms, int modelIndex, javajs.util.Lst<Bond> vHBonds, boolean doReport)
- Specified by:
getHBondsin interfaceJmolAnnotationParser
-
getAtomicDSSRData
public void getAtomicDSSRData(ModelSet ms, int modelIndex, float[] dssrData, String dataType)
- Specified by:
getAtomicDSSRDatain interfaceJmolAnnotationParser
-
setGroup1
public void setGroup1(ModelSet ms, int modelIndex)
- Specified by:
setGroup1in interfaceJmolAnnotationParser
-
getDSSRFrame
public javajs.util.P3[] getDSSRFrame(Map<String,Object> dssrNT)
- Specified by:
getDSSRFramein interfaceJmolAnnotationParser
-
-