|
| T_Molecular_system_loader (void) |
| Default constructor. More...
|
|
virtual | ~T_Molecular_system_loader (void) |
| Destructor. More...
|
|
virtual boost::program_options::options_description | add_options (void) override |
| Virtual method for adding options to the module. More...
|
|
virtual bool | check_options (std::string &message) const override |
| Checks that the input options' values are coherent. More...
|
|
std::string | get_output_prefix (void) const override |
| Returns a prefix that concatains the input line options used when running the module. More...
|
|
bool | load (unsigned verbose, std::ostream &out) override |
| Load function. More...
|
|
std::string | get_name (void) const override |
| Return the name of the class itself. More...
|
|
const std::vector< std::shared_ptr< Molecular_system > > & | get_molecular_systems (void) const |
| Retrieves the molecular systems loaded from the PDB / mmCIF file(s). This function returns a constant reference to the vector containing the molecular systems loaded from the PDB file(s). More...
|
|
const std::vector< bool > & | are_files_valid () const |
| Tells whether a loaded file led to the construction of a Molecular_system. More...
|
|
void | statistics (std::ostream &out) const |
| Prints statistics about the loaded PDB files. This function prints statistics about the loaded PDB files, including the number of files, their details, and various counts related to the loaded molecular systems. More...
|
|
void | check_validity (void) const |
| Performs validity / sanity checks on the loaded PDB file. It notably controls that each residue as a Calpha, and identify missing residues in the sequence. As it returns void, it is only interesting as an informational purpose. More...
|
|
| SET_AND_GET (loaded_file_paths, std::vector< std::string >) |
| Provide a list of file paths to load, pdb and cif formats and are accepted, as well as these format compressed to gz / tar.gz. More...
|
|
| SET_AND_GET (loaded_chains, std::vector< std::vector< std::string >>) |
| By default, all chains are loaded for all files For each file, one can select a different subset of chains, which will be the same for all possible models extracted from the file. If no chain is provided for a given file, then all chains are loaded. The hypothesis is that if the user doesn't want to load any chain, it's better not to add the file at all. More...
|
|
| SET_AND_GET (loaded_models, std::vector< std::vector< std::size_t >>) |
| By default, all models are loaded for all files. For each file, one can select a different subset of models. If no model id provided for a given file, then all models are loaded. The hypothesis is that if the user doesn't want to load any model, it's better not to add the file at all. More...
|
|
| SET_AND_GET (loaded_water, bool) |
| By default, the water molecules are not loaded. Associated atoms are filtered. To load water molecules is set to true (even if loaded_hetatoms is set to false), if set to false, water molecules are not loaded (even if loaded_hetatoms is set to true) More...
|
|
| SET_AND_GET (loaded_hetatoms, bool) |
| By default, hetero atoms are not loaded. These are filtered. More...
|
|
| SET_AND_GET (loaded_hydrogens, bool) |
| By default, hydrogen atoms are not loaded. These are filtered. More...
|
|
| SET_AND_GET (loaded_occupancy_mode, unsigned) |
| By default, the occupancy policy is set to MAX. More...
|
|
| SET_AND_GET (loaded_alternate_selected, char) |
| By default, the alternate atom is chosen according to the occupancy policy. If specified, the alternate atom with alternate_selected charater will be selected. More...
|
|
| SET_AND_GET (loaded_b_factor_limit, double) |
| By default, there is no limit to the b_factor (double numeric limit). Hence, by default, no atom is filtered according to this property. More...
|
|
| SET_AND_GET (pdb_checker, unsigned) |
| By default, no check is realized on the molecular systems. More...
|
|
|
std::vector< bool > | m_file_is_valid |
| Number of files that were discarded because they did not exhibit the minimum set of required variables. More...
|
|
std::vector< std::size_t > | m_atm_discarded |
| Number of actually discarded atoms for each loaded PDB file (not the sum of all discarded atoms in each category). More...
|
|
std::vector< std::size_t > | m_model_discarded |
| Number of discarded atom for not beeing in loaded models. More...
|
|
std::vector< std::size_t > | m_chain_discarded |
| Number of discarded atom for not beeing in loaded chains. More...
|
|
std::vector< std::size_t > | m_temp_discarded |
| Number of discarded atom for having a too great B factor for each loaded PDB file. More...
|
|
std::vector< std::size_t > | m_htm_discarded |
| Number of discarded hetero-atoms for each loaded PDB file. More...
|
|
std::vector< std::size_t > | m_hoh_discarded |
| Number of discarded water atoms for each loaded PDB file. More...
|
|
std::vector< std::size_t > | m_h_discarded |
| Number of discarded hydrogens for each loaded PDB file. More...
|
|
std::vector< std::size_t > | m_alt_discarded |
| Number of discarded alternate location atoms for each loaded PDB file. More...
|
|
template<typename Molecular_system_ = Default_molecular_system>
class SBL::IO::T_Molecular_system_loader< Molecular_system_ >
Class for loading molecular systems.
This class provides functionality for loading molecular systems using various options. The requirements on the files are the following :
- Cartesian coordinates x, y, z : while it could make sense in a SBL::IO::T_Molecular_covalent_structure_loader to not have any cartesian coordinate, for a molecular system it is of no sense, since Molecular_atom need to be positioned
- Ids : atom serial number must be provided. It should not be strickly required as one could infer a meaningful implicit sequence of ordered serial numbers. Espcially if no alternate locations are provided, or all occupancy factors are equal to 1. Since it would lead to heavy checks in any but these cases, atom serial numbers are required in the file.
- Chain ids, residue ids : they are also required to build a Molecular_system.
- If alternate locations are provided, occupancy factors must as well be provided. The various options act as filters on the atoms / heteroatoms to load. If no model id are provided, all models are loaded. If no chain id are provided, all chains are loaded. Residues for which all atoms have been filtered are not added to the molecular system. Chains for which all residues have been filtered are not added to the molecular system. Models for which all chains have been filtered is still added to the molecular system.
- Template Parameters
-
Molecular_system_ | The type of molecular system to load |