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
core
fragment
IndependentBBTorsionSRFD.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
// :noTabs=false:tabSize=4:indentSize=4:
4
//
5
// (c) Copyright Rosetta Commons Member Institutions.
6
// (c) This file is part of the Rosetta software suite and is made available under license.
7
// (c) The Rosetta software is developed by the contributing members of the Rosetta Commons.
8
// (c) For more information, see http://www.rosettacommons.org. Questions about this can be
9
// (c) addressed to University of Washington UW TechTransfer, email: license@u.washington.edu.
10
11
/// @file core/fragment/IndependentBBTorsionSRFD.hh
12
/// @brief A version of BBTorsionSRFD that considers each torsion independently
13
/// during is_applicable() and apply() calls when passed a MoveMap (vs
14
/// the all-torsions-must-be-moveable-or-nothing-is behavior in the
15
/// original BBTorsionSRFD).
16
/// @author Yih-En Andrew Ban (yab@u.washington.edu)
17
18
#ifndef INCLUDED_core_fragment_IndependentBBTorsionSRFD_hh
19
#define INCLUDED_core_fragment_IndependentBBTorsionSRFD_hh
20
21
22
// unit headers
23
#include <
core/fragment/IndependentBBTorsionSRFD.fwd.hh
>
24
25
// package headers
26
#include <
core/fragment/BBTorsionSRFD.hh
>
27
#include <
core/fragment/SecstructSRFD.hh
>
28
29
#include <
core/types.hh
>
30
31
#include <utility/vector1.hh>
32
33
34
35
namespace
core {
36
namespace
fragment {
37
38
39
/// @brief A version of BBTorsionSRFD that considers each torsion independently
40
/// during is_applicable() and apply() calls when passed a MoveMap (vs the
41
/// all-torsions-must-be-moveable-or-nothing-is behavior in the original
42
/// BBTorsionSRFD).
43
class
IndependentBBTorsionSRFD
:
public
BBTorsionSRFD
{
44
45
46
private
:
// typedefs
47
48
49
typedef
BBTorsionSRFD
Super
;
50
typedef
SecstructSRFD
Super2
;
51
52
53
public
:
// typedefs
54
55
56
typedef
core::Size
Size
;
57
typedef
core::kinematics::MoveMap
MoveMap
;
58
typedef
core::pose::Pose
Pose
;
59
60
61
public
:
// construct/destruct
62
63
64
/// @brief default constructor
65
IndependentBBTorsionSRFD
();
66
67
68
/// @brief constructor
69
/// @param[in] n_bbtorsions Number of backbone torsions.
70
/// @param[in] secstruct The single character secondary structure type.
71
/// @param[in] sequence The single character sequence type.
72
IndependentBBTorsionSRFD
(
73
Size
const
n_bbtorsions,
74
char
const
secstruct
,
75
char
const
sequence
76
);
77
78
79
/// @brief copy constructor
80
IndependentBBTorsionSRFD
(
IndependentBBTorsionSRFD
const
& rval );
81
82
83
/// @brief default destructor
84
virtual
85
~IndependentBBTorsionSRFD
();
86
87
88
public
:
// assignment
89
90
91
/// @brief copy assignment
92
IndependentBBTorsionSRFD
&
operator =
(
IndependentBBTorsionSRFD
const
& rval );
93
94
95
public
:
// virtual constructors
96
97
98
/// @brief clone this object
99
virtual
100
SingleResidueFragDataOP
clone
()
const
;
101
102
103
/// @brief create a new instance of this object
104
virtual
105
SingleResidueFragDataOP
create
()
const
;
106
107
108
public
:
// methods
109
110
111
/// @brief apply only torsions in this fragment marked as moveable in the given
112
/// MoveMap
113
/// @param[in] movemap Check for moveable torsions in this MoveMap.
114
/// @param[in,out] pose The Pose to modify.
115
/// @param[in] seqpos Insert at this sequence position.
116
/// @return True if at least one torsion inserted and second level superclass
117
/// <tt>SecstructSRFD::apply()</tt> succeeded, otherwise false.
118
virtual
119
bool
apply
(
120
MoveMap
const
& movemap,
121
Pose
& pose,
122
Size
const
seqpos
123
)
const
;
124
125
126
/// @brief is at least one torsion marked as moveable in the given MoveMap?
127
/// @param[in] movemap Check for moveable torsions in this MoveMap.
128
/// @param[in] seqpos Check at this sequence position.
129
/// @return True if at least one torsion moveable and second level superclass
130
/// <tt>SecstructSRFD::is_applicable()</tt>, otherwise False.
131
virtual
132
bool
is_applicable
(
133
MoveMap
const
& movemap,
134
Size
seqpos
135
)
const
;
136
137
138
};
139
140
141
}
// namespace fragment
142
}
// namespace core
143
144
145
#endif
/* INCLUDED_core_fragment_IndependentBBTorsionSRFD_HH */
Generated on Sat Jun 1 2013 11:32:35 for Rosetta 3.5 by
1.8.4