Classes used to read and write PDB files.
Classes used to read and write PDB files.
A PDB file is broken up into records, made up of one line each, and
identified by a record name in the first six columns. The different
kinds of records are described at:
http://www.pdb.org/pdb/file_formats/pdb/pdbguide2.2/part_11.html
Each record is made up of fields belonging to one of sixteen different
types. The different kinds of fields are described at:
http://www.pdb.org/pdb/file_formats/pdb/pdbguide2.2/part_13.html
The primary public interface is @c PDBReader, which turns a PDB file
into a series of records. It behaves as an iterator through a
PDB file. PDBReader allows for varying implementations of file readers,
which among other things allows for investigating different levels of
efficiency. At this point the only implementation of @c PDBReader is
the @c SimplePDBReader_.
Using a PDBReader looks like this:
#include <rosetta/io/pdb/PDBReader.hh>
using rosetta::io::pdb::PDBReader;
using rosetta::io::pdb::PDBReaderOP;
using rosetta::io::pdb::records::Record;
using rosetta::io::pdb::records::RecordOP;
PDBReaderOP reader_p( new <PDBReader implementation>( PDB filename ) );
PDBReader & reader ( *reader_p );
{
RecordOP record_p ( reader.read() );
Record & record ( *record_p );
// Check the record's type and take appropriate action.
}
An equivalent @c PDBWriter has not yet been written.
##See Also
* [[Input options]]: Command line options for input files
* [[src Index Page]]: Explains the organization of Rosetta code in the `src` directory
* More namespaces in core:
* [[core::chemical|namespace-core-chemical]]
* [[core::conformation namespace|namespace-core-conformation]]
* [[core::conformation::idealization|namespace-core-conformation-idealization]] **NO LONGER EXISTS**
* [[core::fragments|namespace-core-fragments]]
* [[core::scoring|namespace-core-scoring]]
* [[Rosetta directory structure|rosetta-library-structure]]: Descriptions of contents of the major subdirectories in the Rosetta `main` directory
* [[Glossary]]: Brief definitions of Rosetta terms
* [[RosettaEncyclopedia]]: Detailed descriptions of additional concepts in Rosetta.
* [[Rosetta overview]]: Overview of major concepts in Rosetta
* [[Development Documentation]]: The main development documentation page