Gemmi C++ API
Loading...
Searching...
No Matches
gemmi
include
gemmi
to_pdb.hpp
Go to the documentation of this file.
1
// Copyright 2017 Global Phasing Ltd.
2
//
3
// Writing PDB file format (Structure -> pdb file).
4
5
#ifndef GEMMI_TO_PDB_HPP_
6
#define GEMMI_TO_PDB_HPP_
7
8
#include "
model.hpp
"
9
#include <ostream>
10
11
namespace
gemmi
{
12
13
struct
PdbWriteOptions
{
14
bool
minimal_file
=
false
;
// disable many records not listed below (HEADER, TITLE, ...)
15
bool
atom_records
=
true
;
// write atomic models (set to false for headers only)
16
bool
seqres_records
=
true
;
// write SEQRES
17
bool
ssbond_records
=
true
;
// write SSBOND
18
bool
link_records
=
true
;
// write LINK
19
bool
cispep_records
=
true
;
// write CISPEP
20
bool
cryst1_record
=
true
;
// write CRYST1
21
bool
ter_records
=
true
;
// write TER records
22
bool
conect_records
=
false
;
// write CONECT - matters only if add_conect() was used
23
bool
end_record
=
true
;
// write END
24
bool
numbered_ter
=
true
;
// TER record gets own serial number
25
bool
ter_ignores_type
=
false
;
// put TER after last atom in Chain (even if it's water)
26
bool
use_linkr
=
false
;
// use non-standard Refmac LINKR record instead of LINK
27
bool
preserve_serial
=
false
;
// use serial numbers from Atom.serial
28
// end of snippet for mol.rst
29
30
static
PdbWriteOptions
minimal
() {
31
PdbWriteOptions
opt;
32
opt.
minimal_file
=
true
;
33
opt.
seqres_records
=
false
;
34
opt.
ssbond_records
=
false
;
35
opt.
link_records
=
false
;
36
opt.
cispep_records
=
false
;
37
opt.
end_record
=
false
;
38
return
opt;
39
}
40
static
PdbWriteOptions
headers_only
() {
41
PdbWriteOptions
opt;
42
opt.
atom_records
=
false
;
43
opt.
end_record
=
false
;
44
return
opt;
45
}
46
};
47
48
GEMMI_DLL
void
write_pdb
(
const
Structure
&
st
, std::ostream& os,
49
PdbWriteOptions
opt=
PdbWriteOptions
());
50
GEMMI_DLL
std::string
make_pdb_string
(
const
Structure
&
st
,
51
PdbWriteOptions
opt=
PdbWriteOptions
());
52
53
// deprecated
54
inline
void
write_minimal_pdb
(
const
Structure
&
st
, std::ostream& os) {
55
write_pdb
(
st
, os,
PdbWriteOptions::minimal
());
56
}
57
// deprecated
58
inline
std::string
make_pdb_headers
(
const
Structure
&
st
) {
59
return
make_pdb_string
(
st
,
PdbWriteOptions::headers_only
());
60
}
61
62
}
// namespace gemmi
63
64
#endif
GEMMI_DLL
#define GEMMI_DLL
Definition
fail.hpp:53
model.hpp
gemmi
Definition
addends.hpp:12
gemmi::make_pdb_string
GEMMI_DLL std::string make_pdb_string(const Structure &st, PdbWriteOptions opt=PdbWriteOptions())
gemmi::make_pdb_headers
std::string make_pdb_headers(const Structure &st)
Definition
to_pdb.hpp:58
gemmi::write_minimal_pdb
void write_minimal_pdb(const Structure &st, std::ostream &os)
Definition
to_pdb.hpp:54
gemmi::write_pdb
GEMMI_DLL void write_pdb(const Structure &st, std::ostream &os, PdbWriteOptions opt=PdbWriteOptions())
gemmi::HklValue
Definition
asudata.hpp:97
gemmi::PdbWriteOptions
Definition
to_pdb.hpp:13
gemmi::PdbWriteOptions::ter_ignores_type
bool ter_ignores_type
Definition
to_pdb.hpp:25
gemmi::PdbWriteOptions::minimal_file
bool minimal_file
Definition
to_pdb.hpp:14
gemmi::PdbWriteOptions::use_linkr
bool use_linkr
Definition
to_pdb.hpp:26
gemmi::PdbWriteOptions::ssbond_records
bool ssbond_records
Definition
to_pdb.hpp:17
gemmi::PdbWriteOptions::headers_only
static PdbWriteOptions headers_only()
Definition
to_pdb.hpp:40
gemmi::PdbWriteOptions::minimal
static PdbWriteOptions minimal()
Definition
to_pdb.hpp:30
gemmi::PdbWriteOptions::seqres_records
bool seqres_records
Definition
to_pdb.hpp:16
gemmi::PdbWriteOptions::atom_records
bool atom_records
Definition
to_pdb.hpp:15
gemmi::PdbWriteOptions::conect_records
bool conect_records
Definition
to_pdb.hpp:22
gemmi::PdbWriteOptions::link_records
bool link_records
Definition
to_pdb.hpp:18
gemmi::PdbWriteOptions::numbered_ter
bool numbered_ter
Definition
to_pdb.hpp:24
gemmi::PdbWriteOptions::end_record
bool end_record
Definition
to_pdb.hpp:23
gemmi::PdbWriteOptions::preserve_serial
bool preserve_serial
Definition
to_pdb.hpp:27
gemmi::PdbWriteOptions::cryst1_record
bool cryst1_record
Definition
to_pdb.hpp:20
gemmi::PdbWriteOptions::cispep_records
bool cispep_records
Definition
to_pdb.hpp:19
gemmi::PdbWriteOptions::ter_records
bool ter_records
Definition
to_pdb.hpp:21
gemmi::Structure
Definition
model.hpp:921
Generated by
1.9.8