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
enzdes
SecondaryMatchProtocol.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/enzdes/SecondaryMatchProtocol.hh
11
///
12
/// @brief
13
/// @author Florian Richter
14
15
16
#ifndef INCLUDED_protocols_enzdes_SecondaryMatchProtocol_hh
17
#define INCLUDED_protocols_enzdes_SecondaryMatchProtocol_hh
18
19
20
#include <
protocols/enzdes/EnzdesBaseProtocol.hh
>
21
// AUTO-REMOVED #include <protocols/toolbox/match_enzdes_util/EnzConstraintIO.hh>
22
23
#include <
core/pose/Pose.fwd.hh
>
24
#include <
core/scoring/ScoreFunction.fwd.hh
>
25
#include <
core/chemical/ResidueType.fwd.hh
>
26
#include <
core/conformation/Residue.fwd.hh
>
27
28
#include <
protocols/toolbox/match_enzdes_util/EnzConstraintIO.fwd.hh
>
29
#include <utility/vector1.hh>
30
31
32
33
namespace
protocols{
34
namespace
enzdes{
35
36
class
SecondaryMatchProtocol
;
37
typedef
utility::pointer::owning_ptr< SecondaryMatchProtocol >
SecondaryMatchProtocolOP
;
38
typedef
utility::pointer::owning_ptr< SecondaryMatchProtocol const >
SecondaryMatchProtocolCOP
;
39
typedef
utility::pointer::access_ptr< SecondaryMatchProtocol const >
SecondaryMatchProtocolCAP
;
40
41
class
PoseFoundResiduesCombination
;
42
43
typedef
utility::pointer::owning_ptr< PoseFoundResiduesCombination >
PoseFoundResiduesCombinationOP
;
44
45
46
47
class
SecondaryMatchProtocol
:
public
protocols::enzdes::EnzdesBaseProtocol
48
{
49
50
public
:
51
52
SecondaryMatchProtocol
();
53
~SecondaryMatchProtocol
();
54
55
void
apply
(
core::pose::Pose
& start_pose);
56
57
virtual
std::string
get_name
()
const
;
58
59
core::Size
60
residues_compatible
(
61
core::conformation::ResidueCOP
res1,
62
core::conformation::ResidueCOP
res2
63
)
const
;
64
65
66
bool
67
do_matching
(
68
core::pose::Pose
& start_pose
69
);
70
71
void
72
set_trial_positions
(
73
utility::vector1< core::Size >
const
& trial_pos ){
74
trial_positions_
= trial_pos; }
75
76
77
protected
:
78
79
void
80
add_enz_cst_interaction_to_pose
(
81
core::pose::Pose
& pose,
82
toolbox::match_enzdes_util::EnzConstraintParametersCOP
params,
83
toolbox::match_enzdes_util::EnzCstTemplateResCOP
missing_template,
84
toolbox::match_enzdes_util::EnzCstTemplateResCOP
present_template,
85
toolbox::match_enzdes_util::EnzConstraintIOCOP
cstio
86
);
87
88
void
89
find_all_allowed_positions
(
90
core::pose::Pose
const
& pose
91
);
92
93
bool
94
generate_and_dump_pose_found_residues_combinations
(
core::pose::PoseCOP
ref_poseCOP );
95
96
97
bool
98
restype_possible_at_position
(
99
core::pose::Pose
const
& pose,
100
core::chemical::ResidueTypeCOP
restype,
101
core::conformation::ResidueCOP
target_residue,
102
core::Size
const
trial_pos
103
);
104
105
void
106
determine_found_residues_compatibility
(
core::pose::PoseCOP
ref_poseCOP );
107
108
109
private
:
110
utility::vector1< utility::vector1< core::conformation::ResidueOP >
>
found_resis_
;
111
112
std::map< core::conformation::ResidueCOP, std::map< core::conformation::ResidueCOP, core::Size > >
found_res_compatibility_
;
113
bool
found_res_compatibility_determined_
;
114
115
utility::vector1< core::Size >
trial_positions_
;
116
core::scoring::ScoreFunctionOP
reduced_scofx_
;
117
core::Size
cut1_
,
cut2_
,
cut3_
,
cut4_
;
118
utility::vector1< toolbox::match_enzdes_util::EnzConstraintParametersCOP >
match_params_
;
119
120
};
//class SecondaryMatchProtocol
121
122
123
/// @brief helper class to process and output the different found poses
124
class
PoseFoundResiduesCombination
:
public
utility::pointer::ReferenceCount
125
{
126
public
:
127
virtual
~PoseFoundResiduesCombination
();
128
PoseFoundResiduesCombination
(
129
core::pose::PoseCOP
ref_pose_in,
130
SecondaryMatchProtocolCAP
seqmatch_in
131
);
132
133
void
134
add_residue
(
core::conformation::ResidueOP
res_in );
135
136
bool
137
construct_and_dump_outpose
(
utility::vector1< toolbox::match_enzdes_util::EnzConstraintParametersCOP >
match_params );
138
139
private
:
140
141
//the reference pose for this class
142
core::pose::PoseCOP
ref_pose_
;
143
144
//the residues that need to be put into the ref pose
145
utility::vector1< core::conformation::ResidueCOP >
combine_resis_
;
146
147
//the secondary match protocol that a particular instance comes from
148
SecondaryMatchProtocolCAP
secmatch_prot_
;
149
150
};
//PoseFoundResidueCombination
151
152
153
}
//namespace enzdes
154
}
//namespace protocols
155
156
157
#endif // INCLUDED_protocols_enzdes_EnzdesFixBBProtocol_HH
Generated on Sat Jun 1 2013 11:48:49 for Rosetta 3.5 by
1.8.4