Loading...
Searching...
No Matches
residueTorsions.h
Go to the documentation of this file.
// -*- Mode: C++; tab-width: 2; -*-
// vi: set ts=2:
//
// Molecular Mechanics Parameter: class describing the ResidueTorsions section of a parameter file
#ifndef BALL_MOLMEC_PARAMETER_RESIDUETORSIONS_H
#define BALL_MOLMEC_PARAMETER_RESIDUETORSIONS_H
#ifndef BALL_FORMAT_PARAMETERSECTION_H
# include <BALL/FORMAT/parameterSection.h>
#endif
#ifndef BALL_MOLMEC_PARAMETER_ATOMTYPES_H
# include <BALL/MOLMEC/PARAMETER/atomTypes.h>
#endif
namespace BALL
{
class BALL_EXPORT ResidueTorsions
: public ParameterSection
{
public:
struct BALL_EXPORT Data
{
String residue_name;
String atom_name_A;
String atom_name_B;
String atom_name_C;
String atom_name_D;
Data(const String& name, const String& A, const String& B, const String& C, const String& D)
: residue_name(name),
atom_name_A(A),
atom_name_B(B),
atom_name_C(C),
atom_name_D(D)
{
}
Data()
: residue_name(""),
atom_name_A(""),
atom_name_B(""),
atom_name_C(""),
atom_name_D("")
{
}
bool operator == (const Data& data) const;
bool operator != (const Data& data) const;
};
ResidueTorsions();
virtual ~ResidueTorsions() ;
virtual void clear() ;
virtual bool extractSection(ForceFieldParameters& parameters, const String& section_name);
virtual bool extractSection(Parameters& parameters, const String& section_name);
Size getNumberOfResidueTorsions(const String& residue_name) const;
bool assignTorsion(const String& name, Position i, Data& torsion) const;
bool hasTorsion
(const String& residue, const String& atom_A, const String& atom_B,
const String& atom_C, const String& atom_D) const;
protected:
/*_ Contains arrays of ResidueTorsions.
All torsions for a given residue name are collected in
a vector and accessed via the residue name through a StringHashMap.
*/
StringHashMap<vector<Data> > torsions_;
/*_ Hash set of all torsion identifiers.
This hash set contains all entries in the form of strings.
It is used by \Ref{hasTorsion}.
*/
HashSet<String> all_torsions_;
};
} // namespace BALL
#endif // BALL_MOLMEC_PARAMETER_RESIDUETORSIONS_H
BALL_EXPORT
#define BALL_EXPORT
Definition COMMON/global.h:50
atomTypes.h
BALL::ForceFieldParameters
Definition forceFieldParameters.h:31
BALL::HashSet
Definition hashSet.h:46
BALL::ParameterSection::ParameterSection
ParameterSection()
BALL::Parameters
Definition parameters.h:25
BALL::ResidueTorsions::hasTorsion
bool hasTorsion(const String &residue, const String &atom_A, const String &atom_B, const String &atom_C, const String &atom_D) const
BALL::ResidueTorsions::torsions_
StringHashMap< vector< Data > > torsions_
Definition residueTorsions.h:131
BALL::ResidueTorsions::assignTorsion
bool assignTorsion(const String &name, Position i, Data &torsion) const
BALL::ResidueTorsions::ResidueTorsions
ResidueTorsions()
BALL::ResidueTorsions::getNumberOfResidueTorsions
Size getNumberOfResidueTorsions(const String &residue_name) const
BALL::ResidueTorsions::extractSection
virtual bool extractSection(Parameters &parameters, const String &section_name)
BALL::ResidueTorsions::~ResidueTorsions
virtual ~ResidueTorsions()
BALL::ResidueTorsions::extractSection
virtual bool extractSection(ForceFieldParameters &parameters, const String &section_name)
BALL::ResidueTorsions::all_torsions_
HashSet< String > all_torsions_
Definition residueTorsions.h:137
BALL::ResidueTorsions::clear
virtual void clear()
BALL::StringHashMap
Definition stringHashMap.h:42
BALL::String
Definition string.h:57
BALL
Definition constants.h:13
BALL::Size
BALL_SIZE_TYPE Size
Definition COMMON/global.h:114
BALL::Position
BALL_SIZE_TYPE Position
Definition COMMON/global.h:140
parameterSection.h
BALL::ResidueTorsions::Data
Definition residueTorsions.h:44
BALL::ResidueTorsions::Data::atom_name_A
String atom_name_A
Definition residueTorsions.h:46
BALL::ResidueTorsions::Data::atom_name_D
String atom_name_D
Definition residueTorsions.h:49
BALL::ResidueTorsions::Data::atom_name_C
String atom_name_C
Definition residueTorsions.h:48
BALL::ResidueTorsions::Data::atom_name_B
String atom_name_B
Definition residueTorsions.h:47
BALL::ResidueTorsions::Data::Data
Data()
Definition residueTorsions.h:60
BALL::ResidueTorsions::Data::Data
Data(const String &name, const String &A, const String &B, const String &C, const String &D)
Definition residueTorsions.h:51
BALL::ResidueTorsions::Data::residue_name
String residue_name
Definition residueTorsions.h:45