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
topology_broker
FragmentClaimer.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 TopologyBroker
11
/// @brief top-class (Organizer) of the TopologyBroker mechanism
12
/// @detailed responsibilities:
13
/// @author Oliver Lange
14
15
16
#ifndef INCLUDED_protocols_topology_broker_FragmentClaimer_hh
17
#define INCLUDED_protocols_topology_broker_FragmentClaimer_hh
18
19
20
// Unit Headers
21
#include <
protocols/topology_broker/FragmentClaimer.fwd.hh
>
22
23
// Package Headers
24
#include <
protocols/topology_broker/TopologyClaimer.hh
>
25
26
// Project Headers
27
#include <
core/pose/Pose.fwd.hh
>
28
#include <
core/kinematics/MoveMap.fwd.hh
>
29
#include <
protocols/simple_moves/FragmentMover.fwd.hh
>
30
#include <
protocols/loops/Loops.hh
>
31
32
// ObjexxFCL Headers
33
34
// Utility headers
35
#include <utility/excn/Exceptions.hh>
36
#include <utility/pointer/ReferenceCount.hh>
37
38
//// C++ headers
39
#include <string>
40
#include <set>
41
42
#include <utility/vector1.hh>
43
44
45
namespace
protocols {
46
namespace
topology_broker {
47
48
class
FragmentClaimer
:
public
virtual
TopologyClaimer
{
49
typedef
TopologyClaimer
Parent
;
50
public
:
51
FragmentClaimer
();
//for factory
52
FragmentClaimer
(
simple_moves::FragmentMoverOP
,
std::string
mover_tag
,
weights::AbinitioMoverWeightOP
weight );
53
FragmentClaimer
(
simple_moves::FragmentMoverOP
);
54
FragmentClaimer
(
FragmentClaimer
const
& src );
55
56
~FragmentClaimer
();
57
58
virtual
TopologyClaimerOP
clone
()
const
{
59
return
new
FragmentClaimer
( *
this
);
60
}
61
62
virtual
void
generate_claims
(
DofClaims
& );
63
64
///@brief is called after all round1 claims have been approved or retracted -- additional claims can be issued in this round
65
//virtual DofClaims finalize_claims( DofClaims& );
66
67
virtual
void
initialize_dofs
(
core::pose::Pose
&,
DofClaims
const
& init_claims,
DofClaims
& failed_to_init );
68
69
virtual
bool
accept_declined_claim
(
DofClaim
const
& was_declined );
70
71
///@brief type() is specifying the output name of the TopologyClaimer
72
virtual
std::string
type
()
const
{
73
return
_static_type_name
();
74
}
75
76
static
std::string
_static_type_name
() {
77
return
"FragmentClaimer"
;
78
}
79
80
void
set_mover
(
simple_moves::FragmentMoverOP
mover
);
81
82
void
set_mover_tag
(
std::string
const
&
str
);
83
84
void
set_bInitDofs
(
bool
set ) {
85
bInitDofs_
= set;
86
}
87
88
std::string
const
&
mover_tag
()
const
{
89
return
mover_tag_
;
90
}
91
92
virtual
moves::MoverOP
get_mover
(
core::pose::Pose
const
&
/*pose*/
)
const
;
93
94
void
get_sequence_region
( std::set< core::Size >& start_region )
const
;
95
96
97
protected
:
98
simple_moves::FragmentMover
const
&
mover
()
const
{
99
if
( !
mover_
)
throw
( utility::excn::EXCN_NullPointer(
"mover_ is NULL in FragmentClaimer::mover()"
) );
100
return
*
mover_
;
101
}
102
103
simple_moves::FragmentMoverOP
get_frag_mover_ptr
();
104
105
void
set_claim_right
(
DofClaim::ClaimRight
setting ) {
106
claim_right_
= setting;
107
}
108
109
virtual
bool
read_tag
(
std::string
tag, std::istream & );
110
111
core::kinematics::MoveMapOP
movemap_
;
112
113
virtual
void
init_after_reading
();
114
115
private
:
116
117
simple_moves::FragmentMoverOP
mover_
;
118
std::string
mover_tag_
;
119
120
//if false the initialize_dofs routine won't do anything -- but also not report the dof as failed-to initialized
121
bool
bInitDofs_
;
122
123
DofClaim::ClaimRight
claim_right_
;
/*default CAN_INIT */
124
125
///@brief regions that can be used for fragment insertions
126
loops::Loops
region_
;
127
128
///@brief if non-empty this claimer operates only on the sequences with these labels...
129
/// create std::set< Size > with residue numbers by get_sequence_region();
130
utility::vector1< std::string >
active_sequence_labels_
;
131
132
};
//class FragmentClaimer
133
134
}
135
}
136
137
#endif
Generated on Sat Jun 1 2013 12:24:40 for Rosetta 3.5 by
1.8.4