Loading...
Searching...
No Matches
conformation.h
Go to the documentation of this file.
// -*- Mode: C++; tab-width: 2; -*-
// vi: set ts=2:
//
#ifndef BALL_DOCKING_COMMON_CONFORMATION_H
#define BALL_DOCKING_COMMON_CONFORMATION_H
#include <BALL/KERNEL/atomContainer.h>
#include <BALL/CONCEPT/property.h>
#include <QtCore/QCryptographicHash>
namespace BALL
{
class BALL_EXPORT Conformation
{
public:
/* Default Constructor.
*/
Conformation();
/* Constructor.
@param pointer to AtomContainer
*/
Conformation(AtomContainer* parent, AtomContainer* conformation_molecule);
/* Copy Constructor.
*/
Conformation (const Conformation& conf);
/* Destructor.
*/
virtual ~Conformation();
static void generateHash(const AtomContainer* mol, String& hash);
bool operator == (const Conformation& conf);
bool operator != (const Conformation& conf);
void applyConformation(AtomContainer& ac) const;
const HashMap<Size, Vector3>* getAtomPositions();
void setAtomPositions(const AtomContainer* parent, const HashMap<Size, Vector3>& pos);
const AtomContainer* getParent();
void setParent(AtomContainer* parent);
String getId();
bool checkID(String& hash);
void setID(String& hash);
void addProperty(const String& name, const String& value);
const std::vector<std::pair<String, String> >* getProperties();
Size getNoOfAtoms() const;
private:
void takeConformation(const AtomContainer* parent, AtomContainer* ac);
void takeConformation(const AtomContainer& parent, const AtomContainer& ac);
static String doubleToString(const double& value);
void generateHash(const AtomContainer* mol, const HashMap<Size, Vector3>& positions, String& hash);
String id_;
const AtomContainer* source_;
Size number_of_atoms_;
HashMap<Size, Vector3> atom_positions_;
std::vector<std::pair<String, String> > properties_;
};
}
#endif // BALL_DOCKING_COMMON_CONFORMATION_H
BALL_EXPORT
#define BALL_EXPORT
Definition COMMON/global.h:50
atomContainer.h
BALL::AtomContainer
Definition atomContainer.h:32
BALL::Conformation::setAtomPositions
void setAtomPositions(const AtomContainer *parent, const HashMap< Size, Vector3 > &pos)
BALL::Conformation::setID
void setID(String &hash)
BALL::Conformation::addProperty
void addProperty(const String &name, const String &value)
BALL::Conformation::applyConformation
void applyConformation(AtomContainer &ac) const
BALL::Conformation::generateHash
static void generateHash(const AtomContainer *mol, String &hash)
BALL::Conformation::getProperties
const std::vector< std::pair< String, String > > * getProperties()
BALL::Conformation::getNoOfAtoms
Size getNoOfAtoms() const
BALL::Conformation::getAtomPositions
const HashMap< Size, Vector3 > * getAtomPositions()
BALL::Conformation::~Conformation
virtual ~Conformation()
BALL::Conformation::setParent
void setParent(AtomContainer *parent)
BALL::Conformation::checkID
bool checkID(String &hash)
BALL::Conformation::getId
String getId()
BALL::Conformation::Conformation
Conformation()
BALL::Conformation::Conformation
Conformation(AtomContainer *parent, AtomContainer *conformation_molecule)
BALL::Conformation::getParent
const AtomContainer * getParent()
BALL::Conformation::Conformation
Conformation(const Conformation &conf)
BALL::HashMap
HashMap class based on the STL map (containing serveral convenience functions).
Definition hashMap.h:74
BALL::String
Definition string.h:57
BALL
Definition constants.h:13
BALL::Size
BALL_SIZE_TYPE Size
Definition COMMON/global.h:114
property.h