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
IGEdgeReweightContainer.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 edge reweighting for Interaction Graphs
11
/// @brief
12
/// @author Florian Richter, floric@u.washington.edu, june 08
13
14
#ifndef INCLUDED_core_pack_task_IGEdgeReweightContainer_hh
15
#define INCLUDED_core_pack_task_IGEdgeReweightContainer_hh
16
17
// Unit headers
18
#include <
core/pack/task/IGEdgeReweightContainer.fwd.hh
>
19
// Package headers
20
21
// Project headers
22
#include <
core/types.hh
>
23
//#include <core/conformation/Residue.fwd.hh>
24
//#include <core/chemical/ResidueTypeSet.hh>
25
#include <
core/pose/Pose.fwd.hh
>
26
#include <
core/pack/task/PackerTask.fwd.hh
>
27
//#include <core/id/AtomID.fwd.hh>
28
29
// Utility Headers
30
#include <utility/pointer/ReferenceCount.hh>
31
// AUTO-REMOVED #include <utility/vector1.hh>
32
33
#include <utility/vector1.hh>
34
35
36
// STL Headers
37
38
namespace
core {
39
namespace
pack {
40
namespace
task {
41
42
43
/// @brief helper class for IGEdgeReweightContainer
44
class
IGEdgeReweighter
:
public
utility::pointer::ReferenceCount
{
45
46
public
:
47
IGEdgeReweighter
() :
default_weight_
(1.0) {}
48
virtual
~IGEdgeReweighter
();
49
50
virtual
51
Real
52
get_edge_reweight
(
53
pose::Pose
const
& pose,
54
PackerTask
const
& task,
55
Size
res1,
56
Size
res2
57
)
const
= 0;
58
59
protected
:
60
61
//this is the default non-upweighted weight. all reweighters derived from this class
62
//should return this variable for edges with no specific upweighting
63
core::Real
const
default_weight_
;
64
65
};
66
67
/// @brief class that interfaces to containers holding IGedge weights between individual residues of the task
68
/// @brief note: this class only knows about the pose numbering, not about the numbers in the IG
69
class
IGEdgeReweightContainer
:
public
utility::pointer::ReferenceCount
{
70
71
public
:
72
73
IGEdgeReweightContainer
(
Size
nres );
74
virtual
~IGEdgeReweightContainer
();
75
76
Real
res_res_weight
(
77
pose::Pose
const
& pose,
78
PackerTask
const
& task,
79
Size
res1id,
80
Size
res2id
81
)
const
;
82
83
void
add_reweighter
(
IGEdgeReweighterOP
reweighter );
84
85
utility::vector1< IGEdgeReweighterOP >::const_iterator
86
reweighters_begin
()
const
{
87
return
edge_reweighters_
.begin(); }
88
89
utility::vector1< IGEdgeReweighterOP >::const_iterator
90
reweighters_end
()
const
{
91
return
edge_reweighters_
.end(); }
92
93
private
:
94
95
utility::vector1< IGEdgeReweighterOP >
edge_reweighters_
;
96
Size
nres_
;
97
98
};
99
100
101
102
103
104
}
//task
105
}
//pack
106
}
//core
107
108
#endif
Generated on Sat Jun 1 2013 11:33:50 for Rosetta 3.5 by
1.8.4