Gemmi C++ API
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
polyheur.hpp File Reference
#include <vector>
#include "model.hpp"
#include "resinfo.hpp"
#include "util.hpp"

Go to the source code of this file.

Classes

struct  gemmi::AtomNameElement
 

Namespaces

namespace  gemmi
 

Functions

GEMMI_DLL PolymerType gemmi::check_polymer_type (const ConstResidueSpan &span, bool ignore_entity_type=false)
 
PolymerType gemmi::get_or_check_polymer_type (const Entity *ent, const ConstResidueSpan &polymer)
 
std::vector< AtomNameElementgemmi::get_mainchain_atoms (PolymerType ptype)
 
bool gemmi::in_peptide_bond_distance (const Atom *a1, const Atom *a2)
 distance-based check for peptide bond
 
bool gemmi::have_peptide_bond (const Residue &r1, const Residue &r2)
 
bool gemmi::in_nucleotide_bond_distance (const Atom *a1, const Atom *a2)
 distance-based check for phosphodiester bond between nucleotide
 
bool gemmi::have_nucleotide_bond (const Residue &r1, const Residue &r2)
 
bool gemmi::are_connected (const Residue &r1, const Residue &r2, PolymerType ptype)
 check C-N or O3'-P distance
 
bool gemmi::are_connected2 (const Residue &r1, const Residue &r2, PolymerType ptype)
 are_connected2() is less exact, but requires only CA (or P) atoms.
 
bool gemmi::are_connected3 (const Residue &r1, const Residue &r2, PolymerType ptype)
 are_connected3() = are_connected() + fallback to are_connected2()
 
std::string gemmi::make_one_letter_sequence (const ConstResidueSpan &polymer)
 
GEMMI_DLL void gemmi::add_entity_types (Chain &chain, bool overwrite)
 Assigns entity_type=Polymer|NonPolymer|Water for each Residue (only for residues with entity_type==Unknown, unless overwrite=true).
 
GEMMI_DLL void gemmi::add_entity_types (Structure &st, bool overwrite)
 
GEMMI_DLL void gemmi::remove_entity_types (Structure &st)
 Assigns entity_type=Unknown for all residues.
 
GEMMI_DLL void gemmi::add_entity_ids (Structure &st, bool overwrite)
 Assigns Residue::entity_id based on Residue::subchain and Entity::subchains.
 
GEMMI_DLL void gemmi::assign_subchain_names (Chain &chain, int &nonpolymer_counter)
 The subchain field in the residue is where we store_atom_site.label_asym_id from mmCIF files.
 
GEMMI_DLL void gemmi::assign_subchains (Structure &st, bool force, bool fail_if_unknown=true)
 
GEMMI_DLL void gemmi::ensure_entities (Structure &st)
 
GEMMI_DLL void gemmi::deduplicate_entities (Structure &st)
 
void gemmi::setup_entities (Structure &st)
 
template<class T >
void gemmi::remove_waters (T &obj)
 
template<>
void gemmi::remove_waters (Chain &ch)
 
template<class T >
void gemmi::remove_ligands_and_waters (T &obj)
 
template<>
void gemmi::remove_ligands_and_waters (Chain &ch)
 
bool gemmi::trim_to_alanine (Residue &res)
 
void gemmi::trim_to_alanine (Chain &chain)
 
GEMMI_DLL void gemmi::change_ccd_code (Structure &st, const std::string &old, const std::string &new_)
 
GEMMI_DLL void gemmi::shorten_ccd_codes (Structure &st)
 
void gemmi::restore_full_ccd_codes (Structure &st)