5#ifndef BALL_STRUCTURE_FRAGMENTDB_H
6#define BALL_STRUCTURE_FRAGMENTDB_H
8#ifndef BALL_DATATYPE_STRINGHASHMAP_H
12#ifndef BALL_KERNEL_RESIDUE_H
16#ifndef BALL_KERNEL_MOLECULE_H
20#ifndef BALL_KERNEL_BOND_H
24#ifndef BALL_STRUCTURE_RECONSTRUCTFRAGMENTPROCESSOR_H
48 class AddHydrogensProcessor;
49 friend class FragmentDB::AddHydrogensProcessor;
158 const std::vector<Residue*>&
getFragments()
const {
return fragments_;}
318 enum CountingMode { ADD, OVERWRITE };
324 void normalizeFragments_(
const NameMap* map,
const std::list<Fragment*>& frags);
331 std::list<Fragment*> fragments_;
553 std::vector<Residue*> fragments_;
#define BALL_CREATE_DEEP(name)
HashMap class based on the STL map (containing serveral convenience functions)
BuildBondsProcessor build_bonds
FragmentDB(const String &filename)
Molecule * getMoleculeCopy(const String &fragment_name) const
const Residue * getResidue(const String &fragment_name) const
StringHashMap< NameMap > & getNamingStandards()
const StringHashMap< String > & getNamingStandard(const String &std) const
Residue * getResidueCopy(const String &fragment_name) const
const std::vector< Residue * > & getFragments() const
FragmentDB(const FragmentDB &db, bool deep=true)
const String & getDefaultNamingStandard() const
ReconstructFragmentProcessor add_hydrogens
const String & getFilename() const
const Fragment * getReferenceFragment(const Fragment &fragment) const
std::vector< String > getAvailableNamingStandards() const
Fragment * getFragmentCopy(const String &fragment_name) const
NormalizeNamesProcessor normalize_names
FragmentDB::Type getFragmentType(const String &fragment_name) const
const Fragment * getFragment(const String &fragment_name) const
void setFilename(const String &filename)
bool has(const String &fragment_name) const
StringHashMap< String > NameMap
list< String > getVariantNames(const String &name) const
NoFragmentNode(const char *file, int line, const string &filename)
virtual ~NormalizeNamesProcessor()
NormalizeNamesProcessor()
bool matchName(String &res_name, String &atom_name, const NameMap &map) const
void setNamingStandard(const String &naming_standard)
NormalizeNamesProcessor(FragmentDB &db)
const String & getNamingStandard()
void setFragmentDB(FragmentDB &db)
FragmentDB * fragment_db_
BuildBondsProcessor(const FragmentDB &db)
virtual ~BuildBondsProcessor()
Size buildFragmentBonds(Fragment &fragment, const Fragment &tplate) const
bool buildConnection_(Connection &con1, Connection &con2)
ConnectionList connections_
Size buildInterFragmentBonds(Fragment &first, Fragment &second) const
std::list< Fragment * > fragment_list_
std::list< Connection > ConnectionList
void storeConnections_(Fragment &fragment)
Size buildFragmentBonds(Fragment &fragment) const
void setFragmentDB(const FragmentDB &fragment_db)
Set the fragment database.
Size getNumberOfBondsBuilt()
Return the number of bonds built during the last application.