# Class Chain

java.lang.Object
org.jmol.modelset.Chain

All Implemented Interfaces:
  `Structure`

public final class Chain extends Object implements Structure
A Model is a collection of Chains of Groups of Atoms. Chains hold overall information relating to a Monomer, particularly whether this monomer is RNA or DNA.

## Field Summary

Fields
Modifier and Type
Field
Description
`int`
`chainID`
chainID is either the integer form of a single character or a pointer into a map held in Viewer that allows retrieval of a longer string
`int`
`chainNo`
chainNo is for information purposes only; retrieved by {atoms}.chainNo
`int`
`groupCount`
`Group[]`
`groups`
Groups form the essence of what a Chain is.
`Model`
`model`
`int`
`selectedGroupCount`
Calculated just prior to coloring by group so that the range is appropriate for each chain.

## Method Summary

Modifier and Type
Method
Description
`Group`
`addGroup(Group group, int groupIndex)`
`String`
`getIDStr()`
`void`
`setAtomBits(BS bs)`
`void`
`setAtomBitsAndClear(BS bs, BS bsOut)`

### Methods inherited from class Object

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

## Field Details

### model

public Model model

### chainID

public int chainID
chainID is either the integer form of a single character or a pointer into a map held in Viewer that allows retrieval of a longer string

### chainNo

public int chainNo
chainNo is for information purposes only; retrieved by {atoms}.chainNo

### groups

public Group[] groups
Groups form the essence of what a Chain is. This number will be 0 if there is no chain designation in the PDB or CIF file or when the file is not of a type that would have chain designations.

### groupCount

public int groupCount

### selectedGroupCount

public int selectedGroupCount
Calculated just prior to coloring by group so that the range is appropriate for each chain.

## Method Details

### getIDStr

public String getIDStr()

Returns:
  actual string form of the chain identifier

### setAtomBits

public void setAtomBits(BS bs)

Specified by:
  `setAtomBits` in interface `Structure`

### setAtomBitsAndClear

public void setAtomBitsAndClear(BS bs, BS bsOut)

Specified by:
  `setAtomBitsAndClear` in interface `Structure`

### addGroup

public Group addGroup(Group group, int groupIndex)