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
FilterStructs.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/FilterStructs.hh
11
/// @brief filter structures
12
/// @author Nobuyasu Koga ( nobuyasu@uw.edu )
13
14
#ifndef INCLUDED_protocols_flxbb_FilterStructs_hh
15
#define INCLUDED_protocols_flxbb_FilterStructs_hh
16
17
// Unit Header
18
#include <
protocols/flxbb/FilterStructs.fwd.hh
>
19
20
// Project Headers
21
#include <
core/types.hh
>
22
#include <
core/pose/Pose.fwd.hh
>
23
24
// Utility Headers
25
#include <utility/pointer/ReferenceCount.hh>
26
27
#include <string>
28
29
#include <utility/vector1.hh>
30
31
32
namespace
protocols {
33
namespace
flxbb{
34
35
36
////////////////////////////////////////////////////////////////////////////////////////
37
class
FilterStructs
:
public
utility::pointer::ReferenceCount
{
38
public
:
39
40
typedef
std::string
String
;
41
typedef
core::Real
Real
;
42
typedef
core::Size
Size
;
43
typedef
core::pose::Pose
Pose
;
44
typedef
core::pose::PoseOP
PoseOP
;
45
46
47
public
:
// constructor/destructor
48
49
50
/// @brief default constructor
51
FilterStructs
();
52
53
/// @brief value constructor
54
FilterStructs
(
String
const
&
name
);
55
56
/// @brief value constructor
57
FilterStructs
(
String
const
&
name
,
Size
const
ntrial );
58
59
/// @brief value constructor
60
FilterStructs
(
String
const
&
name
,
Pose
const
& pose,
Size
const
ntrial );
61
62
/// @brief copy constructor
63
FilterStructs
(
FilterStructs
const
& rval );
64
65
/// @brief destructor
66
virtual
~FilterStructs
();
67
68
69
public
:
// virtural constructor
70
71
72
/// @brief
73
virtual
FilterStructsOP
clone
()
const
;
74
75
/// @brief
76
virtual
FilterStructsOP
fresh_instance
()
const
;
77
78
79
public
:
// virtual operations
80
81
82
/// @brief
83
virtual
void
apply
(
Pose
const
& ) = 0;
84
85
/// @brief
86
virtual
void
reset
(
Pose
const
& ) = 0;
87
88
89
public
:
// accessors
90
91
92
/// @brief
93
inline
String
name
()
const
{
return
name_
; }
94
95
/// @brief
96
inline
bool
filter_on
()
const
{
return
filter_on_
; }
97
98
/// @brief
99
inline
Size
current_trial
()
const
{
return
current_trial_
; }
100
101
/// @brief
102
PoseOP
get_bestpose
()
const
;
103
104
105
public
:
// mutators
106
107
108
/// @brief
109
void
name
(
String
const
&
name
);
110
111
/// @brief
112
void
set_ntrial
(
Size
const
ntrial );
113
114
115
protected
:
//
116
117
118
/// @brief
119
void
initialize
(
Pose
const
& pose );
120
121
/// @brief
122
void
set_filter_off
() {
filter_on_
=
false
; }
123
124
/// @brief
125
void
set_filter_on
() {
filter_on_
=
true
; }
126
127
/// @brief
128
void
count_ntrial
();
129
130
/// @brief
131
bool
filter_is_over
();
132
133
/// @brief
134
void
set_bestpose
(
Pose
const
& pose );
135
136
137
private
:
138
139
String
name_
;
140
bool
filter_on_
;
141
Size
ntrial_
;
142
Size
current_trial_
;
143
PoseOP
best_pose_
;
144
145
};
146
147
////////////////////////////////////////////////////////////////////////////////////////
148
class
FilterStructs_Packstat
:
public
FilterStructs
{
149
public
:
150
151
typedef
FilterStructs
Super
;
152
typedef
core::Real
Real
;
153
typedef
core::Size
Size
;
154
typedef
core::pose::Pose
Pose
;
155
156
157
public
:
158
159
/// @brief default constructor
160
FilterStructs_Packstat
(
Size
const
ntrial=10 );
161
162
/// @brief constructor
163
FilterStructs_Packstat
(
Pose
const
& pose,
Size
const
ntrial=10 );
164
165
/// @brief copy constructor
166
FilterStructs_Packstat
(
FilterStructs_Packstat
const
& rval );
167
168
/// @brief destructor
169
virtual
~FilterStructs_Packstat
();
170
171
172
public
:
// virtural constructor
173
174
175
/// @brief
176
virtual
FilterStructsOP
clone
()
const
;
177
178
/// @brief
179
virtual
FilterStructsOP
fresh_instance
()
const
;
180
181
182
public
:
// virtual main operation
183
184
185
/// @brief
186
virtual
void
apply
(
Pose
const
& );
187
188
/// @brief
189
virtual
void
reset
(
Pose
const
& );
190
191
192
private
:
193
194
Real
best_packscore_
;
195
196
};
197
198
////////////////////////////////////////////////////////////////////////////////////////
199
class
FilterStructs_TotalCharge
:
public
FilterStructs
{
200
public
:
201
202
typedef
FilterStructs
Super
;
203
typedef
core::Real
Real
;
204
typedef
core::Size
Size
;
205
typedef
core::pose::Pose
Pose
;
206
207
208
public
:
209
210
211
/// @brief constructor
212
FilterStructs_TotalCharge
(
Size
const
ntrial=20 );
213
214
/// @brief constructor
215
FilterStructs_TotalCharge
(
Pose
const
& pose,
Size
const
ntrial=20 );
216
217
/// @brief copy constructor
218
FilterStructs_TotalCharge
(
FilterStructs_TotalCharge
const
& rval );
219
220
/// @brief destructor
221
virtual
~FilterStructs_TotalCharge
();
222
223
224
public
:
// virtural constructor
225
226
227
/// @brief
228
virtual
FilterStructsOP
clone
()
const
;
229
230
/// @brief
231
virtual
FilterStructsOP
fresh_instance
()
const
;
232
233
234
public
:
// virtual main operation
235
236
237
/// @brief
238
virtual
void
apply
(
Pose
const
& );
239
240
/// @brief
241
virtual
void
reset
(
Pose
const
& );
242
243
244
private
:
245
246
Size
disallowed_value_
;
247
248
};
249
250
251
252
}
// flxbb
253
}
// protocols
254
255
256
#endif
Generated on Sat Jun 1 2013 11:50:49 for Rosetta 3.5 by
1.8.4