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
pose_metric_calculators
CatPiCalculator.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
/// @begin CatPiCalculator
11
///
12
/// @brief
13
/// How many cation-pi interactions are there?
14
///
15
/// @detailed
16
/// Not much detailed here. Iterate through the carbons of aromatic rings and compare that to
17
/// the distance of the polar hydrogens in basic residues...histidine not considered. Default distance is 3.2A.
18
/// Wait, you want to know how to use this? Well, within your protocol, you need to do the following:
19
/// First, create the calculator. To do this, see below:
20
/// core::pose::metrics::PoseMetricCalculatorOP cat_pi_calculator = new protocols::toolbox::pose_metric_calculators::SaltBridgeCalculator();
21
/// Then you must register this so that the pose understands it. See below:
22
/// core::pose::metrics::CalculatorFactory::Instance().register_calculator( "cat_pi_metric", cat_pi_calculator );
23
/// To actually get the metric, you have to print it. For example:
24
/// core::pose::Pose pose;
25
/// pose.print_metric("cat_pi_metric", "cat_pi")
26
/// Where cat_pi_metric is the name that it is registered under and "cat_pi" is the key, seen below.
27
///
28
///
29
///
30
/// @author
31
/// Steven Combs
32
///
33
/// @last_modified October 22 2010
34
/////////////////////////////////////////////////////////////////////////
35
#ifndef INCLUDED_protocols_toolbox_pose_metric_calculators_CatPiCalculator_hh
36
#define INCLUDED_protocols_toolbox_pose_metric_calculators_CatPiCalculator_hh
37
38
39
40
#include <
core/pose/metrics/PoseMetricCalculatorBase.hh
>
41
#include <
core/pose/Pose.fwd.hh
>
42
#include <
core/types.hh
>
43
#include <basic/MetricValue.fwd.hh>
44
45
#include <utility/vector1.hh>
46
47
48
49
namespace
protocols{
50
namespace
toolbox {
51
namespace
pose_metric_calculators {
52
// inherit from structure dependent calculator because this is a structure dependent calculator
53
class
CatPiCalculator
:
public
core::pose::metrics::StructureDependentCalculator
{
54
public
:
55
//default constructor where distance_cutoff is = to 3.2
56
CatPiCalculator
();
57
58
//constructor where you define what the distance cutoff is for the Hydrogen and Acceptor atoms
59
CatPiCalculator
(
core::Real
dist_cutoff);
60
61
core::pose::metrics::PoseMetricCalculatorOP
clone
()
const
{
62
return
new
CatPiCalculator
(
distance_cutoff_
); };
63
64
private
:
65
core::Real
distance_cutoff_
;
//distance cutoff between the Hydrogen and Acceptor atoms. Default is 3.2
66
core::Size
cat_pi_total_
;
67
68
protected
:
69
virtual
void
lookup
(
std::string
const
& key, basic::MetricValueBase * valptr )
const
;
70
virtual
std::string
print
(
std::string
const
& key )
const
;
71
virtual
void
recompute
(
core::pose::Pose
const
& this_pose );
72
73
};
74
75
76
77
78
}
79
}
80
}
81
82
83
84
85
86
#endif
Generated on Sat Jun 1 2013 12:21:37 for Rosetta 3.5 by
1.8.4