1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
// ----------------------------------------------------
// $Maintainer: Marcel Schumann $
// $Authors: Marcel Schumann $
// ----------------------------------------------------
#ifndef BALL_SCORING_COMMON_DIFFGRIDBASEDSCORING_H
#define BALL_SCORING_COMMON_DIFFGRIDBASEDSCORING_H
#include <BALL/SCORING/COMMON/gridBasedScoring.h>
#include <BALL/MOLMEC/COMMON/forceField.h>
namespace BALL
{
class BALL_EXPORT DiffGridBasedScoring : public GridBasedScoring
{
public:
DiffGridBasedScoring(AtomContainer& receptor, AtomContainer& ligand, Options& options);
DiffGridBasedScoring(AtomContainer& receptor, Vector3& hashgrid_origin, Options& options);
~DiffGridBasedScoring();
virtual void setLigand(AtomContainer* sys);
/** Overloads ScoringFunction::update() so that receptor-ligand ScoringComponents will not be updated (because grid will be used instead) */
void update();
/** Overloads ScoringFunction::updateScore() so that the grid score is used to asses the current receptor-ligand interaction */
virtual double updateScore();
void testOverlaps(Vector3& position, HashGrid3<Atom*>* hashg = NULL);
protected:
//ForceField* force_field_;
/** update pairs and precalculates a score for one cell of a ScoreGrids
@param set the id of the ScoreGrid, whose HashGrid is to be used */
void updatePrecalculatedScore(Size set);
private:
};
}
#endif // BALL_SCORING_COMMON_DIFFGRIDBASEDSCORING_H
|