Rosetta 3.5
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
src
protocols
flxbb
DesignTask.hh
Go to the documentation of this file.
1
// -*- mode:c++;tab-width:2;indent-tabs-mode:t;show-trailing-whitespace:t;rm-trailing-spaces:t -*-
2
// vi: set ts=2 noet:
3
//
4
// (c) Copyright Rosetta Commons Member Institutions.
5
// (c) This file is part of the Rosetta software suite and is made available under license.
6
// (c) The Rosetta software is developed by the contributing members of the Rosetta Commons.
7
// (c) For more information, see http://www.rosettacommons.org. Questions about this can be
8
// (c) addressed to University of Washington UW TechTransfer, email: license@u.washington.edu.
9
//
10
/// @file protocols/flxbb/DesignTask.hh
11
/// @brief
12
/// @author Nobuyasu Koga ( nobuyasu@uw.edu )
13
///
14
15
#ifndef INCLUDED_protocols_flxbb_DesignTask_hh
16
#define INCLUDED_protocols_flxbb_DesignTask_hh
17
18
// Unit header
19
#include <
protocols/flxbb/DesignTask.fwd.hh
>
20
21
// Package headers
22
#include <
protocols/flxbb/FilterStructs.fwd.hh
>
23
24
// Project headers
25
#include <
core/chemical/AA.hh
>
26
#include <
core/pose/Pose.fwd.hh
>
27
#include <
core/scoring/ScoreFunction.fwd.hh
>
28
#include <
core/pack/task/PackerTask.fwd.hh
>
29
#ifdef __clang__
30
#include <
core/pack/task/PackerTask.fwd.hh
>
31
#endif
32
#include <
core/pack/task/operation/TaskOperation.fwd.hh
>
33
#include <
protocols/moves/Mover.fwd.hh
>
34
35
#include <utility/pointer/ReferenceCount.hh>
36
#include <utility/vector1.hh>
37
#include <
core/types.hh
>
38
39
40
namespace
protocols {
41
namespace
flxbb{
42
43
///////////////////////////////////////////////////////////////////////////////////////////////////////
44
class
DesignTask
:
public
utility::pointer::ReferenceCount
{
45
public
:
46
47
typedef
std::string
String
;
48
typedef
core::Size
Size
;
49
typedef
core::pose::Pose
Pose
;
50
typedef
core::scoring::ScoreFunctionOP
ScoreFunctionOP
;
51
typedef
core::pack::task::PackerTaskOP
PackerTaskOP
;
52
typedef
core::pack::task::operation::TaskOperationOP
TaskOperationOP
;
53
typedef
protocols::moves::MoverOP
MoverOP
;
54
typedef
protocols::flxbb::FilterStructsOP
FilterStructsOP
;
55
typedef
core::chemical::AA
AA
;
56
57
public
:
58
59
60
/// @brief default constructor
61
DesignTask
();
62
63
/// @brief value constructor
64
DesignTask
(
65
Size
const
ncycle
,
66
ScoreFunctionOP
const
sfxn,
67
MoverOP
const
mover
,
68
FilterStructsOP
const
filter_structs
=0,
69
PackerTaskOP
const
taskf=0,
70
String
const
&
resfile
=
""
71
);
72
73
/// @brief copy constructor
74
DesignTask
(
DesignTask
const
& rval );
75
76
/// @brief destructor
77
virtual
~DesignTask
();
78
79
/// @brief setup packer task
80
virtual
void
setup
(
Pose
const
&,
PackerTaskOP
const
) = 0;
81
82
83
public
:
// accessors
84
85
86
/// @brief the number of cycles of fixbb design and mover
87
Size
ncycle
()
const
;
88
89
/// @brief scorefxn for fixbb design
90
ScoreFunctionOP
scorefxn
()
const
;
91
92
/// @brief mover after fixbb design
93
MoverOP
mover
()
const
;
94
95
/// @brief filter during fixbb design
96
FilterStructsOP
filter_structs
()
const
;
97
98
/// @brief packer task for fixbb design
99
PackerTaskOP
packertask
()
const
;
100
101
/// @brief resfile
102
String
resfile
()
const
;
103
104
105
public
:
// mutators
106
107
108
/// @brief the number of cycles of design and mover
109
void
set_ncycle
(
Size
const
&
ncycle
);
110
111
/// @brief scorefxn for fixbb design
112
void
set_scorefxn
(
ScoreFunctionOP
const
sfxn );
113
114
/// @brief mover after fixbb design
115
void
set_mover
(
MoverOP
const
value );
116
117
/// @brief filter during fixbb design
118
void
set_filter_structs
(
FilterStructsOP
const
value );
119
120
/// @brief packer task
121
void
set_packertask
(
PackerTaskOP
const
taskf );
122
123
/// @brief set resfile
124
void
set_resfile
(
String
const
&
resfile
);
125
126
/// @brief add task operations
127
void
add_task_operations
(
utility::vector1< TaskOperationOP >
const
top );
128
129
/// @brief add task operation
130
void
add_task_operation
(
TaskOperationOP
const
top );
131
132
133
public
:
134
135
136
/// @brief output packertask
137
void
dump_packertask
( std::ostream & os );
138
139
140
protected
:
141
142
143
/// @brief task operations
144
utility::vector1< TaskOperationOP >
task_operations_
;
145
146
147
private
:
148
149
150
/// @brief the number of cycles of design and mover
151
Size
ncycle_
;
152
153
/// @brief scorefxn for fixbb design
154
ScoreFunctionOP
scorefxn_
;
155
156
/// @brief mover after fixbb design
157
MoverOP
mover_
;
158
159
/// @brief filter during fixbb design
160
FilterStructsOP
filter_structs_
;
161
162
/// @brief packertask used for fixbb design
163
PackerTaskOP
task_
;
164
165
/// @brief resfile name
166
String
resfile_
;
167
168
169
};
170
171
172
173
///////////////////////////////////////////////////////////////////////////////////////////////////////
174
class
DesignTask_Normal
:
public
DesignTask
{
175
public
:
176
177
typedef
core::pose::Pose
Pose
;
178
typedef
core::scoring::ScoreFunctionOP
ScoreFunctionOP
;
179
typedef
core::pack::task::PackerTaskOP
PackerTaskOP
;
180
typedef
protocols::flxbb::FilterStructsOP
FilterStructsOP
;
181
182
public
:
183
DesignTask_Normal
();
184
DesignTask_Normal
(
185
Size
ncycle
,
186
ScoreFunctionOP
sfxn,
187
MoverOP
mover
,
188
FilterStructsOP
filter_structs
=0 );
189
190
virtual
~DesignTask_Normal
();
191
192
virtual
void
setup
(
Pose
const
& pose,
PackerTaskOP
const
task );
193
194
};
195
196
///////////////////////////////////////////////////////////////////////////////////////////////////////
197
class
DesignTask_Layer
:
public
DesignTask
{
198
public
:
199
200
typedef
core::pose::Pose
Pose
;
201
typedef
core::scoring::ScoreFunctionOP
ScoreFunctionOP
;
202
typedef
core::pack::task::PackerTaskOP
PackerTaskOP
;
203
typedef
protocols::flxbb::FilterStructsOP
FilterStructsOP
;
204
205
public
:
206
DesignTask_Layer
();
207
208
DesignTask_Layer
(
209
bool
dsgn_core,
210
bool
dsgn_boundary,
211
bool
dsgn_surface,
212
bool
use_original_seq,
213
Size
ncycle
,
214
ScoreFunctionOP
sfxn,
215
MoverOP
mover
,
216
FilterStructsOP
filter_structs
=0 );
217
218
virtual
~DesignTask_Layer
();
219
220
virtual
void
setup
(
Pose
const
& pose,
PackerTaskOP
const
task );
221
222
private
:
223
224
bool
dsgn_core_
,
dsgn_boundary_
,
dsgn_surface_
;
225
bool
use_original_seq_
;
226
227
};
228
229
230
}
231
}
232
233
#endif
Generated on Sat Jun 1 2013 11:50:41 for Rosetta 3.5 by
1.8.4