gemmi::Topo struct

Public types

struct Angle
struct Bond
struct ChainInfo
struct Chirality
struct ExtraLink
struct Force
struct Plane
struct ResInfo
struct Torsion
enum class Provenance { None, PrevLink, Monomer, NextLink, ExtraLink }
enum class RKind { Bond, Angle, Torsion, Chirality, Plane }

Public static functions

template<typename T>
static auto has_atom(const Atom* a, const T& t) -> int

Constructors, destructors, conversion operators

Topo() defaulted
Topo(Topo const&) deleted

Public functions

auto operator=(Topo const&) -> Topo& deleted
auto find_resinfo(const Residue* res) -> ResInfo*
auto take_bond(const Atom* a, const Atom* b) const -> const Restraints::Bond*
auto take_angle(const Atom* a, const Atom* b, const Atom* c) const -> const Restraints::Angle*
auto get_chirality(const Atom* ctr) const -> const Chirality*
auto apply_restraints(const Restraints& rt, Residue& res, Residue* res2, char altloc = '*') -> std::vector<Force>
void apply_internal_restraints_to_residue(ResInfo& ri)
void apply_restraints_to_residue(ResInfo& ri, const MonLib& monlib)
void apply_restraints_to_extra_link(ExtraLink& link, const MonLib& monlib)
void initialize_refmac_topology(const Structure& st, Model& model0, MonLib& monlib)
void finalize_refmac_topology(const MonLib& monlib)

Public variables

std::vector<ChainInfo> chains
std::vector<ExtraLink> extras
std::vector<Bond> bonds
std::vector<Angle> angles
std::vector<Torsion> torsions
std::vector<Chirality> chirs
std::vector<Plane> planes