Victor
 All Data Structures Functions Variables Friends Pages
PdbLoader Class Reference

Loads components (Atoms, Groups, Spacer, etc.) in standard PDB format. More...

+ Inheritance diagram for PdbLoader:
+ Collaboration diagram for PdbLoader:

Public Member Functions

 PdbLoader (istream &_input=cin, bool _permissive=false, bool _noHAtoms=false, bool _noHetAtoms=false, bool _noSecondary=false, bool _noConnection=false, bool _noWater=true, bool _verb=true, bool _allChains=false, string _NULL="", bool _onlyMetal=false, bool _noNucleotideChains=true)
 
void checkAndSetChain ()
 
void checkModel ()
 
vector< char > getAllChains ()
 
unsigned int getMaxModels ()
 
unsigned int getMaxModelsFast ()
 
virtual void loadProtein (Protein &prot)
 

Protected Member Functions

void assignSecondary (Spacer &sp)
 
bool inSideChain (const AminoAcid &aa, const Atom &at)
 
int parsePDBline (string atomLine, string tag, Ligand *lig, AminoAcid *aa)
 
bool setBonds (Spacer &sp)
 

Detailed Description

Loads components (Atoms, Groups, Spacer, etc.) in standard PDB format.

Constructor & Destructor Documentation

PdbLoader ( istream &  _input = cin,
bool  _permissive = false,
bool  _noHAtoms = false,
bool  _noHetAtoms = false,
bool  _noSecondary = false,
bool  _noConnection = false,
bool  _noWater = true,
bool  _verb = true,
bool  _allChains = false,
string  _NULL = "",
bool  _onlyMetal = false,
bool  _noNucleotideChains = true 
)

Constructor.

Parameters
_input= the PDB file object
_permissive= if true, allows loading residues with missing atoms
_noHAtoms= if true, doesn't load Hydrogens
_noHetAtoms= if true, doesn't load het atoms
_noSecondary= if true, doesn't load secondary structure (neither the one calculated from torsional angles nor the DSSP)
_noConnection= if true, doesn't connect residues
_noWater= if true, doesn't load water atoms
_verb= if true, verbose mode
_allChains= if true, loads all chains
_NULL= the name of the chain to be loaded, if not provided only loads the first chain
_onlyMetal= if true, load only metals as ligands
_noNucleotideChains= if true, doesn't load DNA/RNA chains

Member Function Documentation

void assignSecondary ( Spacer sp)
protected

Try to assigns the secondary structure from the PDB header. If not present uses Spacer's setStateFromTorsionAngles().

Parameters
Spacerreference
void checkAndSetChain ( )

If user selected a chain, it check validity of this choice, otherwise it select first available chain.

Parameters
void
Returns
void
void checkModel ( )

If user selected a Model, it check validity of this choice, otherwise it select first available chain.

Parameters
void
Returns
void
vector< char > getAllChains ( )

Returns all available chain IDs for a PDB file.

Parameters
void
Returns
vector of chars
unsigned int getMaxModels ( )

Reads in the maximum allowed number of NMR models, zero otherwise

Parameters
none
unsigned int getMaxModelsFast ( )

Reads in the maximum allowed number of NMR models, zero otherwise. This is a faster version because we only need to read the line with EXPDTA

Parameters
void
Returns
unsigned int
bool inSideChain ( const AminoAcid aa,
const Atom at 
)
protected

Private helper function to determine if atom is backbone or sidechain.

Parameters
Spacerreference
Returns
bool
void loadProtein ( Protein prot)
virtual

Core function for PDB file parsing.

Parameters
prot(Protein&)

Reimplemented from Loader.

int parsePDBline ( string  atomLine,
string  tag,
Ligand lig,
AminoAcid aa 
)
protected

Parse a single line of a PDB file.

Parameters
atomLine(string) the whole PDB line as it is
tag(string) = the first field (keyword) in a PDB line
lig(Ligand) pointer
aa(AminoAcid) pointer
Returns
Residue number read from the PDB line (int)
bool setBonds ( Spacer sp)
protected

Private helper function to set bond structure after loading the spacer.

Parameters
Spacerreference
Returns
bool

The documentation for this class was generated from the following files: