18#ifndef RBTCHROMPOSITIONREFDATA_H_
19#define RBTCHROMPOSITIONREFDATA_H_
21#include "rxdock/ChromElement.h"
22#include "rxdock/DockingSite.h"
23#include "rxdock/Euler.h"
24#include "rxdock/Model.h"
26#include <nlohmann/json.hpp>
28using json = nlohmann::json;
35 static const std::string _CT;
41 ChromElement::eMode transMode = ChromElement::FREE,
42 ChromElement::eMode rotMode = ChromElement::FREE,
43 double maxTrans = 0.0,
47 int GetNumStartCoords()
const {
return m_startCoords.size(); }
48 const Coord &GetStartCoord(
int iCoord)
const {
return m_startCoords[iCoord]; }
49 double GetTransStepSize()
const {
return m_transStepSize; }
50 double GetRotStepSize()
const {
return m_rotStepSize; }
51 ChromElement::eMode GetTransMode()
const {
return m_transMode; }
52 ChromElement::eMode GetRotMode()
const {
return m_rotMode; }
54 int GetLength()
const {
return m_length; }
56 int GetXOverLength()
const {
return m_xOverLength; }
57 bool IsTransFixed()
const {
return m_transMode == ChromElement::FIXED; }
58 bool IsRotFixed()
const {
return m_rotMode == ChromElement::FIXED; }
59 double GetMaxTrans()
const {
return m_maxTrans; }
60 double GetMaxRot()
const {
return m_maxRot; }
61 const Coord &GetInitialCOM()
const {
return m_initialCom; }
62 const Euler &GetInitialOrientation()
const {
return m_initialOrientation; }
63 const Quat &GetInitialQuat()
const {
return m_initialQuat; }
65 void GetModelValue(
Coord &com,
Euler &orientation)
const;
66 void SetModelValue(
const Coord &com,
const Euler &orientation);
73 AtomRList m_movableAtoms;
74 CoordList m_startCoords;
75 double m_transStepSize;
78 Euler m_initialOrientation;
80 ChromElement::eMode m_transMode;
81 ChromElement::eMode m_rotMode;
Definition ChromPositionRefData.h:32
Definition DockingSite.h:30
Definition PrincipalAxes.h:29
Definition SmartPointer.h:48