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
pack
task
operation
RestrictToInterface.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 RestrictToInterface.hh
11
/// @brief When passed to a PackerTask, pack/design is limited to the interface
12
/// @author ashworth
13
14
#ifndef INCLUDED_core_pack_task_operation_RestrictToInterface_hh
15
#define INCLUDED_core_pack_task_operation_RestrictToInterface_hh
16
17
//#include <core/pack/task/operation/RestrictToInterface.fwd.hh>
18
#include <
core/pack/task/operation/TaskOperation.hh
>
19
20
// for parsing
21
#include <utility/tag/Tag.fwd.hh>
22
#include <utility/vector1.hh>
23
24
//#include <core/conformation/Interface.hh>
25
#include <
core/types.hh
>
26
#include <
core/pack/task/PackerTask.fwd.hh
>
27
#include <
core/pose/Pose.fwd.hh
>
28
#include <
core/scoring/ScoreFunction.fwd.hh
>
29
30
31
#include <ObjexxFCL/FArray1D.hh>
32
33
namespace
core {
34
namespace
pack {
35
namespace
task {
36
namespace
operation {
37
38
//class RestrictTaskForDocking : public core::pack::task::operation::TaskOperation
39
//{
40
//public:
41
// typedef core::pack::task::operation::TaskOperation TaskOperation;
42
// typedef core::pack::task::operation::TaskOperationOP TaskOperationOP;
43
// typedef TaskOperation parent;
44
//public:
45
// RestrictTaskForDocking();
46
//
47
// RestrictTaskForDocking( core::scoring::ScoreFunctionCOP scorefxn, core::Size rb_jump, bool include_current, core::Real distance_ = 8 );
48
//
49
// virtual ~RestrictTaskForDocking();
50
//
51
// virtual TaskOperationOP clone() const;
52
//
53
// virtual void apply( core::pose::Pose const & pose, core::pack::task::PackerTask & task ) const;
54
//
55
//private:
56
// core::scoring::ScoreFunctionCOP scorefxn_;
57
// core::Size rb_jump_;
58
// bool include_current_;
59
// core::Real distance_;
60
//};
61
62
class
DockingNoRepack1
:
public
core::pack::task::operation::TaskOperation
63
{
64
public
:
65
typedef
core::pack::task::operation::TaskOperation
TaskOperation
;
66
typedef
core::pack::task::operation::TaskOperationOP
TaskOperationOP
;
67
typedef
TaskOperation
parent
;
68
public
:
69
DockingNoRepack1
();
70
DockingNoRepack1
(
core::Size
rb_jump_in );
71
72
virtual
~DockingNoRepack1
();
73
74
virtual
TaskOperationOP
clone
()
const
;
75
76
virtual
void
apply
(
core::pose::Pose
const
& pose,
core::pack::task::PackerTask
& task )
const
;
77
78
private
:
79
core::Size
rb_jump_
;
80
81
};
82
83
class
DockingNoRepack2
:
public
core::pack::task::operation::TaskOperation
84
{
85
public
:
86
typedef
core::pack::task::operation::TaskOperation
TaskOperation
;
87
typedef
core::pack::task::operation::TaskOperationOP
TaskOperationOP
;
88
typedef
TaskOperation
parent
;
89
public
:
90
DockingNoRepack2
();
91
DockingNoRepack2
(
core::Size
rb_jump_in );
92
93
virtual
~DockingNoRepack2
();
94
95
virtual
TaskOperationOP
clone
()
const
;
96
97
virtual
void
apply
(
core::pose::Pose
const
& pose,
core::pack::task::PackerTask
& task )
const
;
98
99
private
:
100
core::Size
rb_jump_
;
101
102
};
103
104
class
RestrictToInterface
:
public
core::pack::task::operation::TaskOperation
105
{
106
public
:
107
typedef
core::pack::task::operation::TaskOperation
TaskOperation
;
108
typedef
core::pack::task::operation::TaskOperationOP
TaskOperationOP
;
109
typedef
TaskOperation
parent
;
110
public
:
111
RestrictToInterface
() :
parent
(),
distance_
( 8 ),
loopy_interface_
( false )
112
{
113
rb_jump_
.push_back( 1 );
114
}
115
116
RestrictToInterface
(
core::Size
rb_jump_in,
core::Real
distance_in = 8 ) :
117
parent
(),
distance_
( distance_in ),
loopy_interface_
( false ) {
118
rb_jump_
.push_back( rb_jump_in );
119
}
120
121
///@brief Constructor with arguments for multiple jumps
122
RestrictToInterface
( utility::vector1_size rb_jump_in,
core::Real
distance_in
123
= 8 ) :
parent
(),
distance_
( distance_in ),
loopy_interface_
( false ) {
124
rb_jump_
= rb_jump_in;
125
}
126
127
RestrictToInterface
( utility::vector1_size rb_jump_in,
128
ObjexxFCL::FArray1D_bool loop_residues ) :
parent
(),
distance_
( 8 ),
129
loopy_interface_
( true ) {
130
loop_residues_
= loop_residues;
131
rb_jump_
= rb_jump_in;
132
}
133
134
RestrictToInterface
( ObjexxFCL::FArray1D_bool loop_residues ) :
135
parent
(),
distance_
( 8 ),
loopy_interface_
( true ) {
136
loop_residues_
= loop_residues;
137
}
138
139
RestrictToInterface
(
utility::vector1<bool>
loop_residues );
140
141
142
virtual
~RestrictToInterface
();
143
144
void
add_jump
(
core::Size
rb_jump_in ) {
145
rb_jump_
.push_back( rb_jump_in );
146
}
147
148
virtual
TaskOperationOP
clone
()
const
;
149
void
rb_jump
(
core::Size
const
jump_in );
150
void
distance
(
core::Real
const
distance_in );
151
void
symmetric_task
(
core::pose::Pose
const
& pose,
task::PackerTask
& task )
const
;
152
153
virtual
void
apply
(
core::pose::Pose
const
& pose,
core::pack::task::PackerTask
& task )
const
;
154
virtual
void
parse_tag
(
utility::tag::TagPtr
tag );
155
156
private
:
157
utility::vector1_size
rb_jump_
;
158
core::Real
distance_
;
159
bool
loopy_interface_
;
160
ObjexxFCL::FArray1D_bool
loop_residues_
;
161
};
162
163
}
// namespace operation
164
}
// namespace task
165
}
// namespace pack
166
}
// namespace core
167
168
#endif
Generated on Sat Jun 1 2013 11:33:55 for Rosetta 3.5 by
1.8.4