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
FragQualCalculator.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 ./src/protocols/toolbox/PoseMetricCalculator/FragQualCalculator.hh
11
/// @brief header file for FragQualCalculator class.
12
/// Roughly, fragment quality is number of fragments which are close to a pose in rmsd
13
/// @detailed
14
/// @author Nobuyasu Koga ( nobuyasu@uw.edu )
15
16
17
#ifndef INCLUDED_protocols_toolbox_pose_metric_calculators_FragQualCalculator_hh
18
#define INCLUDED_protocols_toolbox_pose_metric_calculators_FragQualCalculator_hh
19
20
#include <
core/pose/metrics/PoseMetricCalculatorBase.hh
>
21
#include <basic/MetricValue.fwd.hh>
22
#include <
core/types.hh
>
23
#include <
core/pose/Pose.fwd.hh
>
24
#include <
core/fragment/FragSet.fwd.hh
>
25
26
// Utility headers
27
#include <utility/vector1.hh>
28
29
//// C++ headers
30
// Parser headers
31
#include <
protocols/moves/DataMap.fwd.hh
>
32
#include <
protocols/moves/Mover.fwd.hh
>
33
#include <
protocols/filters/Filter.fwd.hh
>
34
#include <utility/tag/Tag.fwd.hh>
35
36
namespace
protocols {
37
namespace
toolbox {
38
namespace
pose_metric_calculators {
39
40
class
FragQualCalculator
:
public
core::pose::metrics::StructureDependentCalculator
{
41
public
:
42
43
44
typedef
core::pose::metrics::StructureDependentCalculator
Super
;
45
typedef
std::string
String
;
46
typedef
core::Size
Size
;
47
typedef
core::Real
Real
;
48
typedef
core::pose::Pose
Pose
;
49
typedef
core::pose::metrics::PoseMetricCalculatorOP
PoseMetricCalculatorOP
;
50
typedef
basic::MetricValueBase
MetricValueBase
;
51
typedef
core::fragment::FragSet
FragSet
;
52
typedef
core::fragment::FragSetOP
FragSetOP
;
53
54
typedef
utility::tag::TagPtr
TagPtr
;
55
typedef
protocols::filters::Filters_map
Filters_map
;
56
typedef
protocols::moves::DataMap
DataMap
;
57
typedef
protocols::moves::Movers_map
Movers_map
;
58
59
60
public
:
// constructor/destructor
61
62
63
/// @brief default constructor
64
FragQualCalculator
();
65
66
/// @brief default constructor
67
FragQualCalculator
(
FragSetOP
const
& frag,
Real
const
rmsd=1.0,
Real
const
ratio=30.0 );
68
69
/// @brief copy constructor
70
FragQualCalculator
(
FragQualCalculator
const
& rval );
71
72
/// @brief destructor
73
virtual
~FragQualCalculator
();
74
75
76
public
:
// virtual constructor
77
78
79
/// @brief make clone
80
PoseMetricCalculatorOP
clone
()
const
{
return
new
FragQualCalculator
( *
this
); }
81
82
83
public
:
// mutator
84
85
86
/// @brief set fragments
87
void
set_fragset
(
FragSetOP
const
& frags );
88
89
/// @brief rmsd cutoff of good fragments
90
void
rmsd_cutoff
(
Real
const
& val );
91
92
/// @brief
93
void
ratio_cutoff
(
Real
const
& val );
94
95
/// @brief
96
void
set_region
(
Size
const
val1,
Size
const
val2 );
97
98
/// @brief
99
void
begin
(
Size
const
begin
) {
begin_
=
begin
; }
100
101
/// @brief
102
void
end
(
Size
const
end
) {
end_
=
end
; }
103
104
105
public
:
106
107
108
void
parse_my_tag
(
TagPtr
const
tag,
109
DataMap
& data,
110
Filters_map
const
&,
111
Movers_map
const
&,
112
Pose
const
& pose );
113
114
115
protected
:
116
117
118
virtual
void
lookup
(
String
const
& key,
MetricValueBase
* valptr )
const
;
119
virtual
std::string
print
(
String
const
& key )
const
;
120
virtual
void
recompute
(
Pose
const
& this_pose );
121
122
123
private
:
124
125
/// @brief
126
Real
rmsd_cutoff_goodfrag_
;
127
128
/// @brief
129
Real
ratio_cutoff_goodfrag_
;
130
131
/// @brief
132
Real
total_goodfrags_
;
133
/// @brief
134
Real
coverage_
;
135
136
/// @brief
137
utility::vector1< Size >
goodfrags_
;
138
139
/// @brief
140
FragSetOP
frag_
;
141
142
/// @brief
143
Size
begin_
;
144
145
/// @brief
146
Size
end_
;
147
148
/// @brief
149
bool
verbose_
;
150
151
152
};
//FragQualCalculator
153
154
155
}
// ns PoseMetricCalculators
156
}
// ns toolbox
157
}
// ns protocols
158
159
#endif
Generated on Sat Jun 1 2013 12:21:58 for Rosetta 3.5 by
1.8.4