BALL::FragmentDB::NormalizeNamesProcessor Class Reference

#include <BALL/STRUCTURE/fragmentDB.h>

Inheritance diagram for BALL::FragmentDB::NormalizeNamesProcessor:
BALL::UnaryProcessor< Fragment > BALL::UnaryFunctor< Fragment, Processor::Result >

List of all members.


Public Member Functions

Constructors and Destructors
 NormalizeNamesProcessor ()
 NormalizeNamesProcessor (FragmentDB &db)
virtual ~NormalizeNamesProcessor ()
Inspectors and Mutators
void setFragmentDB (FragmentDB &db)
void setNamingStandard (const String &naming_standard)
const StringgetNamingStandard ()
bool matchName (String &res_name, String &atom_name, const NameMap &map) const
Processor specific methods
virtual bool start ()
virtual bool finish ()
virtual Processor::Result operator() (Fragment &fragment)

Private Types

enum  CountingMode { ADD, OVERWRITE }

Private Member Functions

String getSuffix_ (const Fragment *frag) const
bool doMatch_ (String &res_name, const String &res_name_suffix, String &atom_name, const NameMap &map) const
void countHits_ (HashMap< NameMap *, Index > &maps, const std::list< Fragment * > &frags)
void countHits_ (HashMap< NameMap *, Index > &maps, const Fragment *frag, CountingMode mode=OVERWRITE)
const NameMapgetBestMap_ (const HashMap< NameMap *, Index > &maps) const
void normalizeFragments_ (const NameMap *map, const std::list< Fragment * > &frags)
void normalizeFragment_ (const NameMap *map, Fragment *frag)

Private Attributes

String naming_standard_
FragmentDBfragment_db_
std::list< Fragment * > fragments_

Detailed Description

Name normalization processor. This class is used to adopt all names in a molecular system to a given naming standard (usually the PDB standard).


Member Enumeration Documentation

Enumerator:
ADD 
OVERWRITE 

Constructor & Destructor Documentation

BALL::FragmentDB::NormalizeNamesProcessor::NormalizeNamesProcessor (  ) 

Default constructor

BALL::FragmentDB::NormalizeNamesProcessor::NormalizeNamesProcessor ( FragmentDB db  ) 

Constructor

virtual BALL::FragmentDB::NormalizeNamesProcessor::~NormalizeNamesProcessor (  )  [virtual]

Destructor


Member Function Documentation

void BALL::FragmentDB::NormalizeNamesProcessor::countHits_ ( HashMap< NameMap *, Index > &  maps,
const Fragment frag,
CountingMode  mode = OVERWRITE 
) [private]
void BALL::FragmentDB::NormalizeNamesProcessor::countHits_ ( HashMap< NameMap *, Index > &  maps,
const std::list< Fragment * > &  frags 
) [private]
bool BALL::FragmentDB::NormalizeNamesProcessor::doMatch_ ( String res_name,
const String res_name_suffix,
String atom_name,
const NameMap map 
) const [private]
virtual bool BALL::FragmentDB::NormalizeNamesProcessor::finish (  )  [virtual]

Finish method

Reimplemented from BALL::UnaryProcessor< Fragment >.

const NameMap* BALL::FragmentDB::NormalizeNamesProcessor::getBestMap_ ( const HashMap< NameMap *, Index > &  maps  )  const [private]
const String& BALL::FragmentDB::NormalizeNamesProcessor::getNamingStandard (  ) 

Retrieve the current naming standard

String BALL::FragmentDB::NormalizeNamesProcessor::getSuffix_ ( const Fragment frag  )  const [private]
bool BALL::FragmentDB::NormalizeNamesProcessor::matchName ( String res_name,
String atom_name,
const NameMap map 
) const

Try to match a name in one of the maps

void BALL::FragmentDB::NormalizeNamesProcessor::normalizeFragment_ ( const NameMap map,
Fragment frag 
) [private]
void BALL::FragmentDB::NormalizeNamesProcessor::normalizeFragments_ ( const NameMap map,
const std::list< Fragment * > &  frags 
) [private]
virtual Processor::Result BALL::FragmentDB::NormalizeNamesProcessor::operator() ( Fragment fragment  )  [virtual]

Application method

Reimplemented from BALL::UnaryProcessor< Fragment >.

void BALL::FragmentDB::NormalizeNamesProcessor::setFragmentDB ( FragmentDB db  ) 

Bind the processor to a fragment database.

void BALL::FragmentDB::NormalizeNamesProcessor::setNamingStandard ( const String naming_standard  ) 
virtual bool BALL::FragmentDB::NormalizeNamesProcessor::start (  )  [virtual]

Start method

Reimplemented from BALL::UnaryProcessor< Fragment >.


Member Data Documentation