throws an exception, it tries a
, again. Might be just to
clear everything out?
In the loaders, conformation information is ignored. Fragments are
- Conformation* - intermediate container for various conformation types (COIL, HELIX, etc.)
- StructureComponent* - primarily Fragment, in this discussion.
Look in the
RCSB MBT Libs
project, in the source dir
of this (unless otherwise specified).
is an abstract class. The loaders derive a helper class from it, and use it to push off all their
discovered records, without analysis.
is the real core of the structure model. The information kept here is what is actually contains
the atom/bond/fragment relationships (The raw types have been moved to
First, any definitions that are picked up in the file are kept in a list along with all of the other
-derived items defined there (Atoms, Residues, Chains, Bonds). This list is kept in the
class (abstract class derived by loader into a loader-specific implementation). They simply consist
of raw information as they were collected from the file. These classes (
(which is derived from
If they exist, these records are examined (in
- look for
). An intermediate type called
is used to store residue ranges for each Conformation
If they don't exist, then
is called, which creates a
object used to synthesize the ranges through a heuristic
is the algorithm cited in the comments.) Basically, it consists of subdividing ranges until the
conformation is determined. Note the 'Ss'-prefix helper classes. ('Ss' stands for 'SecondaryStructure').
Finally, the completed
objects are traversed and turned into
types, which is the destination
type and is what ultimately ends up in the
StructureMap lists. Each fragment has a
) set to indicate what conformation it is,
and a list of residues that make it up.