#include <boost/lexical_cast.hpp>
#include <boost/algorithm/string.hpp>
#include <boost/format.hpp>
#include <sstream>
#include <iostream>
#include <typeinfo>
#include <ESBTL/constants.h>
Go to the source code of this file.
Classes | |
struct | ESBTL::PDB::Mandatory_fields_default |
class | ESBTL::PDB::Line_format< Mandatory_fields > |
Namespaces | |
namespace | ESBTL |
namespace | ESBTL::PDB |
Defines | |
#define | RECOVER_FIELD(FNAME, TYPE, FROM, TO, DEF) |
Enumerations | |
enum | ESBTL::PDB::Record_type { ESBTL::PDB::ATOM = 0, ESBTL::PDB::HETATM, ESBTL::PDB::MODEL, ESBTL::PDB::ENDMDL, ESBTL::PDB::TER, ESBTL::PDB::END, ESBTL::PDB::ANISOU, ESBTL::PDB::CONECT, ESBTL::PDB::MASTER, ESBTL::PDB::UNKNOWN } |
Functions | |
template<class PDB_Atom > | |
std::string | ESBTL::PDB::get_atom_pdb_format (const PDB_Atom &atom) |
template<class PDB_Atom > | |
std::string | ESBTL::PDB::get_atom_pdb_reduced_format (const PDB_Atom &atom) |
template<class Mandatory_fields > | |
bool | ESBTL::get_is_hetatm (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
int | ESBTL::get_atom_serial_number (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
std::string | ESBTL::get_atom_name (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
char | ESBTL::get_alternate_location (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
double | ESBTL::get_occupancy (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
double | ESBTL::get_temperature_factor (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
std::string | ESBTL::get_element (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
int | ESBTL::get_charge (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
char | ESBTL::get_chain_identifier (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
std::string | ESBTL::get_residue_name (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
int | ESBTL::get_residue_sequence_number (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
char | ESBTL::get_insertion_code (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
char | ESBTL::get_x (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
char | ESBTL::get_y (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
template<class Mandatory_fields > | |
char | ESBTL::get_z (const std::pair< PDB::Line_format< Mandatory_fields >, std::string > &p) |
#define RECOVER_FIELD | ( | FNAME, | |
TYPE, | |||
FROM, | |||
TO, | |||
DEF | |||
) |
TYPE get_##FNAME(const std::string& line) const { \ if (line.length() < TO){\ if (! Mandatory_fields::FNAME) return TYPE(DEF);\ else{\ std::cerr << "Fatal error: Cannot extract field \'" << #FNAME << "\' in \n";\ std::cerr << "<|" << line << "|>\n";\ exit (EXIT_FAILURE);\ }\ }\ return PDB::extract_field<TYPE>(line,FROM,TO,DEF,#FNAME,Mandatory_fields::FNAME); \ }