|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jmol.adapter.smarter.AtomSetCollectionReader
org.jmol.adapter.readers.cifpdb.CifReader
public class CifReader
A true line-free CIF file reader for CIF and mmCIF files.
http://www.iucr.org/iucr-top/cif/ http://www.iucr.org/iucr-top/cif/standard/cifstd5.html
Nested Class Summary | |
---|---|
(package private) class |
CifReader.RidiculousFileFormatTokenizer
A special tokenizer class for dealing with quoted strings in CIF files. |
Field Summary | |
---|---|
private static byte |
ADP_TYPE
|
private static byte |
ALT_ID
|
private static byte |
ANISO_B11
|
private static byte |
ANISO_B12
|
private static byte |
ANISO_B13
|
private static byte |
ANISO_B22
|
private static byte |
ANISO_B23
|
private static byte |
ANISO_B33
|
private static byte |
ANISO_Beta_11
|
private static byte |
ANISO_Beta_12
|
private static byte |
ANISO_Beta_13
|
private static byte |
ANISO_Beta_22
|
private static byte |
ANISO_Beta_23
|
private static byte |
ANISO_Beta_33
|
private static byte |
ANISO_LABEL
|
private static byte |
ANISO_MMCIF_U11
|
private static byte |
ANISO_MMCIF_U12
|
private static byte |
ANISO_MMCIF_U13
|
private static byte |
ANISO_MMCIF_U22
|
private static byte |
ANISO_MMCIF_U23
|
private static byte |
ANISO_MMCIF_U33
|
private static byte |
ANISO_U11
|
private static byte |
ANISO_U12
|
private static byte |
ANISO_U13
|
private static byte |
ANISO_U22
|
private static byte |
ANISO_U23
|
private static byte |
ANISO_U33
|
private static byte |
ASYM_ID
|
private static byte |
ATOM_TYPE_OXIDATION_NUMBER
|
private static byte |
ATOM_TYPE_SYMBOL
|
private static java.lang.String[] |
atomFields
|
private static java.lang.String[] |
atomTypeFields
|
private java.util.Hashtable |
atomTypes
|
private static byte |
AUTH_ATOM
|
private static byte |
B_ISO
|
private static byte |
BEG_ASYM_ID
|
private static byte |
BEG_INS_CODE
|
private static byte |
BEG_SEQ_ID
|
private static byte |
CARTN_X
|
private static byte |
CARTN_Y
|
private static byte |
CARTN_Z
|
static java.lang.String[] |
cellParamNames
|
private static byte |
CHEM_COMP_ID
|
private static byte |
CHEM_COMP_NAME
|
private static java.lang.String[] |
chemCompFields
|
private java.lang.String |
chemicalName
|
private static byte |
COMP_ID
|
private static byte |
CONF_TYPE_ID
|
private java.lang.String |
data
|
private static byte |
DISORDER_GROUP
|
private static byte |
DUMMY_ATOM
|
private static byte |
END_ASYM_ID
|
private static byte |
END_INS_CODE
|
private static byte |
END_SEQ_ID
|
(package private) java.lang.String |
field
|
(package private) int |
fieldCount
|
private byte[] |
fieldOf
|
private char |
firstChar
|
private static byte |
FRACT_X
|
private static byte |
FRACT_Y
|
private static byte |
FRACT_Z
|
private static byte |
GEOM_BOND_ATOM_SITE_LABEL_1
|
private static byte |
GEOM_BOND_ATOM_SITE_LABEL_2
|
private static byte |
GEOM_BOND_SITE_SYMMETRY_2
|
private static java.lang.String[] |
geomBondFields
|
private static byte |
GROUP_PDB
|
private java.lang.String[] |
hetatmData
optional nonloop format -- see 1jsa.cif |
private java.util.Hashtable |
htHetero
|
private java.util.Hashtable |
htSites
|
private static byte |
INS_CODE
|
private java.lang.String |
key
|
private static byte |
LABEL
|
(package private) java.lang.String[] |
loopData
|
private static byte |
MODEL_NO
|
private static byte |
NONE
|
private static byte |
NONPOLY_COMP_ID
|
private static byte |
NONPOLY_ENTITY_ID
|
private static byte |
NONPOLY_NAME
|
private static java.lang.String[] |
nonpolyFields
|
private static byte |
OCCUPANCY
|
private int |
propertyCount
|
private int[] |
propertyOf
|
private static byte |
SEQ_ID
|
private static byte |
SITE_ASYM_ID
|
private static byte |
SITE_COMP_ID
|
private static byte |
SITE_ID
|
private static byte |
SITE_INS_CODE
|
private static byte |
SITE_SEQ_ID
|
private int |
siteNum
|
private static java.lang.String[] |
structConfFields
|
private static java.lang.String[] |
structSheetRangeFields
|
private static java.lang.String[] |
structSiteRangeFields
|
private static byte |
SYM_EQUIV_XYZ
|
private static java.lang.String[] |
symmetryOperationsFields
|
private static byte |
SYMOP_XYZ
|
private java.lang.String |
thisDataSetName
|
private java.lang.String |
thisFormula
|
private java.lang.String |
thisStructuralFormula
|
private CifReader.RidiculousFileFormatTokenizer |
tokenizer
|
private static java.lang.String[] |
TransformFields
|
private static byte |
TYPE_SYMBOL
|
private static byte |
U_ISO_OR_EQUIV
|
Fields inherited from class org.jmol.adapter.smarter.AtomSetCollectionReader |
---|
ANGSTROMS_PER_BOHR, applySymmetryToBonds, atomSetCollection, desiredModelNumber, desiredSpaceGroupIndex, doApplySymmetry, filter, getHeader, ignoreFileSymmetryOperators, ignoreFileUnitCell, iHaveDesiredModel, iHaveSymmetryOperators, iHaveUnitCell, latticeCells, line, modelNumber, needToApplySymmetry, next, notionalUnitCell, prevline, primitiveLatticeVectors, ptLine, reader, readerName, spaceGroup |
Constructor Summary | |
---|---|
CifReader()
|
Method Summary | |
---|---|
private void |
addHetero(java.lang.String groupName,
java.lang.String hetName)
|
private void |
disableField(int fieldIndex)
used for turning off fractional or nonfractional coord. |
private int |
fieldProperty(int i)
|
private boolean |
getData()
|
private static boolean |
isMatch(java.lang.String str1,
java.lang.String str2)
|
private void |
parseLoopParameters(java.lang.String[] fields)
sets up arrays and variables for tokenizer.getData() |
(package private) boolean |
processAtomSiteLoopBlock()
reads atom data in any order |
private void |
processAtomTypeLoopBlock()
reads the oxidation number and associates it with an atom name, which can then later be associated with the right atom indirectly. |
private void |
processCellParameter()
unit cell parameters -- two options, so we use MOD 6 |
private void |
processChemCompLoopBlock()
a general name definition field. |
private void |
processChemicalInfo(java.lang.String type)
reads some of the more interesting info into specific atomSetAuxiliaryInfo elements |
private void |
processDataParameter()
initialize a new atom set |
private void |
processGeomBondLoopBlock()
reads bond data -- N_ijk symmetry business is ignored, so we only indicate bonds within the unit cell to just the original set of atoms. |
private void |
processLoopBlock()
processes loop_ blocks of interest or skips the data |
private void |
processNonpolyData()
|
private void |
processNonpolyLoopBlock()
a HETERO name definition field. |
private void |
processStructConfLoopBlock()
identifies ranges for HELIX and TURN |
private void |
processStructSheetRangeLoopBlock()
identifies sheet ranges |
private void |
processStructSiteBlock()
identifies structure sites |
private void |
processSymmetryOperationsLoopBlock()
retrieves symmetry operations |
private void |
processSymmetrySpaceGroupName()
done by AtomSetCollectionReader |
private void |
processUnitCellTransformMatrix()
the PDB transformation matrix cartesian --> fractional |
AtomSetCollection |
readAtomSetCollection(java.io.BufferedReader reader)
|
private void |
skipLoop()
skips all associated loop data |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private CifReader.RidiculousFileFormatTokenizer tokenizer
private java.lang.String thisDataSetName
private java.lang.String chemicalName
private java.lang.String thisStructuralFormula
private java.lang.String thisFormula
private java.util.Hashtable htHetero
public static final java.lang.String[] cellParamNames
private static final java.lang.String[] TransformFields
private java.lang.String key
private java.lang.String data
private java.util.Hashtable atomTypes
private static final byte ATOM_TYPE_SYMBOL
private static final byte ATOM_TYPE_OXIDATION_NUMBER
private static final java.lang.String[] atomTypeFields
private static final byte NONE
private static final byte TYPE_SYMBOL
private static final byte LABEL
private static final byte AUTH_ATOM
private static final byte FRACT_X
private static final byte FRACT_Y
private static final byte FRACT_Z
private static final byte CARTN_X
private static final byte CARTN_Y
private static final byte CARTN_Z
private static final byte OCCUPANCY
private static final byte B_ISO
private static final byte COMP_ID
private static final byte ASYM_ID
private static final byte SEQ_ID
private static final byte INS_CODE
private static final byte ALT_ID
private static final byte GROUP_PDB
private static final byte MODEL_NO
private static final byte DUMMY_ATOM
private static final byte DISORDER_GROUP
private static final byte ANISO_LABEL
private static final byte ANISO_U11
private static final byte ANISO_U22
private static final byte ANISO_U33
private static final byte ANISO_U12
private static final byte ANISO_U13
private static final byte ANISO_U23
private static final byte ANISO_MMCIF_U11
private static final byte ANISO_MMCIF_U22
private static final byte ANISO_MMCIF_U33
private static final byte ANISO_MMCIF_U12
private static final byte ANISO_MMCIF_U13
private static final byte ANISO_MMCIF_U23
private static final byte U_ISO_OR_EQUIV
private static final byte ANISO_B11
private static final byte ANISO_B22
private static final byte ANISO_B33
private static final byte ANISO_B12
private static final byte ANISO_B13
private static final byte ANISO_B23
private static final byte ANISO_Beta_11
private static final byte ANISO_Beta_22
private static final byte ANISO_Beta_33
private static final byte ANISO_Beta_12
private static final byte ANISO_Beta_13
private static final byte ANISO_Beta_23
private static final byte ADP_TYPE
private static final java.lang.String[] atomFields
private static final byte GEOM_BOND_ATOM_SITE_LABEL_1
private static final byte GEOM_BOND_ATOM_SITE_LABEL_2
private static final byte GEOM_BOND_SITE_SYMMETRY_2
private static final java.lang.String[] geomBondFields
private static final byte NONPOLY_ENTITY_ID
private static final byte NONPOLY_NAME
private static final byte NONPOLY_COMP_ID
private static final java.lang.String[] nonpolyFields
private java.lang.String[] hetatmData
private static final byte CHEM_COMP_ID
private static final byte CHEM_COMP_NAME
private static final java.lang.String[] chemCompFields
private static final byte CONF_TYPE_ID
private static final byte BEG_ASYM_ID
private static final byte BEG_SEQ_ID
private static final byte BEG_INS_CODE
private static final byte END_ASYM_ID
private static final byte END_SEQ_ID
private static final byte END_INS_CODE
private static final java.lang.String[] structConfFields
private static final java.lang.String[] structSheetRangeFields
private static final byte SITE_ID
private static final byte SITE_COMP_ID
private static final byte SITE_ASYM_ID
private static final byte SITE_SEQ_ID
private static final byte SITE_INS_CODE
private static final java.lang.String[] structSiteRangeFields
private int siteNum
private java.util.Hashtable htSites
private static final byte SYMOP_XYZ
private static final byte SYM_EQUIV_XYZ
private static final java.lang.String[] symmetryOperationsFields
int fieldCount
java.lang.String[] loopData
java.lang.String field
private char firstChar
private int[] propertyOf
private byte[] fieldOf
private int propertyCount
Constructor Detail |
---|
public CifReader()
Method Detail |
---|
public AtomSetCollection readAtomSetCollection(java.io.BufferedReader reader)
readAtomSetCollection
in class AtomSetCollectionReader
private void processDataParameter()
private void processChemicalInfo(java.lang.String type) throws java.lang.Exception
type
- "name" "formula" etc.
java.lang.Exception
private void processSymmetrySpaceGroupName() throws java.lang.Exception
java.lang.Exception
private void processCellParameter() throws java.lang.Exception
java.lang.Exception
private void processUnitCellTransformMatrix() throws java.lang.Exception
java.lang.Exception
private boolean getData() throws java.lang.Exception
java.lang.Exception
private void processLoopBlock() throws java.lang.Exception
java.lang.Exception
private void processAtomTypeLoopBlock() throws java.lang.Exception
java.lang.Exception
boolean processAtomSiteLoopBlock() throws java.lang.Exception
java.lang.Exception
private void processGeomBondLoopBlock() throws java.lang.Exception
java.lang.Exception
private void processNonpolyData()
private void processChemCompLoopBlock() throws java.lang.Exception
java.lang.Exception
private void processNonpolyLoopBlock() throws java.lang.Exception
java.lang.Exception
private void addHetero(java.lang.String groupName, java.lang.String hetName)
private void processStructConfLoopBlock() throws java.lang.Exception
java.lang.Exception
private void processStructSheetRangeLoopBlock() throws java.lang.Exception
java.lang.Exception
private void processStructSiteBlock() throws java.lang.Exception
java.lang.Exception
private void processSymmetryOperationsLoopBlock() throws java.lang.Exception
java.lang.Exception
private int fieldProperty(int i)
private void parseLoopParameters(java.lang.String[] fields) throws java.lang.Exception
fields
-
java.lang.Exception
private void disableField(int fieldIndex)
fieldIndex
- private void skipLoop() throws java.lang.Exception
java.lang.Exception
private static boolean isMatch(java.lang.String str1, java.lang.String str2)
str1
- str2
-
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |