DSSR1
Date: 2019-10-22

org.jmol.dssx

## Class DSSR1

- java.lang.Object
- - org.jmol.dssx.AnnotationParser
  - - org.jmol.dssx.DSSR1

- All Implemented Interfaces:
    JmolAnnotationParser

      public class DSSR1
      extends AnnotationParser

  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 and Description
    --- | ---
    `private static java.lang.String` | `DSSR_PATHS` The paths to the unit id data within the structure.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DSSR1()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `calculateDSSRStructure(Viewer vwr, javajs.util.BS bsAtoms)`
    `java.lang.String` | `fixDSSRJSONMap(java.util.Map<java.lang.String,java.lang.Object> map)` kissingLoops and coaxStacks use index arrays instead of duplication;
    `private void` | `fixIndices(java.util.Map<java.lang.String,java.lang.Object> map, java.lang.String key, java.lang.String root)` create a key/value pair root+"s" for all indices of root+"_indices"
    `javajs.util.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, javajs.util.BS bsModel)`
    `void` | `getAtomicDSSRData(ModelSet ms, int modelIndex, float[] dssrData, java.lang.String dataType)`
    `void` | `getBasePairs(Viewer vwr, int modelIndex)`
    `private java.lang.String` | `getDSSRForModel(Viewer vwr, int modelIndex)`
    `javajs.util.P3[]` | `getDSSRFrame(java.util.Map<java.lang.String,java.lang.Object> nt)`
    `java.lang.String` | `getHBonds(ModelSet ms, int modelIndex, javajs.util.Lst<Bond> vHBonds, boolean doReport)`
    `private void` | `getPoint(java.util.Map<java.lang.String,java.lang.Object> frame, java.lang.String item, javajs.util.P3 pt)`
    `private void` | `setBioPolymers(BioModel m, boolean b)`
    `void` | `setGroup1(ModelSet ms, int modelIndex)`
    `private NucleicMonomer` | `setRes(Atom atom)`

    - ### Methods inherited from class org.jmol.dssx.AnnotationParser

      `catalogStructureUnits, catalogValidations, fixAtoms, getAnnotationInfo, getAtomValidation, getAttachedAtomForPDBH, initializeAnnotation`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### DSSR_PATHS

          private static final java.lang.String DSSR_PATHS

      The paths to the unit id data within the structure. This is one long string; all lowercase, each surrounded by double periods.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### DSSR1

          public DSSR1()

  - ### Method Detail

    - #### calculateDSSRStructure

          public java.lang.String calculateDSSRStructure(Viewer vwr,
                                                         javajs.util.BS bsAtoms)

      Specified by:
        `calculateDSSRStructure` in interface `JmolAnnotationParser`
      Overrides:
        `calculateDSSRStructure` in class `AnnotationParser`

    - #### getDSSRForModel

          private java.lang.String getDSSRForModel(Viewer vwr,
                                                   int modelIndex)

    - #### fixDSSRJSONMap

          public java.lang.String fixDSSRJSONMap(java.util.Map<java.lang.String,java.lang.Object> map)

      kissingLoops and coaxStacks use index arrays instead of duplication;
      Specified by:
        `fixDSSRJSONMap` in interface `JmolAnnotationParser`
      Overrides:
        `fixDSSRJSONMap` in class `AnnotationParser`
      Parameters:
        `map` -
      Returns:
        msg

    - #### fixIndices

          private void fixIndices(java.util.Map<java.lang.String,java.lang.Object> map,
                                  java.lang.String key,
                                  java.lang.String root)

      create a key/value pair root+"s" for all indices of root+"_indices"
      Parameters:
        `map` -
        `key` -
        `root` -

    - #### getBasePairs

          public void getBasePairs(Viewer vwr,
                                   int modelIndex)

      Specified by:
        `getBasePairs` in interface `JmolAnnotationParser`
      Overrides:
        `getBasePairs` in class `AnnotationParser`

    - #### setBioPolymers

          private void setBioPolymers(BioModel m,
                                      boolean b)

    - #### setRes

          private NucleicMonomer setRes(Atom atom)

    - #### getAtomBits

          public javajs.util.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,
                                            javajs.util.BS bsModel)

      Specified by:
        `getAtomBits` in interface `JmolAnnotationParser`
      Overrides:
        `getAtomBits` in class `AnnotationParser`

    - #### getHBonds

          public java.lang.String getHBonds(ModelSet ms,
                                            int modelIndex,
                                            javajs.util.Lst<Bond> vHBonds,
                                            boolean doReport)

      Specified by:
        `getHBonds` in interface `JmolAnnotationParser`
      Overrides:
        `getHBonds` in class `AnnotationParser`

    - #### setGroup1

          public void setGroup1(ModelSet ms,
                                int modelIndex)

      Specified by:
        `setGroup1` in interface `JmolAnnotationParser`
      Overrides:
        `setGroup1` in class `AnnotationParser`

    - #### getAtomicDSSRData

          public void getAtomicDSSRData(ModelSet ms,
                                        int modelIndex,
                                        float[] dssrData,
                                        java.lang.String dataType)

      Specified by:
        `getAtomicDSSRData` in interface `JmolAnnotationParser`
      Overrides:
        `getAtomicDSSRData` in class `AnnotationParser`

    - #### getDSSRFrame

          public javajs.util.P3[] getDSSRFrame(java.util.Map<java.lang.String,java.lang.Object> nt)

      Specified by:
        `getDSSRFrame` in interface `JmolAnnotationParser`
      Overrides:
        `getDSSRFrame` in class `AnnotationParser`

    - #### getPoint

          private void getPoint(java.util.Map<java.lang.String,java.lang.Object> frame,
                                java.lang.String item,
                                javajs.util.P3 pt)