13#ifndef _RBTSETUPPMFSF_H_
14#define _RBTSETUPPMFSF_H_
16#include "rxdock/BaseInterSF.h"
21 AtomList theLigandList;
22 AtomList theReceptorList;
25 static const std::string _CT;
27 SetupPMFSF(
const std::string &strName =
"setup-pmf");
31 virtual void SetupReceptor();
32 virtual void SetupLigand();
33 virtual void SetupScore();
34 virtual double RawScore()
const;
36 void SetupReceptorPMFTypes(
void);
37 void SetupLigandPMFTypes(
void);
51 bool IsChargedNitrogen(
AtomPtr);
54 friend void to_json(json &j,
const SetupPMFSF &pmfsf) {
56 for (
const auto &cIter : pmfsf.theLigandList) {
58 atomList.push_back(atom);
61 for (
const auto &cIter : pmfsf.theReceptorList) {
63 atomList2.push_back(atom);
66 j = json{{
"lig-list", atomList}, {
"recep-list", atomList2}};
68 friend void from_json(
const json &j,
SetupPMFSF &pmfsf) {
69 pmfsf.theLigandList.clear();
70 pmfsf.theLigandList.reserve(j.at(
"lig-list").size());
71 for (
auto &atom : j.at(
"lig-list")) {
73 pmfsf.theLigandList.push_back(spAtom);
75 pmfsf.theReceptorList.clear();
76 pmfsf.theReceptorList.reserve(j.at(
"recep-list").size());
77 for (
auto &atom : j.at(
"recep-list")) {
79 pmfsf.theReceptorList.push_back(spAtom);
Definition BaseInterSF.h:27
Definition SetupPMFSF.h:20
PMFType GetPMFfor_lC(AtomPtr)
Definition SetupPMFSF.cxx:219