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
protein_interface_design
movers
TryRotamers.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/protein_interface_design/movers/TryRotamers.hh
11
/// @author Sarel Fleishman (sarelf@u.washington.edu), Jacob Corn (jecorn@u.washington.edu)
12
13
#ifndef INCLUDED_protocols_protein_interface_design_movers_TryRotamers_hh
14
#define INCLUDED_protocols_protein_interface_design_movers_TryRotamers_hh
15
16
#include <
core/types.hh
>
17
#include <
core/pose/Pose.fwd.hh
>
18
#include <utility/tag/Tag.fwd.hh>
19
#include <
protocols/filters/Filter.hh
>
20
#include <
protocols/moves/Mover.hh
>
21
#include <
protocols/moves/DataMap.fwd.hh
>
22
#include <
core/scoring/ScoreFunction.hh
>
/// EVIL
23
#include <
core/pack/rotamer_set/RotamerSet.hh
>
/// EVIL
24
25
#include <utility/vector1.hh>
26
27
28
namespace
protocols {
29
namespace
protein_interface_design {
30
namespace
movers {
31
32
class
TryRotamers
:
public
protocols::moves::Mover
33
{
34
public
:
35
typedef
core::scoring::ScoreFunctionCOP
ScoreFunctionCOP
;
36
typedef
core::scoring::ScoreFunction
ScoreFunction
;
37
typedef
core::pose::Pose
Pose
;
38
typedef
core::conformation::Residue
Residue
;
39
typedef
core::pack::rotamer_set::RotamerSetOP
RotamerSetOP
;
40
41
public
:
42
TryRotamers
();
43
TryRotamers
(
core::Size
resnum,
44
core::scoring::ScoreFunction
const
& scorefxn,
45
protocols::filters::Filter
const
& final_filter,
46
core::Size
explosion = 0,
// rotamer explosion
47
core::Size
jump_num = 1,
48
bool
clash_check =
false
49
);
50
51
/// @param jump_num The jump number of the interface. 0 for no interface
52
/// @note Pass everything through the final filter (True Filter)
53
TryRotamers
(
core::Size
resnum,
54
core::scoring::ScoreFunction
const
& scorefxn,
55
core::Size
explosion = 0,
// rotamer explosion
56
core::Size
jump_num = 1,
57
bool
clash_check =
false
58
);
59
60
61
/// EVIL
62
core::pack::rotamer_set::RotamerSetOP
rotamer_set
() {
return
rotset_
; }
63
64
/// EVIL
65
void
get_rotamer_set
(
core::pack::rotamer_set::RotamerSetOP
const
& rs ){
66
rotset_
= rs;
67
rotamer_it_
=
begin
();
68
}
69
70
// for direct access
71
void
set_resnum
(
core::Size
const
r ) {
resnum_
= r; }
72
73
/// EVIL
74
void
set_scorefxn
(
core::scoring::ScoreFunctionCOP
scorefxn ){
scorefxn_
= scorefxn; }
75
76
void
apply
(
core::pose::Pose
& pose );
77
virtual
std::string
get_name
()
const
;
78
void
parse_my_tag
(
utility::tag::TagPtr
const
tag,
79
protocols::moves::DataMap
&,
80
protocols::filters::Filters_map
const
&,
81
protocols::moves::Movers_map
const
&,
82
core::pose::Pose
const
& );
83
core::pack::rotamer_set::Rotamers::const_iterator
begin
()
const
{
return
rotset_
->begin(); }
84
core::pack::rotamer_set::Rotamers::const_iterator
end
()
const
{
return
rotset_
->end(); }
85
86
protocols::moves::MoverOP
clone
()
const
{
return
(
protocols::moves::MoverOP
(
new
TryRotamers
( *
this
) ) ); }
87
protocols::moves::MoverOP
fresh_instance
()
const
{
return
protocols::moves::MoverOP
(
new
TryRotamers
); }
88
virtual
~TryRotamers
();
89
private
:
90
core::scoring::ScoreFunctionCOP
scorefxn_
;
91
core::pack::rotamer_set::Rotamers::const_iterator
rotamer_it_
;
92
core::pack::rotamer_set::RotamerSetOP
rotset_
;
93
core::Size
resnum_
;
94
core::Size
jump_num_
;
95
bool
clash_check_
;
96
bool
automatic_connection_
;
// should TryRotamers decide on the foldtree on its own? default true
97
core::Size
explosion_
;
// rotamer explosion
98
protocols::filters::FilterOP
final_filter_
;
// filter. Defaults to TrueFilter
99
utility::vector1< core::Size >
shove_residues_
;
// a list of residues for which to use the shove_bb atom type, so that backbone atoms might clash.
100
};
101
102
103
}
//movers
104
}
// protein_interface_design
105
}
// protocols
106
107
108
#endif
/*INCLUDED_protocols_protein_interface_design_movers_TryRotamers_HH*/
109
Generated on Sat Jun 1 2013 12:07:42 for Rosetta 3.5 by
1.8.4