16#ifndef RD_MONOMERINFO_H
17#define RD_MONOMERINFO_H
21#include <boost/shared_ptr.hpp>
28 typedef enum { UNKNOWN = 0, PDBRESIDUE, OTHER } AtomMonomerType;
34 : d_monomerType(typ), d_name(std::move(nm)) {}
37 const std::string &
getName()
const {
return d_name; }
38 void setName(
const std::string &nm) { d_name = nm; }
45 AtomMonomerType d_monomerType{UNKNOWN};
46 std::string d_name{
""};
56 std::string altLoc =
"", std::string residueName =
"",
57 int residueNumber = 0, std::string chainId =
"",
58 std::string insertionCode =
"",
double occupancy = 1.0,
59 double tempFactor = 0.0,
bool isHeteroAtom =
false,
60 unsigned int secondaryStructure = 0,
61 unsigned int segmentNumber = 0)
63 d_serialNumber(serialNumber),
64 d_altLoc(std::move(altLoc)),
65 d_residueName(std::move(residueName)),
66 d_residueNumber(residueNumber),
67 d_chainId(std::move(chainId)),
68 d_insertionCode(std::move(insertionCode)),
69 d_occupancy(occupancy),
70 d_tempFactor(tempFactor),
71 df_heteroAtom(isHeteroAtom),
72 d_secondaryStructure(secondaryStructure),
73 d_segmentNumber(segmentNumber) {}
77 const std::string &
getAltLoc()
const {
return d_altLoc; }
78 void setAltLoc(
const std::string &val) { d_altLoc = val; }
83 const std::string &
getChainId()
const {
return d_chainId; }
84 void setChainId(
const std::string &val) { d_chainId = val; }
107 unsigned int d_serialNumber = 0;
108 std::string d_altLoc =
"";
109 std::string d_residueName =
"";
110 int d_residueNumber = 0;
111 std::string d_chainId =
"";
112 std::string d_insertionCode =
"";
113 double d_occupancy = 1.0;
114 double d_tempFactor = 0.0;
116 bool df_heteroAtom =
false;
117 unsigned int d_secondaryStructure = 0;
118 unsigned int d_segmentNumber = 0;
RDKIT_GRAPHMOL_EXPORT std::ostream & operator<<(std::ostream &target, const RDKit::AtomPDBResidueInfo &apri)
allows AtomPDBResidueInfo objects to be dumped to streams
The abstract base class for atom-level monomer info.
void setName(const std::string &nm)
virtual ~AtomMonomerInfo()
const std::string & getName() const
AtomMonomerInfo(const AtomMonomerInfo &other)=default
AtomMonomerInfo(AtomMonomerType typ, std::string nm="")
virtual AtomMonomerInfo * copy() const
void setMonomerType(AtomMonomerType typ)
AtomMonomerInfo()=default
AtomMonomerType getMonomerType() const
Captures atom-level information about peptide residues.
void setIsHeteroAtom(bool val)
AtomPDBResidueInfo(const AtomPDBResidueInfo &other)=default
double getTempFactor() const
void setResidueNumber(int val)
void setOccupancy(double val)
AtomMonomerInfo * copy() const override
void setSecondaryStructure(unsigned int val)
double getOccupancy() const
void setInsertionCode(const std::string &val)
void setChainId(const std::string &val)
bool getIsHeteroAtom() const
int getResidueNumber() const
void setAltLoc(const std::string &val)
const std::string & getInsertionCode() const
const std::string & getChainId() const
void setSerialNumber(int val)
unsigned int getSegmentNumber() const
int getSerialNumber() const
AtomPDBResidueInfo(const std::string &atomName, int serialNumber=0, std::string altLoc="", std::string residueName="", int residueNumber=0, std::string chainId="", std::string insertionCode="", double occupancy=1.0, double tempFactor=0.0, bool isHeteroAtom=false, unsigned int secondaryStructure=0, unsigned int segmentNumber=0)
void setResidueName(const std::string &val)
const std::string & getResidueName() const
unsigned int getSecondaryStructure() const
void setSegmentNumber(unsigned int val)
const std::string & getAltLoc() const
void setTempFactor(double val)
#define RDKIT_GRAPHMOL_EXPORT