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
toolbox
task_operations
ProteinCoreResFilter.cc
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/toolbox/task_operations/RestrictToInterfaceOperation.cc
11
/// @brief TaskOperation class that finds an interface and leaves it mobile in the PackerTask
12
/// @author Steven Lewis smlewi@unc.edu
13
14
// Unit Headers
15
#include <
protocols/toolbox/task_operations/ProteinCoreResFilter.hh
>
16
#include <
protocols/toolbox/task_operations/ProteinCoreResFilterCreator.hh
>
17
#include <
protocols/simple_filters/NonSequentialNeighborsFilter.hh
>
18
#include <utility/tag/Tag.hh>
19
20
// Project Headers
21
#include <
core/pose/Pose.hh
>
22
23
// Utility Headers
24
#include <
core/types.hh
>
25
#include <basic/Tracer.hh>
26
27
// C++ Headers
28
29
static
basic::Tracer
TR
(
"protocols.toolbox.TaskOperations.ProteinCore"
);
30
31
namespace
protocols {
32
namespace
toolbox {
33
namespace
task_operations {
34
35
ProteinCore::ProteinCore
() :
36
ResFilter
(),
37
distance_threshold_( 8.0 ),
38
neighbor_cutoff_( 10 ),
39
bound_( false ),
40
jump_( 1 ),
41
neighbor_count_cutoff_( 6 )
42
{}
43
44
void
45
ProteinCore::parse_tag
(
TagPtr
tag ){
46
distance_threshold_
= tag->getOption<
core::Real
>(
"distance_threshold"
, 8.0 ) ;
47
neighbor_cutoff_
= tag->getOption<
core::Size
>(
"neighbor_cutoff"
, 10 );
48
bound_
= tag->getOption<
bool
>(
"bound"
, false );
49
jump_
= tag->getOption<
core::Size
>(
"jump"
, 1 );
50
neighbor_count_cutoff_
= tag->getOption<
core::Size
>(
"neighbor_count_cutoff"
, 6 );
51
52
TR
<<
"jump: "
<<jump_<<
" distance_threshold: "
<<
distance_threshold_
<<
" neighbor_cutoff: "
<<neighbor_cutoff_<<
" bound: "
<<bound_<<
" neighbor_count_cutoff_: "
<<neighbor_count_cutoff_<<std::endl;
53
}
54
55
bool
56
ProteinCore::operator()
(
core::pose::Pose
const
& pose,
core::Size
index )
const
{
57
protocols::simple_filters::NonSequentialNeighborsFilter
nsnf;
58
59
nsnf.
distance_threshold
(
distance_threshold_
);
60
nsnf.
neighbor_cutoff
(
neighbor_cutoff_
);
61
nsnf.
bound
(
bound_
);
62
nsnf.
resnum
( index );
63
nsnf.
jump
(
jump_
);
64
65
core::Size
const
neighbor_count
( (
core::Size
) nsnf.
compute
( pose ) );
66
return
(
neighbor_count
>=
neighbor_count_cutoff_
);
67
}
68
69
core::pack::task::operation::ResFilterOP
70
ProteinCoreFilterCreator::create_res_filter
()
const
{
71
return
new
ProteinCore
;
72
}
73
74
75
}
//namespace protocols
76
}
//namespace toolbox
77
}
//namespace task_operations
78
Generated on Sat Jun 1 2013 12:23:25 for Rosetta 3.5 by
1.8.4