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
protein_interface_design
filters
AtomicContactCountFilter.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/protein_interface_design/filters/AtomicContactCountFilter.hh
11
/// @brief
12
/// @author Alex Ford (fordas@uw.edu)
13
14
#ifndef INCLUDED_protocols_protein_interface_design_filters_AtomicContactCountFilter_hh
15
#define INCLUDED_protocols_protein_interface_design_filters_AtomicContactCountFilter_hh
16
17
// Project Headers
18
#include <
core/scoring/ScoreFunction.hh
>
19
#include <
core/pack/task/TaskFactory.fwd.hh
>
20
#include <
core/pose/Pose.fwd.hh
>
21
#include <
core/types.hh
>
22
#include <
protocols/filters/Filter.hh
>
23
#include <utility/tag/Tag.fwd.hh>
24
#include <
protocols/moves/DataMap.fwd.hh
>
25
#include <
protocols/moves/Mover.fwd.hh
>
26
#include <
core/scoring/ScoreType.hh
>
27
#include <
core/pack/task/TaskFactory.fwd.hh
>
28
#include <string>
29
30
#include <
protocols/protein_interface_design/filters/AtomicContactCountFilter.fwd.hh
>
31
32
namespace
protocols {
33
namespace
protein_interface_design {
34
namespace
filters {
35
36
class
AtomicContactCountFilter
:
public
protocols::filters::Filter
37
{
38
public
:
39
AtomicContactCountFilter
();
40
AtomicContactCountFilter
(
core::Real
distance_cutoff);
41
AtomicContactCountFilter
(
AtomicContactCountFilter
const
& copy );
42
43
virtual
protocols::filters::FilterOP
clone
()
const
;
44
virtual
protocols::filters::FilterOP
fresh_instance
()
const
;
45
virtual
~AtomicContactCountFilter
();
46
47
// @brief Filter name
48
virtual
std::string
name
()
const
{
return
"AtomicContactCountFilter"
; }
49
50
void
initialize_all_atoms
(
core::pack::task::TaskFactoryOP
task_factory = NULL);
51
52
void
initialize_cross_jump
(
core::Size
jump,
std::string
sym_dof_name =
""
,
core::pack::task::TaskFactoryOP
task_factory = NULL,
bool
normalize_by_sasa =
false
);
53
54
void
initialize_cross_chain
(
core::pack::task::TaskFactoryOP
task_factory = NULL,
bool
normalize_by_sasa =
false
,
bool
detect_chains_for_interface_by_task =
false
);
55
56
void
parse_my_tag
(
utility::tag::TagPtr
const
tag,
protocols::moves::DataMap
&,
protocols::filters::Filters_map
const
&,
protocols::moves::Movers_map
const
&,
core::pose::Pose
const
& );
57
58
/// @brief Returns true if the given pose passes the filter, false otherwise.
59
virtual
bool
apply
(
core::pose::Pose
const
&
/*pose*/
)
const
{
return
true
; }
60
61
/// @brief used to report filter internals through a score or silent file
62
// to determine that derived class has not overridden }
63
virtual
core::Real
report_sm
(
core::pose::Pose
const
& pose )
const
{
return
compute
(pose); }
64
65
core::Real
compute
(
core::pose::Pose
const
&)
const
;
66
67
private
:
68
//TODO Alex Ford Add support for specified chain mode, need to add chain-id resolution to tag parsing.
69
//TODO Alex Ford Likely even better to abstract chain detection & jump code into an interface sasa calculator
70
// and compute the sasa value there.
71
enum
Mode
{
ALL
,
CROSS_CHAIN_DETECTED
,
CROSS_CHAIN_ALL
,
CROSS_JUMP
};
72
73
core::pack::task::TaskFactoryOP
task_factory_
;
74
core::Real
distance_cutoff_
;
75
76
Mode
filter_mode_
;
77
bool
normalize_by_sasa_
;
78
79
core::Size
jump_
;
80
std::string
sym_dof_name_
;
81
};
82
83
}
84
}
85
}
86
87
#endif
Generated on Sat Jun 1 2013 12:03:03 for Rosetta 3.5 by
1.8.4