Rosetta
|
A class to convert a pose to a StructFileRep. More...
#include <PoseToStructFileRepConverter.hh>
Public Member Functions | |
PoseToStructFileRepConverter () | |
Constructor. More... | |
PoseToStructFileRepConverter (StructFileRepOptions const &options_in) | |
Constructor with options input. More... | |
~PoseToStructFileRepConverter () override | |
Destructor. More... | |
core::io::StructFileRepOP | new_sfr () |
Resets the PoseToStructFileRepConverter object, and reinitializes it with a fresh StruftFileRep object, returning an owning pointer to the new object. More... | |
void | init_from_pose (core::pose::Pose const &pose) |
Fill StructFileRep object using information from given Pose object. More... | |
void | init_from_pose (core::pose::Pose const &pose, StructFileRepOptions const &options) |
Fill StructFileRep object using information from given Pose object and a set of options. More... | |
void | init_from_pose (core::pose::Pose const &pose, utility::vector1< core::Size > const &residue_indices) |
Fill StructFileRep object using information from given Pose object, for a specified subset of residues. More... | |
void | init_from_pose (core::pose::Pose const &pose, id::AtomID_Mask const &mask) |
Fill StructFileRep object using information from given Pose object, for a specified subset of residues and atoms. More... | |
void | init_from_pose (core::pose::Pose const &pose, id::AtomID_Mask const &mask, StructFileRepOptions const &options) |
Fill StructFileRep object using information from given Pose object, for a specified subset of residues and atoms. More... | |
void | grab_additional_pose_data (core::pose::Pose const &pose) |
Get additional pose data. More... | |
void | append_residue_to_sfr (pose::Pose const &pose, core::Size const resnum) |
Append pdb information to StructFileRep for a single residue. More... | |
void | append_residue_to_sfr (pose::Pose const &pose, core::Size const resnum, core::Size &new_atom_num, core::Size const new_tercount) |
Start atom numbering from given n. Increments N. More... | |
void | get_connectivity_annotation_info (core::pose::Pose const &pose) |
Get connectivity annotation information from the Pose object and create LinkInformation and SSBondInformation data as appropriate. More... | |
LinkInformation | get_link_record (core::pose::Pose const &pose, core::Size ii, core::Size conn) |
SSBondInformation | get_ssbond_record (core::pose::Pose const &pose, core::Size ii, core::Size conn) |
void | get_parametric_info (core::io::RemarksOP remarks, core::pose::Pose const &pose) |
Get parametric information from the Pose object and add it to the PDB remarks. More... | |
void | grab_pose_energies_table (core::pose::Pose const &pose) |
Grab all the data that makes the pose energies table. More... | |
void | grab_pose_cache_data (core::pose::Pose const &pose) |
Grab all the data that is in pose datacache as string/value pairs Arbitrary Float data Arbitrary String data. More... | |
void | grab_simple_metric_data (core::pose::Pose const &pose) |
Grab RAW simple_metric data for SM IO. More... | |
StructFileRepOP | sfr () |
Non-const access to the StructFileRep object. More... | |
Private Member Functions | |
void | determine_atom_indices (pose::Pose const &pose) |
Determines the atom indices, which are needed for CONECT info. More... | |
bool | add_atom_to_sfr (pose::Pose const &pose, conformation::Residue const &rsd, core::Size atom_index) const |
Should this atom be [added]? More... | |
void | recalculate_new_chainIDs (pose::Pose const &pose) |
bool | use_pdb_info_for_num (pose::Pose const &pose, Size resnum) const |
void | append_residue_info_to_sfr (ResidueInformation const &res_info, core::conformation::Residue const &rsd) |
Append just residue-based info to StructFileRep For now, it is only HETNAM Data. More... | |
bool | append_atom_info_to_sfr (core::pose::Pose const &pose, ResidueInformation const &res_info, core::conformation::Residue const &rsd, core::Size const atom_index) |
Append just atom-based info to StructFileRep. New atom number will be detected from current SFR or start from 1. Returns True if successfully added to SFR. More... | |
bool | append_atom_info_to_sfr (core::pose::Pose const &pose, ResidueInformation const &res_info, core::conformation::Residue const &rsd, core::Size const atom_index, core::Size const new_atom_num, core::Size const new_tercount) |
Append just atom-based info to StructFileRep Specify the new atom to start from. Returns True if successfully added to SFR. More... | |
std::string | get_chem_comp_type (core::conformation::Residue const &rsd) const |
Determine chem_comp_type via ResidueType and VariantType combinations http://mmcif.wwpdb.org/dictionaries/mmcif_pdbx_v50.dic/Items/_chem_comp.type.html. More... | |
core::Size | get_new_atom_serial_num () const |
void | generate_default_title_section (rcsb::ExperimentalTechnique const technique) |
Create a default PDB-format title section. More... | |
void | generate_default_remarks (rcsb::ExperimentalTechnique const technique) |
Create default PDB remarks, which provide the date and Rosetta version number. More... | |
void | set_fold_tree_io (bool const setting) |
Set whether to write the fold tree, in the StructFileRepOptions object (options_). More... | |
void | grab_membrane_info (core::pose::Pose const &pose, bool const normalize_to_thk) |
Get the membrane information from the pose and store it in the StructFileRep for output to pdbs/mmCIF/whatnot. More... | |
void | grab_conect_records_for_atom (core::pose::Pose const &pose, core::Size const res_index, core::Size const atom_index_in_rsd, core::io::AtomInformation &ai) |
Get the conect record information from the pose and store it in the StructFileRep for output to pdbs/mmCIF/whatnot. More... | |
void | grab_foldtree (core::pose::Pose const &pose, bool const output_foldtree) |
Get the foldtree from the pose and store it in the StructFileRep for output to pdbs/mmCIF/whatnot. More... | |
void | grab_pdb_parents (core::pose::Pose const &pose, bool const output_parents) |
Get the pdb parents from the pose and store it in the StructFileRep for output to pdbs/mmCIF/whatnot. More... | |
void | grab_pdb_comments (core::pose::Pose const &pose, bool const output_comments) |
Get the pdb comments from the pose and store it in the StructFileRep for output to pdbs/mmCIF/whatnot. More... | |
void | grab_torsion_records (core::pose::Pose const &pose, bool const output_torsions) |
Get the torsion information from the pose and store it in the StructFileRep for output to pdbs/mmCIF/whatnot. More... | |
void | grab_pdbinfo_labels (core::pose::Pose const &pose) |
Get the pdbinfo labels from the pose and store them in the StructFileRep for output to pdbs/mmCIF/whatnot. More... | |
core::Size | total_sfr_atoms (StructFileRep const &sfr) const |
Get the total number of atoms in the SFR. More... | |
core::Size | total_sfr_atoms (StructFileRep const &sfr, core::Size const chain_num) const |
Get the total number of atoms in a chain in the SFR. More... | |
ResidueInformation | get_residue_information (core::pose::Pose const &pose, core::uint const seqpos, core::Size const new_tercount=0) const |
Return the PDB resName, chainID, resSeq, and iCode for the given Rosetta sequence position. More... | |
void | generate_secondary_structure_informations (core::pose::Pose const &pose) |
fills HELIXInformation and SHEETInformation for SFR More... | |
void | generate_HELIXInformation (ResidueInformation const &start_info, ResidueInformation const &stop_info, core::Size const index, core::Size const length) |
fills one HELIXInformation into SFR More... | |
void | generate_SHEETInformation (ResidueInformation const &start_info, ResidueInformation const &stop_info, core::Size const index) |
fills one SHEETInformation into SFR More... | |
Private Attributes | |
StructFileRepOP | sfr_ |
Owning pointer to the StructFileRep object, copied in during object construction. More... | |
StructFileRepOptions | options_ |
The StructFileRepOptions object. More... | |
id::AtomID_Map< Size > | atom_indices_ |
The index for every atom in the Pose – used for generating CONECT records. More... | |
bool | atom_indices_initialized_ |
utility::vector1< char > | new_chainIDs_ |
Friends | |
class | ::PoseToStructFileRepConverterTests |
std::ostream & | operator<< (std::ostream &os, StructFileRep const &) |
Debug printing. More... | |
A class to convert a pose to a StructFileRep.
The StructFileRep is a data structure that serves as an intermediate between Protein Databank file formats (PDB and mmCIF) and Rosetta objects (poses). This was implemented at the 2016 Chemical XRW (eXtreme Rosetta Workshop), at which this class was popularly referred to as the "pose unbuilder".
core::io::pose_to_sfr::PoseToStructFileRepConverter::PoseToStructFileRepConverter | ( | ) |
Constructor.
Creates the StructFileRep object, which is subsequently accessible by owning pointer (using the sfr() object). The options_ object is created and initialized from the options system.
References new_sfr().
core::io::pose_to_sfr::PoseToStructFileRepConverter::PoseToStructFileRepConverter | ( | StructFileRepOptions const & | options_in | ) |
Constructor with options input.
Creates the StructFileRep object, which is subsequently accessible by owning pointer (using the sfr() object). The options_ object is duplicated from the input options object.
References new_sfr().
|
inlineoverride |
Destructor.
|
private |
Should this atom be [added]?
References core::conformation::Residue::atom_name(), core::conformation::Residue::atom_type(), core::chemical::AtomType::is_virtual(), core::io::StructFileRepOptions::no_output_cen(), options_, core::io::StructFileRepOptions::output_virtual(), core::pose::Pose::pdb_info(), core::conformation::Residue::seqpos(), core::io::StructFileRepOptions::suppress_zero_occ_pdb_output(), and use_pdb_info_for_num().
Referenced by append_atom_info_to_sfr().
|
private |
Append just atom-based info to StructFileRep. New atom number will be detected from current SFR or start from 1. Returns True if successfully added to SFR.
References core::pose::Pose::chain(), get_new_atom_serial_num(), and core::conformation::Residue::seqpos().
Referenced by append_residue_to_sfr(), and init_from_pose().
|
private |
Append just atom-based info to StructFileRep Specify the new atom to start from. Returns True if successfully added to SFR.
References add_atom_to_sfr(), core::io::AtomInformation::altLoc, core::conformation::Residue::atom(), core::conformation::Residue::atom_name(), core::conformation::Residue::atom_type(), core::chemical::ResidueTypeBase::atom_type_set(), core::chemical::CANONICAL_AA, core::chemical::ResidueTypeBase::canonical_atom_alias(), core::chemical::ResidueTypeBase::canonical_atom_aliases(), core::chemical::CANONICAL_NUCLEIC, core::conformation::Residue::chain(), core::io::AtomInformation::chainID, core::io::ResidueInformation::chainID(), core::io::AtomInformation::chem_comp_type, core::chemical::CUTPOINT_LOWER, core::chemical::CUTPOINT_UPPER, core::io::AtomInformation::element, get_chem_comp_type(), grab_conect_records_for_atom(), core::chemical::ResidueTypeBase::has_property(), core::chemical::ResidueTypeBase::has_variant_type(), core::io::AtomInformation::iCode, core::io::ResidueInformation::iCode(), core::conformation::Residue::is_carbohydrate(), core::chemical::AtomType::is_virtual(), core::io::AtomInformation::isHet, core::conformation::Residue::name(), core::io::AtomInformation::name, core::conformation::Residue::name3(), core::io::AtomInformation::occupancy, options_, core::io::StructFileRepOptions::output_virtual_zero_occ(), core::pose::Pose::pdb_info(), core::io::AtomInformation::resName, core::io::AtomInformation::resSeq, core::io::ResidueInformation::resSeq(), core::io::AtomInformation::segmentID, core::io::ResidueInformation::segmentID(), core::conformation::Residue::seqpos(), core::io::AtomInformation::serial, sfr_, core::io::AtomInformation::temperature, core::io::AtomInformation::terCount, core::io::pose_to_sfr::TR(), core::conformation::Residue::type(), core::conformation::Atom::type(), use_pdb_info_for_num(), core::io::StructFileRepOptions::write_glycan_pdb_codes(), core::io::AtomInformation::x, core::conformation::Atom::xyz(), core::io::AtomInformation::y, and core::io::AtomInformation::z.
|
private |
Append just residue-based info to StructFileRep For now, it is only HETNAM Data.
Append just residue-based info to StructFileRep.
References core::chemical::ResidueTypeBase::base_name(), protocols::vip::base_name(), core::chemical::ResidueType::is_membrane(), core::conformation::Residue::is_NA(), core::conformation::Residue::is_protein(), core::conformation::Residue::is_virtual_residue(), core::conformation::Residue::name3(), options_, core::io::ResidueInformation::resid(), sfr_, core::conformation::Residue::type(), and core::io::StructFileRepOptions::write_glycan_pdb_codes().
Referenced by append_residue_to_sfr(), and init_from_pose().
void core::io::pose_to_sfr::PoseToStructFileRepConverter::append_residue_to_sfr | ( | pose::Pose const & | pose, |
core::Size const | resnum | ||
) |
Append pdb information to StructFileRep for a single residue.
References core::pose::Pose::chain(), and get_new_atom_serial_num().
Referenced by core::io::pdb::dump_pdb_residue().
void core::io::pose_to_sfr::PoseToStructFileRepConverter::append_residue_to_sfr | ( | pose::Pose const & | pose, |
core::Size const | resnum, | ||
core::Size & | new_atom_num, | ||
core::Size const | new_tercount | ||
) |
Start atom numbering from given n. Increments N.
Append pdb information to StructFileRep for a single residue.
Start atom numbering from given n
References append_atom_info_to_sfr(), append_residue_info_to_sfr(), get_residue_information(), core::conformation::Residue::natoms(), and core::pose::Pose::residue().
|
private |
Determines the atom indices, which are needed for CONECT info.
References atom_indices_, atom_indices_initialized_, core::chemical::ResidueType::atom_type(), core::pose::initialize_atomid_map(), core::chemical::AtomType::is_virtual(), core::chemical::ResidueType::natoms(), options_, core::io::StructFileRepOptions::output_virtual(), core::pose::Pose::residue_type(), and core::pose::Pose::total_residue().
Referenced by grab_conect_records_for_atom().
|
private |
Create default PDB remarks, which provide the date and Rosetta version number.
This function adds the following to structure files generated by Rosetta:
REMARK 220
REMARK 220 EXPERIMENTAL DETAILS
REMARK 220 EXPERIMENT TYPE : THEORETICAL MODELLING
REMARK 220 DATE OF DATA COLLECTION : xx-MMM-xx
REMARK 220
REMARK 220 REMARK: MODEL GENERATED BY ROSETTA
REMARK 220 VERSION 000000000000000000000000000000000000000000000000000000000000
If the -write_pdb_parametric_info option is set to true, the REMARK 250 is used instead. If this pose was the result of crystal- or electron-density-refinement, REMARK 3 records are output instead.
References core::io::StructFileRepOptions::integration_test_mode(), core::io::RemarkInfo::num, options_, core::io::StructFileRepOptions::pdb_author(), sfr_, core::io::rcsb::THEORETICAL_MODEL, core::io::rcsb::UNKNOWN_EXPDTA, core::io::RemarkInfo::value, and core::io::StructFileRepOptions::write_pdb_parametric_info().
Referenced by init_from_pose().
|
private |
Create a default PDB-format title section.
This function adds the following to structure files generated by Rosetta:
HEADER xx-MMM-xx XXXX
EXPDTA THEORETICAL MODEL
AUTHOR
If the pose contains electron density, EXPDTA is blanked, since this is technically no longer a theoretical model.
References core::io::StructFileRepOptions::integration_test_mode(), options_, core::io::StructFileRepOptions::pdb_author(), and sfr_.
Referenced by init_from_pose().
|
private |
fills one HELIXInformation into SFR
References core::io::ResidueInformation::chainID(), protocols::loops::loop_closure::ccd::helix, core::chemical::element::I, core::io::ResidueInformation::iCode(), core::io::ResidueInformation::resName(), core::io::ResidueInformation::resSeq(), and sfr_.
Referenced by generate_secondary_structure_informations().
|
private |
fills HELIXInformation and SHEETInformation for SFR
fills HELIXInformation and SHEETInformation for SFR - wrappers for individual functions
References core::conformation::Residue::chain(), core::pose::Pose::chain(), core::io::StructFileRepOptions::do_not_autoassign_SS(), generate_HELIXInformation(), generate_SHEETInformation(), core::scoring::dssp::Dssp::get_dssp_secstruct(), get_residue_information(), options_, core::io::StructFileRepOptions::output_secondary_structure(), core::pose::Pose::residue(), core::pose::Pose::secstruct(), core::pose::Pose::size(), and core::io::pose_to_sfr::TR().
Referenced by init_from_pose().
|
private |
fills one SHEETInformation into SFR
References core::io::ResidueInformation::chainID(), core::chemical::element::I, core::io::ResidueInformation::iCode(), core::io::ResidueInformation::resName(), core::io::ResidueInformation::resSeq(), sfr_, and core::scoring::sheet.
Referenced by generate_secondary_structure_informations().
|
private |
Determine chem_comp_type via ResidueType and VariantType combinations http://mmcif.wwpdb.org/dictionaries/mmcif_pdbx_v50.dic/Items/_chem_comp.type.html.
References core::chemical::BETA_AA, core::chemical::CARBOHYDRATE, core::chemical::D_AA, core::chemical::DNA, core::chemical::L_AA, core::chemical::L_RNA, core::chemical::LOWER_TERMINUS_VARIANT, core::chemical::OLIGOUREA, core::chemical::PEPTOID, core::chemical::POLYMER, core::chemical::RNA, core::conformation::Residue::type_ptr(), and core::chemical::UPPER_TERMINUS_VARIANT.
Referenced by append_atom_info_to_sfr().
void core::io::pose_to_sfr::PoseToStructFileRepConverter::get_connectivity_annotation_info | ( | core::pose::Pose const & | pose | ) |
Get connectivity annotation information from the Pose object and create LinkInformation and SSBondInformation data as appropriate.
Get connectivity annotation information from the Pose object and create LinkInformation and SSBondInformation data as appropriate. Will update chain IDs if -output_ligands_as_separate_chains was set.
References core::chemical::ResidueType::atom_index(), core::conformation::Residue::connected_residue_at_resconn(), core::chemical::DISULFIDE_BONDED, core::chemical::ResidueTypeBase::get_disulfide_atom_name(), get_link_record(), get_ssbond_record(), core::conformation::Residue::has_lower_connect(), core::chemical::ResidueTypeBase::has_property(), core::conformation::Residue::has_upper_connect(), core::chemical::ResidueType::is_carbohydrate(), core::io::link_in_vector(), core::chemical::ResidueType::lower_connect_id(), core::conformation::Residue::n_possible_residue_connections(), core::io::LinkInformation::name1, core::io::LinkInformation::resID1, core::io::SSBondInformation::resID1, core::io::LinkInformation::resID2, core::pose::Pose::residue(), core::chemical::ResidueType::residue_connect_atom_index(), core::conformation::Residue::residue_connection_conn_id(), core::pose::Pose::residue_type(), sfr_, core::chemical::SIDECHAIN_THIOL, core::pose::Pose::size(), core::conformation::Residue::type(), and core::chemical::ResidueType::upper_connect_id().
Referenced by init_from_pose().
LinkInformation core::io::pose_to_sfr::PoseToStructFileRepConverter::get_link_record | ( | core::pose::Pose const & | pose, |
core::Size | ii, | ||
core::Size | conn | ||
) |
References core::chemical::ResidueType::atom_index(), core::chemical::ResidueType::atom_name(), core::chemical::ResidueTypeBase::canonical_atom_alias(), core::chemical::ResidueTypeBase::canonical_atom_aliases(), core::io::ResidueInformation::chainID(), core::io::LinkInformation::chainID1, core::io::LinkInformation::chainID2, core::conformation::Residue::connected_residue_at_resconn(), get_residue_information(), core::io::ResidueInformation::iCode(), core::io::LinkInformation::iCode1, core::io::LinkInformation::iCode2, core::chemical::ResidueType::is_carbohydrate(), core::io::LinkInformation::length, core::conformation::Residue::name(), core::io::LinkInformation::name1, core::io::LinkInformation::name2, core::chemical::ResidueTypeBase::name3(), options_, core::io::StructFileRepOptions::output_alternate_atomids(), core::io::LinkInformation::resID1, core::io::LinkInformation::resID2, core::pose::Pose::residue(), core::chemical::ResidueType::residue_connect_atom_index(), core::conformation::Residue::residue_connection_conn_id(), core::pose::Pose::residue_type(), core::io::LinkInformation::resName1, core::io::LinkInformation::resName2, core::io::ResidueInformation::resSeq(), core::io::LinkInformation::resSeq1, core::io::LinkInformation::resSeq2, core::io::StructFileRepOptions::write_glycan_pdb_codes(), and core::conformation::Residue::xyz().
Referenced by get_connectivity_annotation_info().
|
private |
References sfr_, and total_sfr_atoms().
Referenced by append_atom_info_to_sfr(), and append_residue_to_sfr().
void core::io::pose_to_sfr::PoseToStructFileRepConverter::get_parametric_info | ( | core::io::RemarksOP | remarks, |
core::pose::Pose const & | pose | ||
) |
Get parametric information from the Pose object and add it to the PDB remarks.
References core::pose::Pose::conformation(), core::conformation::Conformation::n_parameters_sets(), core::io::RemarkInfo::num, core::conformation::Conformation::parameters_set(), and core::io::RemarkInfo::value.
Referenced by init_from_pose().
|
private |
Return the PDB resName, chainID, resSeq, and iCode for the given Rosetta sequence position.
Output is res_info.
References core::pose::Pose::chain(), core::conformation::Conformation::chain_endings(), core::io::ResidueInformation::chainID(), chr_chains(), core::chemical::chr_chains(), core::pose::Pose::conformation(), core::io::ResidueInformation::iCode(), core::chemical::ResidueTypeBase::name3(), new_chainIDs_, options_, core::pose::Pose::pdb_info(), core::io::StructFileRepOptions::per_chain_renumbering(), core::pose::Pose::residue_type(), core::io::ResidueInformation::resName(), core::io::ResidueInformation::resSeq(), core::io::ResidueInformation::segmentID(), core::io::ResidueInformation::terCount(), core::io::pose_to_sfr::TR(), and use_pdb_info_for_num().
Referenced by append_residue_to_sfr(), generate_secondary_structure_informations(), get_link_record(), get_ssbond_record(), and init_from_pose().
SSBondInformation core::io::pose_to_sfr::PoseToStructFileRepConverter::get_ssbond_record | ( | core::pose::Pose const & | pose, |
core::Size | ii, | ||
core::Size | conn | ||
) |
References core::chemical::ResidueType::atom_index(), core::io::ResidueInformation::chainID(), core::io::SSBondInformation::chainID1, core::io::SSBondInformation::chainID2, core::conformation::Residue::connected_residue_at_resconn(), core::chemical::ResidueTypeBase::get_disulfide_atom_name(), get_residue_information(), core::io::ResidueInformation::iCode(), core::io::SSBondInformation::iCode1, core::io::SSBondInformation::iCode2, core::io::SSBondInformation::length, core::io::SSBondInformation::resID1, core::io::SSBondInformation::resID2, core::pose::Pose::residue(), core::pose::Pose::residue_type(), core::io::ResidueInformation::resName(), core::io::SSBondInformation::resName1, core::io::SSBondInformation::resName2, core::io::ResidueInformation::resSeq(), core::io::SSBondInformation::resSeq1, core::io::SSBondInformation::resSeq2, and core::conformation::Residue::xyz().
Referenced by get_connectivity_annotation_info().
void core::io::pose_to_sfr::PoseToStructFileRepConverter::grab_additional_pose_data | ( | core::pose::Pose const & | pose | ) |
Get additional pose data.
This is rewritten from the old core/io/pdb/file_data.cc:write_additional_pdb_data() function. This was a catch-all for dumping out all sorts of protocol-specific stuff (e.g. membrane info).
References core::io::StructFileRepOptions::fold_tree_io(), grab_foldtree(), grab_membrane_info(), grab_pdb_comments(), grab_pdb_parents(), grab_pdbinfo_labels(), grab_torsion_records(), core::io::StructFileRepOptions::normalize_to_thk(), options_, core::io::StructFileRepOptions::output_torsions(), and core::io::StructFileRepOptions::pdb_parents().
Referenced by init_from_pose().
|
private |
Get the conect record information from the pose and store it in the StructFileRep for output to pdbs/mmCIF/whatnot.
[in] | pose | The pose, for determining what's bonded to what. |
[in] | atom_index_in_pose | The index (in the whole pose) of the atom that we're setting up. |
[in] | res_index | The current residue index. |
[in] | atom_index_rsd | The index (in the residue) of the atom that we're setting up. |
[in] | dist_cutoff | The atom separation, above which a CONECT record is written. |
[in] | write_virtuals | Are virtual atoms being written out? |
[in/out] | ai The AtomInformation object that's being set up. Modified by this function |
[in] | pose | The pose, for determining what's bonded to what. |
[in] | atom_index_in_pose | The index (in the whole pose) of the atom that we're setting up. |
[in] | res_index | The current residue index. |
[in] | atom_index_rsd | The index (in the residue) of the atom that we're setting up. |
[in] | dist_cutoff | The atom separation, above which a CONECT record is written. |
[in] | write_virtuals | Are virtual atoms being written out? |
[in/out] | ai The AtomInformation object that's being set up. Modified by this function |
References atom_indices_, atom_indices_initialized_, core::chemical::ResidueType::atom_type(), core::chemical::ResidueType::bond_type(), core::conformation::Conformation::bonded_neighbor_all_res(), core::pose::Pose::conformation(), core::io::StructFileRepOptions::connect_info_cutoff(), core::io::AtomInformation::connected_indices, core::io::AtomInformation::connected_orders, determine_atom_indices(), core::chemical::ResidueType::is_canonical(), core::chemical::ResidueType::is_solvent(), core::chemical::AtomType::is_virtual(), core::chemical::ResidueType::is_virtual_residue(), core::conformation::Residue::natoms(), options_, core::io::StructFileRepOptions::output_virtual(), core::pose::Pose::residue(), core::pose::Pose::residue_type(), core::id::AtomID::rsd(), core::chemical::SingleBond, core::pose::Pose::size(), core::io::StructFileRepOptions::skip_connect_info(), core::io::StructFileRepOptions::write_all_connect_info(), and core::pose::Pose::xyz().
Referenced by append_atom_info_to_sfr().
|
private |
Get the foldtree from the pose and store it in the StructFileRep for output to pdbs/mmCIF/whatnot.
References core::pose::Pose::fold_tree(), and sfr_.
Referenced by grab_additional_pose_data().
|
private |
Get the membrane information from the pose and store it in the StructFileRep for output to pdbs/mmCIF/whatnot.
[in] | pose | The pose. |
[in] | normalize_to_thk | Normalized MEM lines, useful for visualizing the boundaries of the membrane by coupling the NORM and THK coordinates. Added by Rebecca. |
References core::io::AtomInformation::chainID, core::pose::Pose::conformation(), core::io::AtomInformation::element, core::conformation::Conformation::is_membrane(), core::io::AtomInformation::isHet, core::conformation::Conformation::membrane_info(), core::io::AtomInformation::name, core::io::AtomInformation::occupancy, core::io::AtomInformation::resName, core::io::AtomInformation::resSeq, core::io::AtomInformation::serial, sfr_, core::io::AtomInformation::x, core::io::AtomInformation::y, and core::io::AtomInformation::z.
Referenced by grab_additional_pose_data().
|
private |
Get the pdb comments from the pose and store it in the StructFileRep for output to pdbs/mmCIF/whatnot.
References core::pose::get_all_comments(), and sfr_.
Referenced by grab_additional_pose_data().
|
private |
Get the pdb parents from the pose and store it in the StructFileRep for output to pdbs/mmCIF/whatnot.
References core::pose::get_comment(), and sfr_.
Referenced by grab_additional_pose_data().
|
private |
Get the pdbinfo labels from the pose and store them in the StructFileRep for output to pdbs/mmCIF/whatnot.
This also abuses REMARK lines, and should be rewritten.
References core::conformation::membrane::out, core::pose::Pose::pdb_info(), and sfr_.
Referenced by grab_additional_pose_data().
void core::io::pose_to_sfr::PoseToStructFileRepConverter::grab_pose_cache_data | ( | core::pose::Pose const & | pose | ) |
Grab all the data that is in pose datacache as string/value pairs Arbitrary Float data Arbitrary String data.
Simple Metric data
References core::io::raw_data::ScoreMap::get_arbitrary_score_data_from_pose(), core::io::raw_data::ScoreMap::get_arbitrary_string_data_from_pose(), and sfr_.
Referenced by init_from_pose().
void core::io::pose_to_sfr::PoseToStructFileRepConverter::grab_pose_energies_table | ( | core::pose::Pose const & | pose | ) |
Grab all the data that makes the pose energies table.
References core::pose::Pose::energies(), core::scoring::Energies::energies_updated(), core::scoring::n_score_types, core::conformation::Residue::name(), core::scoring::name_from_score_type(), core::pose::Pose::residue(), core::scoring::Energies::residue_total_energies(), core::io::pose_to_sfr::restrict_prec(), protocols::hybridization::score, sfr_, core::pose::Pose::size(), core::id::to_string(), core::scoring::Energies::total_energies(), and core::scoring::Energies::weights().
Referenced by init_from_pose().
void core::io::pose_to_sfr::PoseToStructFileRepConverter::grab_simple_metric_data | ( | core::pose::Pose const & | pose | ) |
Grab RAW simple_metric data for SM IO.
References core::simple_metrics::get_sm_data(), core::simple_metrics::has_sm_data(), and sfr_.
Referenced by init_from_pose().
|
private |
Get the torsion information from the pose and store it in the StructFileRep for output to pdbs/mmCIF/whatnot.
This is an incredibly ugly way to handle the output of these records. This abuses the REMARK lines in the PDB format, and should be refactored. Keeping as-is for now to preserve legacy behaviour (VKM 29 January 2016, Chemical XRW).
References core::pose::Pose::chain(), core::scoring::dssp::Dssp::dssp_reduced(), core::chemical::element::F, core::chemical::element::I, core::chemical::ResidueType::is_carbohydrate(), core::pose::is_ideal_pose(), core::chemical::ResidueTypeBase::is_peptoid(), core::chemical::ResidueTypeBase::is_protein(), core::chemical::ResidueTypeBase::name1(), core::pose::Pose::omega(), core::conformation::membrane::out, core::pose::Pose::pdb_info(), core::pose::Pose::phi(), core::pose::Pose::psi(), core::pose::Pose::residue_type(), sfr_, core::pose::Pose::size(), and core::io::pose_to_sfr::TR().
Referenced by grab_additional_pose_data().
void core::io::pose_to_sfr::PoseToStructFileRepConverter::init_from_pose | ( | core::pose::Pose const & | pose | ) |
Fill StructFileRep object using information from given Pose object.
Read atoms/residue information from Pose object and put it in StructFileRep object.
References options_.
Referenced by protocols::constel::create_constel_records_from_sfr(), core::io::mmcif::dump_cif(), core::io::mmtf::dump_mmtf(), core::io::pdb::dump_pdb(), core::import_pose::PDBSilentStruct::fill_struct(), init_from_pose(), and core::io::pose_from_pose().
void core::io::pose_to_sfr::PoseToStructFileRepConverter::init_from_pose | ( | core::pose::Pose const & | pose, |
id::AtomID_Mask const & | mask | ||
) |
Fill StructFileRep object using information from given Pose object, for a specified subset of residues and atoms.
References init_from_pose(), and options_.
void core::io::pose_to_sfr::PoseToStructFileRepConverter::init_from_pose | ( | core::pose::Pose const & | pose, |
id::AtomID_Mask const & | mask, | ||
StructFileRepOptions const & | options | ||
) |
Fill StructFileRep object using information from given Pose object, for a specified subset of residues and atoms.
References append_atom_info_to_sfr(), append_residue_info_to_sfr(), core::pose::Pose::chain(), core::pose::symmetry::extract_asymmetric_unit(), generate_default_remarks(), generate_default_title_section(), generate_secondary_structure_informations(), get_connectivity_annotation_info(), get_parametric_info(), get_residue_information(), grab_additional_pose_data(), grab_pose_cache_data(), grab_pose_energies_table(), grab_simple_metric_data(), core::id::AtomID_Map< T >::has(), core::simple_metrics::has_sm_data(), core::pose::symmetry::is_symmetric(), core::conformation::Residue::natoms(), new_sfr(), options_, core::io::StructFileRepOptions::output_only_asymmetric_unit(), core::io::StructFileRepOptions::output_pose_cache(), core::io::StructFileRepOptions::output_pose_energies_table(), core::io::StructFileRepOptions::output_secondary_structure(), core::pose::Pose::pdb_info(), core::io::StructFileRepOptions::preserve_crystinfo(), core::io::StructFileRepOptions::preserve_header(), recalculate_new_chainIDs(), core::pose::Pose::residue(), sfr_, core::pose::Pose::size(), core::io::rcsb::THEORETICAL_MODEL, core::io::rcsb::UNKNOWN_EXPDTA, core::io::StructFileRepOptions::write_pdb_link_records(), core::io::StructFileRepOptions::write_pdb_parametric_info(), and core::io::StructFileRepOptions::write_pdb_title_section_records().
void core::io::pose_to_sfr::PoseToStructFileRepConverter::init_from_pose | ( | core::pose::Pose const & | pose, |
StructFileRepOptions const & | options | ||
) |
Fill StructFileRep object using information from given Pose object and a set of options.
Read atoms/residue information from Pose object and put it in StructFileRep object using options defined in StructFileRepOptions.
References init_from_pose(), core::pose::Pose::residue_type(), core::id::AtomID_Map< T >::set(), and core::pose::Pose::size().
void core::io::pose_to_sfr::PoseToStructFileRepConverter::init_from_pose | ( | core::pose::Pose const & | pose, |
utility::vector1< core::Size > const & | residue_indices | ||
) |
Fill StructFileRep object using information from given Pose object, for a specified subset of residues.
A lightweight, direct way of limiting pose pdb output to a subset of residues.
References init_from_pose(), core::pose::Pose::residue_type(), core::id::AtomID_Map< T >::set(), and core::pose::Pose::size().
core::io::StructFileRepOP core::io::pose_to_sfr::PoseToStructFileRepConverter::new_sfr | ( | ) |
Resets the PoseToStructFileRepConverter object, and reinitializes it with a fresh StruftFileRep object, returning an owning pointer to the new object.
References atom_indices_initialized_, and sfr_.
Referenced by init_from_pose(), and PoseToStructFileRepConverter().
|
private |
References core::pose::Pose::chain(), core::conformation::Conformation::chain_begin(), core::conformation::Conformation::chain_end(), protocols::loops::chainID, core::chemical::chr_chains(), core::pose::Pose::conformation(), core::conformation::Residue::connected_residue_at_lower(), core::conformation::Residue::connected_residue_at_upper(), core::pose::PDBInfo::empty_record(), core::conformation::Residue::is_carbohydrate(), core::conformation::Residue::is_protein(), new_chainIDs_, core::pose::Pose::num_chains(), options_, core::io::StructFileRepOptions::output_ligands_as_separate_chains(), core::pose::Pose::pdb_info(), core::pose::Pose::residue(), and core::io::pose_to_sfr::TR().
Referenced by init_from_pose().
|
private |
Set whether to write the fold tree, in the StructFileRepOptions object (options_).
References options_, and core::io::StructFileRepOptions::set_fold_tree_io().
StructFileRepOP core::io::pose_to_sfr::PoseToStructFileRepConverter::sfr | ( | ) |
Non-const access to the StructFileRep object.
Non-const access to the StructFileRep object.
References sfr_.
Referenced by protocols::constel::create_constel_records_from_sfr(), core::io::mmcif::dump_cif(), core::io::mmtf::dump_mmtf(), core::io::pdb::dump_pdb(), core::io::pdb::dump_pdb_residue(), core::import_pose::PDBSilentStruct::fill_struct(), core::io::pose_from_pose(), and total_sfr_atoms().
|
private |
Get the total number of atoms in the SFR.
References sfr(), and protocols::analysis::total.
Referenced by get_new_atom_serial_num().
|
private |
Get the total number of atoms in a chain in the SFR.
References sfr().
|
private |
References options_, core::pose::Pose::pdb_info(), and core::io::StructFileRepOptions::renumber_pdb().
Referenced by add_atom_to_sfr(), append_atom_info_to_sfr(), and get_residue_information().
|
friend |
|
friend |
Debug printing.
|
private |
The index for every atom in the Pose – used for generating CONECT records.
Referenced by determine_atom_indices(), and grab_conect_records_for_atom().
|
private |
Referenced by determine_atom_indices(), grab_conect_records_for_atom(), and new_sfr().
|
private |
Referenced by get_residue_information(), and recalculate_new_chainIDs().
|
private |
The StructFileRepOptions object.
Created at PoseToStructFileRepConverter object creation; not read-accessible outside of this object.
Referenced by add_atom_to_sfr(), append_atom_info_to_sfr(), append_residue_info_to_sfr(), determine_atom_indices(), generate_default_remarks(), generate_default_title_section(), generate_secondary_structure_informations(), get_link_record(), get_residue_information(), grab_additional_pose_data(), grab_conect_records_for_atom(), init_from_pose(), recalculate_new_chainIDs(), set_fold_tree_io(), and use_pdb_info_for_num().
|
private |
Owning pointer to the StructFileRep object, copied in during object construction.
Referenced by append_atom_info_to_sfr(), append_residue_info_to_sfr(), generate_default_remarks(), generate_default_title_section(), generate_HELIXInformation(), generate_SHEETInformation(), get_connectivity_annotation_info(), get_new_atom_serial_num(), grab_foldtree(), grab_membrane_info(), grab_pdb_comments(), grab_pdb_parents(), grab_pdbinfo_labels(), grab_pose_cache_data(), grab_pose_energies_table(), grab_simple_metric_data(), grab_torsion_records(), init_from_pose(), new_sfr(), and sfr().