BALL::AssignRadiusProcessor Class Reference
[Miscellaneous]

Assigns the radius to each atom. More...

#include <defaultProcessors.h>

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

List of all members.


Public Member Functions

AssignRadiusProcessor ()
Default constructor.
AssignRadiusProcessor (const String &filename) throw (Exception::FileNotFound)
Detailled constructor.
virtual bool start ()
Start Method.
virtual bool finish ()
Finish method.
virtual Processor::Result operator() (Atom &atom)
Applicator method The full names of all atoms in the container are compared to the atomnames from the file.
void setFilename (const String &filename) throw (Exception::FileNotFound)
Set the filename to read the radii from.
String & getFilename ()
Return the current filename.
Size getNumberOfAssignments ()
Return the number of assigned atoms.
Size getNumberOfErrors ()
Return the number of unassignable atoms.

Protected Member Functions

bool buildTable_ () throw (Exception::FileNotFound)

Protected Attributes

String filename_
StringHashMap< float > table_
Size number_of_errors_
Size number_of_assignments_

Detailed Description

Assigns the radius to each atom.

This processor reads a radius table from a file and assigns each atom a radius according to its name and the name of the fragment the atom is contained in.


Constructor & Destructor Documentation

BALL::AssignRadiusProcessor::AssignRadiusProcessor ( const String & filename ) throw (Exception::FileNotFound)

Detailled constructor.

If the file can not be found in the actual path, FileNotFound is thrown.


Member Function Documentation

virtual bool BALL::AssignRadiusProcessor::finish ( ) [virtual]

Finish method.

Allways returns true and does nothing.

Reimplemented from BALL::UnaryProcessor< Atom >.

Size BALL::AssignRadiusProcessor::getNumberOfErrors ( )

Return the number of unassignable atoms.

Only the atoms from the container, which cannot be matched, count as errors. The unmatched atoms from the file dont care.

virtual Processor::Result BALL::AssignRadiusProcessor::operator() ( Atom & atom ) [virtual]

Applicator method The full names of all atoms in the container are compared to the atomnames from the file.

For all matching atoms, the radii from the file are set. If for an atom from the container no matching atom from the file can be found, a warning is displayed and the number of errors increases. If in the file, the is a nonmatching atom, nothing happens.

The matching of the atoms from the file with the atom of the container works like this:
1.) The original atomnames are tested.
2.) The full name of the atoms are compared.
3.) Wild card matching: "*:" + atom_name
See also:
Residue

Reimplemented from BALL::UnaryProcessor< Atom >.

Reimplemented in BALL::AssignChargeProcessor.

void BALL::AssignRadiusProcessor::setFilename ( const String & filename ) throw (Exception::FileNotFound)

Set the filename to read the radii from.

If the file can not be found in the actual path, FileNotFound is thrown.

virtual bool BALL::AssignRadiusProcessor::start ( ) [virtual]

Start Method.

The number of errors and the numbers of assignments are reset to 0. The radius data from the file is extracted.

Returns:
bool, allways true

Reimplemented from BALL::UnaryProcessor< Atom >.

Reimplemented in BALL::AssignChargeProcessor.


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