5 #ifndef BALL_STRUCTURE_RESIDUEROTAMERSET_H 6 #define BALL_STRUCTURE_RESIDUEROTAMERSET_H 8 #ifndef BALL_MATHS_ANGLE_H 12 #ifndef BALL_DATATYPE_STRING_H 16 #ifndef BALL_MATHS_VECTOR3_H 24 template <
typename Key>
class HashSet;
25 template <
typename Key>
class StringHashMap;
51 Rotamer(
float new_P,
float new_chi1,
float new_chi2 = 0.0,
52 float new_chi3 = 0.0,
float new_chi4 = 0.0);
98 typedef std::vector<Rotamer>::iterator
Iterator;
99 typedef std::vector<Rotamer>::iterator
iterator;
134 return rotamers_.begin();
141 return rotamers_.end();
148 return rotamers_.begin();
155 return rotamers_.end();
173 bool isValid()
const;
176 Size getNumberOfRotamers()
const;
181 Size getNumberOfTorsions()
const;
186 void setNumberOfTorsions(
Size number_of_torsions);
195 bool hasTorsionPhi()
const;
198 Angle getTorsionPhi()
const;
201 void setTorsionPhi(
const Angle& phi);
204 bool hasTorsionPsi()
const;
207 Angle getTorsionPsi()
const;
210 void setTorsionPsi(
const Angle& psi);
216 bool setTemplateResidue(
const Residue& residue,
Size number_of_torsions);
237 void setName(
const String& name);
240 void addRotamer(
const Rotamer& rotamer);
243 void deleteRotamer(Iterator loc);
246 void deleteRotamers(Iterator begin, Iterator end);
258 : std::binary_function<Rotamer, Rotamer, bool>
271 void addMovable_(std::vector<String>& movable,
const Atom& a,
const HashSet<String>& assigned_atoms);
274 void setTorsionAngle_(
Residue& residue,
const std::vector<String>& movable,
float torsion);
312 #endif // BALL_STRUCTURE_RESIDUEROTAMERSET_H
std::vector< Rotamer >::const_iterator ConstIterator
std::vector< String > movable_atoms_chi4_
Angle psi_
The torsion psi.
float chi1
Angle in degrees.
float chi3
Angle in degrees.
std::vector< String > movable_atoms_chi2_
std::vector< Rotamer > rotamers_
Array containing all rotamers.
float chi2
Angle in degrees.
std::vector< Rotamer >::const_iterator const_iterator
ConstIterator end() const
String name_
Name of the residue (variant name)
Angle phi_
The torsion phi.
bool valid_
Indicates whether the instance is valid.
StringHashMap< Vector3 > original_coordinates_
Original coordinates of the template residue.
std::vector< Rotamer >::iterator Iterator
std::vector< String > movable_atoms_chi1_
Names of the movable atoms (names) for each of the torsions.
bool has_torsion_psi_
true if this residue rotamer set is backbone dependent
std::vector< String > movable_atoms_chi3_
ConstIterator begin() const
bool has_torsion_phi_
true if this residue rotamer set is backbone dependent
float chi4
Angle in degrees.
std::vector< Rotamer >::iterator iterator
Size number_of_torsions_
Number of valid torsions in the side chain.
#define BALL_CREATE(name)