BALL
1.4.2
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
BALL
STRUCTURE
peptideBuilder.h
Go to the documentation of this file.
1
// -*- Mode: C++; tab-width: 2; -*-
2
// vi: set ts=2:
3
//
4
5
#ifndef BALL_STRUCTURE_PEPTIDEBUILDER_H
6
#define BALL_STRUCTURE_PEPTIDEBUILDER_H
7
8
#ifndef BALL_STRUCTURE_PEPTIDES_H
9
# include <
BALL/STRUCTURE/peptides.h
>
10
#endif
11
12
namespace
BALL
13
{
14
class
FragmentDB;
15
16
namespace
Peptides
17
{
21
class
BALL_EXPORT
AminoAcidDescriptor
22
{
23
public
:
24
27
AminoAcidDescriptor
();
28
35
AminoAcidDescriptor
(
const
String
& type,
const
Angle
& phi=
Angle
(-47.,
false
),
36
const
Angle
& psi=
Angle
(-58.,
false
),
const
Angle
& omega=
Angle
(180.,
false
));
38
41
virtual
~
AminoAcidDescriptor
();
42
45
AminoAcidDescriptor
(
const
AminoAcidDescriptor
& aad);
46
50
void
setAminoAcidType(
const
String
& type);
51
54
void
setPhi(
const
Angle
& phi);
55
58
void
setPsi(
const
Angle
& psi);
59
62
void
setOmega(
const
Angle
& omega);
63
66
const
String
& getType()
const
;
67
70
const
Angle
& getPhi()
const
;
71
74
const
Angle
& getPsi()
const
;
75
78
const
Angle
& getOmega()
const
;
79
80
protected
:
81
82
String
type_
;
83
Angle
phi_
;
84
Angle
psi_
;
85
Angle
omega_
;
86
};
87
92
class
BALL_EXPORT
PeptideBuilder
93
{
94
public
:
95
98
PeptideBuilder
();
99
104
PeptideBuilder
(
const
std::vector<AminoAcidDescriptor>& sequence);
105
108
PeptideBuilder
(
const
String
& sequence,
const
Angle
& phi =
Angle
(-47.,
false
),
109
const
Angle
& psi =
Angle
(-58.,
false
),
const
Angle
& omega =
Angle
(180.,
false
));
110
113
PeptideBuilder
(
const
PeptideBuilder
& pc);
114
117
virtual
~
PeptideBuilder
();
118
121
void
addAminoAcid(
const
String
& type,
const
Angle
& phi=
Angle
(-47.,
false
),
122
const
Angle
& psi=
Angle
(-58.,
false
),
const
Angle
& omega=
Angle
(180.,
false
));
123
// Sheet angles ???
124
127
void
addAminoAcid(
const
AminoAcidDescriptor
& aad);
128
131
void
setChainName(
const
String
& name);
132
135
const
String
& getChainName()
const
;
136
139
void
setProteinName(
const
String
& name);
140
143
const
String
& getProteinName()
const
;
144
147
Protein
* construct();
148
150
void
setFragmentDB(
const
FragmentDB
*
db
)
151
;
152
154
const
FragmentDB
* getFragmentDB()
const
155
;
156
157
protected
:
158
std::vector<AminoAcidDescriptor>
sequence_
;
159
String
chainname_
;
160
String
proteinname_
;
161
163
bool
is_proline_
;
164
FragmentDB
*
fragment_db_
;
165
169
Residue
* createResidue_(
const
String
& type,
const
int
id
);
170
void
insert_(
Residue
& resnew,
Residue
& resold);
171
void
transform_(
const
Angle
& phi,
const
Angle
& psi,
Residue
& resold,
Residue
& resnew);
172
void
peptide_(
Residue
& resold,
Residue
& resnew);
173
void
setOmega_(
Residue
& resold,
Residue
& residue,
const
Angle
& omega);
174
PDBAtom
* getAtomByName_(
Residue
& res,
const
String
& name);
175
};
176
177
}
// namespace Peptides
178
179
}
// namespace BALL
180
181
#endif // BALL_STRUCTURE_PEPTIDEBUILDER_H
Generated by
1.8.3.1