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
comparative_modeling
ThreadingMover.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/comparative_modeling/ThreadingMover.hh
11
/// @brief
12
/// @author James Thompson
13
14
// libRosetta headers
15
16
#ifndef INCLUDED_protocols_comparative_modeling_ThreadingMover_HH
17
#define INCLUDED_protocols_comparative_modeling_ThreadingMover_HH
18
19
#include <
protocols/moves/Mover.hh
>
20
21
#include <
core/types.hh
>
22
#include <
core/pose/Pose.hh
>
23
24
#include <
core/id/SequenceMapping.hh
>
25
#include <
core/sequence/SequenceAlignment.hh
>
26
#include <
core/fragment/FragSet.hh
>
27
#include <
core/fragment/FragSet.fwd.hh
>
28
29
// C++ headers
30
#include <set>
31
#include <string>
32
33
#include <utility/vector1.hh>
34
35
namespace
protocols {
36
namespace
comparative_modeling {
37
38
class
ThreadingMover
:
public
protocols::moves::Mover
{
39
40
public
:
41
42
/// @brief align describes the association between the query and template
43
/// sequences, template_pose is the conformation from which to build a
44
/// threading model.
45
ThreadingMover
(
46
core::sequence::SequenceAlignment
const
& align,
47
core::pose::Pose
const
&
template_pose
48
);
49
50
virtual
~ThreadingMover
() {}
51
52
/// @brief Returns the index of the query sequence in SequenceAlignment
53
/// object.
54
core::Size
query_index
()
const
;
55
56
/// @brief Returns the index of the template sequence in SequenceAlignment
57
/// object.
58
core::Size
template_index
()
const
;
59
60
/// @brief Returns the SequenceAlignment object used in threading.
61
core::sequence::SequenceAlignment
alignment
();
62
63
/// @brief Sets the index of the query sequence in SequenceAlignment object.
64
void
query_index
(
core::Size
new_index );
65
66
/// @brief Sets the index of the template sequence in SequenceAlignment
67
/// object.
68
void
template_index
(
core::Size
new_index );
69
70
/// @brief Sets the SequenceAlignment associated with this object.
71
void
alignment
(
core::sequence::SequenceAlignment
new_align );
72
73
void
template_pose
(
core::pose::Pose
template_pose );
74
75
//boolean setters
76
void
build_loops
(
bool
setting );
77
78
void
randomize_loop_coords
(
bool
setting );
79
80
void
repack_query
(
bool
setting );
81
82
//boolean getters
83
bool
build_loops
()
const
;
84
85
bool
repack_query
()
const
;
86
87
bool
randomize_loop_coords
();
88
89
void
min_loop_size
(
core::Size
const
new_size );
90
91
Size
min_loop_size
()
const
;
92
93
utility::vector1< core::fragment::FragSetOP >
frag_libs
()
const
;
94
95
void
frag_libs
(
96
utility::vector1< core::fragment::FragSetOP >
new_libs
97
);
98
99
/// @brief Returns the SequenceMapping between query and template.
100
core::id::SequenceMapping
get_qt_mapping
(
101
core::pose::Pose
const
& query_pose
102
)
const
;
103
104
/// @brief Threads the given Pose onto the template_pose with the
105
/// SequenceAlignment provided.
106
virtual
void
apply
(
core::pose::Pose
& query_pose );
107
108
virtual
std::string
get_name
()
const
;
109
110
private
:
// methods
111
112
///
113
bool
atoms_are_equiv
(
std::string
const
& a1,
std::string
const
& a2 );
114
115
/// @brief add pair of equivalent atoms to atom_equiv_ table.
116
void
add_equiv_atoms
(
std::string
const
& a1,
std::string
const
& a2 );
117
118
/// @brief initialize table of equivalent atoms between all residues.
119
void
init_atom_equiv
();
120
121
private
:
// data members
122
123
core::Size
query_index_
,
template_index_
;
124
core::pose::Pose
template_pose_
;
125
core::sequence::SequenceAlignment
align_
;
126
bool
build_query_loops_
;
127
bool
repack_query_
;
128
bool
randomize_loop_coords_
;
129
core::Size
min_loop_size_
;
130
131
//std::map< std::string, utility::vector1< std::string > > atom_equiv_;
132
std::map< std::string, std::set< std::string > >
atom_equiv_
;
133
utility::vector1< core::fragment::FragSetOP >
frag_libs_
;
134
};
// ThreadingMover
135
136
}
// comparative_modeling
137
}
// protocols
138
139
#endif
Generated on Sat Jun 1 2013 11:45:42 for Rosetta 3.5 by
1.8.4