Miscellaneous
[Kernel Classes]


Classes

class  BALL::Bond
class  BALL::ExpressionParser
class  BALL::ExpressionTree
class  BALL::Element
class  BALL::SecondaryStructure

Modules

 Periodic Table of Elements

Functions

template<class AtomContainerType >
void BALL::cloneBonds (const AtomContainerType &atom_container, AtomContainerType &cloned)

Variables

bool BALL::clone_bonds
BALL_EXPORT PTE_ BALL::PTE
typedef std::list< Atom * > BALL::AtomList
typedef std::list< Bond * > BALL::BondList
typedef std::list
< AtomContainer * > 
BALL::AtomContainerList
typedef std::list< PDBAtom * > BALL::PDBAtomList
typedef std::list< Residue * > BALL::ResidueList
typedef std::list< Fragment * > BALL::FragmentList
typedef std::list< Molecule * > BALL::MoleculeList
typedef std::list< Protein * > BALL::ProteinList
typedef std::list
< SecondaryStructure * > 
BALL::SecondaryStructureList
typedef std::list< Chain * > BALL::ChainList
typedef std::list< Nucleotide * > BALL::NucleotideList
typedef std::list< NucleicAcid * > BALL::NucleicAcidList
BALL_EXPORT AtomList BALL::atoms (const AtomContainer &fragment, const String &expression=String())
BALL_EXPORT AtomList BALL::atoms (const AtomList &atoms, const String &expression)
BALL_EXPORT PDBAtomList BALL::PDBAtoms (const AtomContainer &fragment, const String &expression=String())
BALL_EXPORT BondList BALL::bonds (const AtomContainer &fragment, bool selected_only=false)
BALL_EXPORT BondList BALL::bonds (const Atom &atom)
BALL_EXPORT AtomContainerList BALL::atomContainers (const AtomContainer &fragment, bool selected_only=false)
BALL_EXPORT ResidueList BALL::residues (const AtomContainer &fragment, bool selected_only=false)
BALL_EXPORT FragmentList BALL::fragments (const AtomContainer &fragment, bool selected_only=false)
BALL_EXPORT MoleculeList BALL::molecules (const AtomContainer &fragment, bool selected_only=false)
BALL_EXPORT ProteinList BALL::proteins (const AtomContainer &fragment, bool selected_only=false)
BALL_EXPORT SecondaryStructureList BALL::secondaryStructures (const AtomContainer &fragment, bool selected_only=false)
BALL_EXPORT ChainList BALL::chains (const AtomContainer &fragment, bool selected_only=false)
BALL_EXPORT NucleicAcidList BALL::nucleicAcids (const AtomContainer &fragment, bool selected_only=false)
BALL_EXPORT NucleotideList BALL::nucleotides (const AtomContainer &fragment, bool selected_only=false)

Detailed Description

Further classes and functions related to the kernel classes


Typedef Documentation

typedef std::list<AtomContainer*> BALL::AtomContainerList
typedef std::list<Atom*> BALL::AtomList

Kernel object list classes. These classes can be used to hold pointers to kernel objects. They are returned by kernel extractors. These lists are a convenient way to execute operations on subsets of kernel structures and an often convenient, albeit slower, alternative to iterators. They are just convenient tyepdefs, so they will behave exactly as any STL list. In order to create these lists from kernel objects, use extractors .

typedef std::list<Bond*> BALL::BondList
typedef std::list<Chain*> BALL::ChainList
typedef std::list<Fragment*> BALL::FragmentList
typedef std::list<Molecule*> BALL::MoleculeList
typedef std::list<NucleicAcid*> BALL::NucleicAcidList
typedef std::list<Nucleotide*> BALL::NucleotideList
typedef std::list<PDBAtom*> BALL::PDBAtomList
typedef std::list<Protein*> BALL::ProteinList
typedef std::list<Residue*> BALL::ResidueList
typedef std::list<SecondaryStructure*> BALL::SecondaryStructureList

Function Documentation

BALL_EXPORT AtomContainerList BALL::atomContainers ( const AtomContainer &  fragment,
bool  selected_only = false 
)

Extract all base fragments from a kernel data structure.

BALL_EXPORT AtomList BALL::atoms ( const AtomList &  atoms,
const String &  expression 
)

Extract atoms matching an expression. This method extracts all atoms from an atom list that match the Expression expression.

Parameters:
atoms the AtomContainer containing the atoms
expression the expression that selects the atoms
BALL_EXPORT AtomList BALL::atoms ( const AtomContainer &  fragment,
const String &  expression = String() 
)

Extraction functions for external iteration. The following set of functions can by used from python to compile lists of objects from BALL kernel data structures. Extract atoms matching an expression. This method extracts all atoms of a kernel data structure into a list that match the Expression expression. If no expression is given, all atoms will be extracted.

Parameters:
fragment the AtomContainer containing the atoms.
expression the expression that selects the atoms (default: no expression)

Referenced by BALL::PDB::Structure::clear().

BALL_EXPORT BondList BALL::bonds ( const Atom &  atom  ) 

Extract all bonds from an atom. This function returns all bonds of an atom.

BALL_EXPORT BondList BALL::bonds ( const AtomContainer &  fragment,
bool  selected_only = false 
)

Extract all bonds from a kernel data structure. This function extracts all bonds from the atoms contained in the base fragment. If selected_only is set to true, only bonds are extracted where both atoms are selected.

BALL_EXPORT ChainList BALL::chains ( const AtomContainer &  fragment,
bool  selected_only = false 
)

Extract all chains from a kernel data structure.

template<class AtomContainerType >
void BALL::cloneBonds ( const AtomContainerType &  atom_container,
AtomContainerType &  cloned 
) [inline]

Bond cloning method. This template function implements the cloning of Bond s in AtomContainers. As Bonds are not integrated in the Composite tree structure of kernel objects, a simple deep cloning of a composite only copies all composites down to atoms. Bonds are not included because they are not children of the atoms but stored in a bond array. However, cloning of any kernel objects should naturally clone bonds, too. The implementation of this {cloning-with-bonds} is divided in two parts: first, a deep (recursive) cloning of all composites is performed. Second, the root composite (which is always an AtomContainer) calls cloneBonds for the cloned system to copy the bonds.

The trouble with this implementation is that each clone method must have the possibility to call cloneBonds, but only the first clone method in the recursive call tree is allowed to call it. This is guaranteed by the use of a global static variable clone_bonds . The first clone method called sets clone_bonds to false thereby forbidding the use of cloneBonds to all subsequently called clone methods. Then, it calls cloneBonds and resets clone_bonds to true.
This method assumes that the second argument (the composite without bonds) is a deep copy of the first argument (the composite containing the atoms). If the tree structures of both composites are not isomorphous, bonds are created in an unpredictable way.
Namespace: BALL
Parameters:
atom_container the atom_container containing the bonds
cloned a deep copy of atom_container

References BALL::Bond::createBond(), BALL::Bond::finalize(), BALL::Bond::setFirstAtom(), and BALL::Bond::setSecondAtom().

BALL_EXPORT FragmentList BALL::fragments ( const AtomContainer &  fragment,
bool  selected_only = false 
)

Extract all fragments from a kernel data structure.

BALL_EXPORT MoleculeList BALL::molecules ( const AtomContainer &  fragment,
bool  selected_only = false 
)

Extract all molecules from a kernel data structure.

BALL_EXPORT NucleicAcidList BALL::nucleicAcids ( const AtomContainer &  fragment,
bool  selected_only = false 
)

Extract all nucleic acids from a kernel data structure.

BALL_EXPORT NucleotideList BALL::nucleotides ( const AtomContainer &  fragment,
bool  selected_only = false 
)

Extract all nucleotides from a kernel data structure.

BALL_EXPORT PDBAtomList BALL::PDBAtoms ( const AtomContainer &  fragment,
const String &  expression = String() 
)

Extract PDB atoms matching an expression. This method extracts all PDB atoms of a kernel data structure into a list that match the Expression expression. If no expression is given, all PDB atoms will be returned.

Parameters:
fragment the AtomContainer containing the atoms
expression the expression that selects the atoms (default: no expression)
BALL_EXPORT ProteinList BALL::proteins ( const AtomContainer &  fragment,
bool  selected_only = false 
)

Extract all proteins from a kernel data structure.

BALL_EXPORT ResidueList BALL::residues ( const AtomContainer &  fragment,
bool  selected_only = false 
)

Extract all residues from a kernel data structure.

BALL_EXPORT SecondaryStructureList BALL::secondaryStructures ( const AtomContainer &  fragment,
bool  selected_only = false 
)

Extract all secondary structures from a kernel data structure.


Variable Documentation

Global static variable needed for the cloning of kernel objects containing bonds. Namespace: BALL

See also:
cloneBonds
BALL_EXPORT PTE_ BALL::PTE

Global static instance of the periodic table.