BioModel
Date: 2019-10-22

org.jmol.modelsetbio

## Class BioModel

- java.lang.Object
- - org.jmol.modelset.Model
  - - org.jmol.modelsetbio.BioModel

-     public final class BioModel
      extends Model

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `(package private) int` | `bioPolymerCount`
    `BioPolymer[]` | `bioPolymers`
    `(package private) java.lang.String` | `defaultStructure`
    `(package private) boolean` | `isMutated`
    `private Viewer` | `vwr`

    - ### Fields inherited from class org.jmol.modelset.Model

      `act, altLocCount, auxiliaryInfo, biosymmetry, bsAtoms, bsAtomsDeleted, chainCount, chains, dssrCache, firstAtomIndex, frameDelay, groupCount, hasRasmolHBonds, hydrogenCount, isBioModel, isJmolDataFrame, isModelKit, isPdbWithMultipleBonds, loadScript, loadState, mat4, modelIndex, moleculeCount, ms, orientation, pdbID, properties, selectedTrajectory, simpleCage, structureTainted, trajectoryBaseIndex`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BioModel(ModelSet modelSet, int modelIndex, int trajectoryBaseIndex, java.lang.String jmolData, java.util.Properties properties, java.util.Map<java.lang.String,java.lang.Object> auxiliaryInfo)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `(package private) int` | `addBioPolymer(BioPolymer polymer)`
    `(package private) void` | `addSecondaryStructure(STR type, java.lang.String structureID, int serialID, int strandCount, int startChainID, int startSeqcode, int endChainID, int endSeqcode, int istart, int iend, javajs.util.BS bsAssigned)`
    `(package private) void` | `addStructureByBS(int count, int dsspType, STR type, javajs.util.BS bs)`
    `private java.lang.String` | `calculateDssx(javajs.util.Lst<Bond> vHBonds, boolean doReport, boolean dsspIgnoreHydrogen, boolean setStructure, int version)`
    `(package private) java.lang.String` | `calculateStructures(boolean asDSSP, boolean doReport, boolean dsspIgnoreHydrogen, boolean setStructure, boolean includeAlpha, int version)`
    `(package private) void` | `clearBioPolymers()`
    `void` | `fixIndices(int modelIndex, int nAtomsDeleted, javajs.util.BS bsDeleted)`
    `boolean` | `freeze()`
    `void` | `getAtomicDSSRData(float[] dssrData, java.lang.String dataType)`
    `javajs.util.Lst<javajs.util.BS>` | `getBioBranches(javajs.util.Lst<javajs.util.BS> biobranches)`
    `int` | `getBioPolymerCount()`
    `(package private) java.lang.Object` | `getCachedAnnotationMap(java.lang.String key, java.lang.Object ann)`
    `boolean` | `getConformation(int conformationIndex0, boolean doSet, javajs.util.BS bsAtoms, javajs.util.BS bsRet)`
    `void` | `getDefaultLargePDBRendering(javajs.util.SB sb, int maxAtoms)`
    `java.lang.String` | `getFullPDBHeader()`
    `void` | `getPdbData(java.lang.String type, char ctype, boolean isDraw, javajs.util.BS bsSelected, javajs.util.OC out, LabelToken[] tokens, javajs.util.SB pdbCONECT, javajs.util.BS bsWritten)`
    `(package private) void` | `getRasmolHydrogenBonds(javajs.util.BS bsA, javajs.util.BS bsB, javajs.util.Lst<Bond> vHBonds, boolean nucleicOnly, int nMax, boolean dsspIgnoreHydrogens, javajs.util.BS bsHBonds, int version)`
    `java.lang.String` | `getUnitID(Atom atom, int flags)` Get a unitID.
    `(package private) void` | `recalculateLeadMidpointsAndWingVectors()`
    `void` | `resetRasmolBonds(javajs.util.BS bs, int dsspVersion)` from Trajectory.setAtomPositions base models only; not trajectories

    - ### Methods inherited from class org.jmol.modelset.Model

      `fixIndicesM, freezeM, getBondCount, getChainAt, getChainCount, getGroupCount, getTrueAtomCount, isContainedIn, resetBoundCount, resetDSSR, set`

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

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

- - ### Field Detail

    - #### vwr

          private Viewer vwr

    - #### bioPolymerCount

          int bioPolymerCount

    - #### bioPolymers

          public BioPolymer[] bioPolymers

    - #### isMutated

          boolean isMutated

    - #### defaultStructure

          java.lang.String defaultStructure

  - ### Constructor Detail

    - #### BioModel

          BioModel(ModelSet modelSet,
                   int modelIndex,
                   int trajectoryBaseIndex,
                   java.lang.String jmolData,
                   java.util.Properties properties,
                   java.util.Map<java.lang.String,java.lang.Object> auxiliaryInfo)

  - ### Method Detail

    - #### addBioPolymer

          int addBioPolymer(BioPolymer polymer)

    - #### addSecondaryStructure

          void addSecondaryStructure(STR type,
                                     java.lang.String structureID,
                                     int serialID,
                                     int strandCount,
                                     int startChainID,
                                     int startSeqcode,
                                     int endChainID,
                                     int endSeqcode,
                                     int istart,
                                     int iend,
                                     javajs.util.BS bsAssigned)

    - #### addStructureByBS

          void addStructureByBS(int count,
                                int dsspType,
                                STR type,
                                javajs.util.BS bs)

    - #### calculateDssx

          private java.lang.String calculateDssx(javajs.util.Lst<Bond> vHBonds,
                                                 boolean doReport,
                                                 boolean dsspIgnoreHydrogen,
                                                 boolean setStructure,
                                                 int version)

    - #### calculateStructures

          java.lang.String calculateStructures(boolean asDSSP,
                                               boolean doReport,
                                               boolean dsspIgnoreHydrogen,
                                               boolean setStructure,
                                               boolean includeAlpha,
                                               int version)

    - #### clearBioPolymers

          void clearBioPolymers()

    - #### fixIndices

          public void fixIndices(int modelIndex,
                                 int nAtomsDeleted,
                                 javajs.util.BS bsDeleted)

      Overrides:
        `fixIndices` in class `Model`

    - #### freeze

          public boolean freeze()

      Overrides:
        `freeze` in class `Model`

    - #### getBioBranches

          public javajs.util.Lst<javajs.util.BS> getBioBranches(javajs.util.Lst<javajs.util.BS> biobranches)

    - #### getBioPolymerCount

          public int getBioPolymerCount()

    - #### getCachedAnnotationMap

          java.lang.Object getCachedAnnotationMap(java.lang.String key,
                                                  java.lang.Object ann)

    - #### getConformation

          public boolean getConformation(int conformationIndex0,
                                         boolean doSet,
                                         javajs.util.BS bsAtoms,
                                         javajs.util.BS bsRet)

      Parameters:
        `conformationIndex0` -
        `doSet` -
        `bsAtoms` -
        `bsRet` -
      Returns:
        true;

    - #### getDefaultLargePDBRendering

          public void getDefaultLargePDBRendering(javajs.util.SB sb,
                                                  int maxAtoms)

    - #### getFullPDBHeader

          public java.lang.String getFullPDBHeader()

    - #### getPdbData

          public void getPdbData(java.lang.String type,
                                 char ctype,
                                 boolean isDraw,
                                 javajs.util.BS bsSelected,
                                 javajs.util.OC out,
                                 LabelToken[] tokens,
                                 javajs.util.SB pdbCONECT,
                                 javajs.util.BS bsWritten)

    - #### getRasmolHydrogenBonds

          void getRasmolHydrogenBonds(javajs.util.BS bsA,
                                      javajs.util.BS bsB,
                                      javajs.util.Lst<Bond> vHBonds,
                                      boolean nucleicOnly,
                                      int nMax,
                                      boolean dsspIgnoreHydrogens,
                                      javajs.util.BS bsHBonds,
                                      int version)

    - #### getUnitID

          public java.lang.String getUnitID(Atom atom,
                                            int flags)

      Get a unitID. Note that we MUST go through the | after InsCode, because if we do not do that we cannot match residues only using string matching.
      Parameters:
        `atom` -
        `flags` -
      Returns:
        a unitID

    - #### recalculateLeadMidpointsAndWingVectors

          void recalculateLeadMidpointsAndWingVectors()

    - #### resetRasmolBonds

          public void resetRasmolBonds(javajs.util.BS bs,
                                       int dsspVersion)

      from Trajectory.setAtomPositions base models only; not trajectories
      Parameters:
        `bs` -
        `dsspVersion` -

    - #### getAtomicDSSRData

          public void getAtomicDSSRData(float[] dssrData,
                                        java.lang.String dataType)