RxDock 0.1.0
A fast, versatile, and open-source program for docking ligands to proteins and nucleic acids
Loading...
Searching...
No Matches
CavityFillSF.h
1/***********************************************************************
2 * The rDock program was developed from 1998 - 2006 by the software team
3 * at RiboTargets (subsequently Vernalis (R&D) Ltd).
4 * In 2006, the software was licensed to the University of York for
5 * maintenance and distribution.
6 * In 2012, Vernalis and the University of York agreed to release the
7 * program as Open Source software.
8 * This version is licensed under GNU-LGPL version 3.0 with support from
9 * the University of Barcelona.
10 * http://rdock.sourceforge.net/
11 ***********************************************************************/
12
13// Post-filtering scoring function for calculating percentage cavity unfilled
14//(mode=0) or percentage ligand unbound (mode=1)
15
16#ifndef _RBTCAVITYFILLSF_H_
17#define _RBTCAVITYFILLSF_H_
18
19#include "rxdock/BaseInterSF.h"
20#include "rxdock/FFTGrid.h"
21
22#include <nlohmann/json.hpp>
23
24using json = nlohmann::json;
25
26namespace rxdock {
27
28class CavityFillSF : public BaseInterSF {
29public:
30 // Class type string
31 static const std::string _CT;
32 // Parameter names
33 CavityFillSF(const std::string &strName = "cavity-fill");
34 virtual ~CavityFillSF();
35
36 friend void to_json(json &j, const CavityFillSF &sf);
37 friend void from_json(const json &j, CavityFillSF &sf);
38
39protected:
40 virtual void SetupReceptor();
41 virtual void SetupLigand();
42 virtual void SetupScore();
43 virtual double RawScore() const;
44 void ParameterUpdated(const std::string &strName);
45
46private:
47 FFTGridPtr m_spGrid;
48 AtomList m_ligAtomList;
49};
50
51void to_json(json &j, const CavityFillSF &sf);
52void from_json(const json &j, CavityFillSF &sf);
53
54} // namespace rxdock
55
56#endif //_RBTCAVITYFILLSF_H_
Definition BaseInterSF.h:27
Definition CavityFillSF.h:28