BALL::ReconstructFragmentProcessor Class Reference
[Miscellaneous]

ReconstructFragmentProcessor. More...

#include <reconstructFragmentProcessor.h>

Inheritance diagram for BALL::ReconstructFragmentProcessor:
Inheritance graph
[legend]

List of all members.


Public Member Functions

Constructors and Destructors
ReconstructFragmentProcessor ()
Default constructor.
ReconstructFragmentProcessor (const FragmentDB &db)
Detailed constructor.
ReconstructFragmentProcessor (const ReconstructFragmentProcessor &db)
Copy Constructor.
virtual ~ReconstructFragmentProcessor ()
Destructor.
Processor-related methods
virtual bool start ()
Processor start method.
virtual bool finish ()
Processor finish method.
virtual Processor::Result operator() (Fragment &)
Processor applicaiton method.
Accessors
list< Atom * > & getInsertedAtoms ()
Returns a list of inserted atoms.
Size getNumberOfInsertedAtoms () const
Returns number of recently inserted atoms.
void setFragmentDB (const FragmentDB &fragment_db)
Set the fragment database.
const FragmentDB * getFragmentDB () const
Return the current fragment database.

Static Public Member Functions

Static methods.
static Matrix4x4 mapThreeVectors (const Vector3 &w1, const Vector3 &w2, const Vector3 &w3, const Vector3 &v1, const Vector3 &v2, const Vector3 &v3)
Map three vectors onto each other.
static Triple< bool, const
Atom *, const Atom * >
getTwoReferenceAtoms (const Atom &ref_center_atom, const HashSet< const Atom * > &allowed)
Search for the next atoms suitable as reference points.
static list< Atom * > reconstructFragment (Fragment &frag, const Fragment &tplate)

Protected Attributes

const FragmentDB * fragment_db_
list< Atom * > inserted_atoms_

Detailed Description

ReconstructFragmentProcessor.

Constructor & Destructor Documentation

BALL::ReconstructFragmentProcessor::ReconstructFragmentProcessor ( )

Default constructor.

Create a new ReconstructFragmentProcessor, which is not yet bound to a FragmentDB , i.e. which cannot yet reconstruct fragments.

BALL::ReconstructFragmentProcessor::ReconstructFragmentProcessor ( const FragmentDB & db )

Detailed constructor.

Create a new ReconstructFragmentProcessor, which is bound to the FragmentDB db.


Member Function Documentation

static Triple<bool, const Atom*, const Atom*> BALL::ReconstructFragmentProcessor::getTwoReferenceAtoms ( const Atom & ref_center_atom,
const HashSet< const Atom * > & allowed
) [static]

Search for the next atoms suitable as reference points.

This method performs a BFS-like search for atoms in the same residue the ref_center_atom is in. It will consider only atoms contained in the hash set allowed.

static Matrix4x4 BALL::ReconstructFragmentProcessor::mapThreeVectors ( const Vector3 & w1,
const Vector3 & w2,
const Vector3 & w3,
const Vector3 & v1,
const Vector3 & v2,
const Vector3 & v3
) [static]

Map three vectors onto each other.

This method computes the transformation which move the three points given in v1, v2, and v3 onto the the three reference points w1, w2, and w3. v1 is always mapped exactly onto w1, and the plane spanned by v1, v2, and v3 is always mapped onto the plane spanned by the three reference points. Furthermore, v2 is mapped such that the vector connecting v1 and v2 is parallel to the vector connecting w1 and w2 after the transformation. Well-defined, but less meaningful transformations are obtained if any of the two point sets is co-linear.

virtual Processor::Result BALL::ReconstructFragmentProcessor::operator() ( Fragment & ) [virtual]

Processor applicaiton method.

Tries to reconstruct the current fragment from a matching fragment from the current FragmentDB .

Reimplemented from BALL::UnaryProcessor< Fragment >.


Generated on Thu Aug 6 18:30:47 2009 for BALL by doxygen 1.5.8