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
rotamer_set
RotamerSubsets.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 core/pack/RotamerSet/RotamerSets.hh
11
/// @brief RotamerSets class declaration
12
/// @author Andrew Leaver-Fay (leaverfa@email.unc.edu)
13
14
15
#ifndef INCLUDED_core_pack_rotamer_set_RotamerSubsets_hh
16
#define INCLUDED_core_pack_rotamer_set_RotamerSubsets_hh
17
18
// Unit Headers
19
#include <
core/pack/rotamer_set/RotamerSubsets.fwd.hh
>
20
21
// Package Headers
22
23
#include <
core/pack/rotamer_set/RotamerSet.fwd.hh
>
24
#include <
core/pack/rotamer_set/FixbbRotamerSets.hh
>
25
#include <
core/pack/task/PackerTask.fwd.hh
>
26
// AUTO-REMOVED #include <core/pack/interaction_graph/InteractionGraphBase.fwd.hh>
27
// AUTO-REMOVED #include <core/pack/interaction_graph/PrecomputedPairEnergiesInteractionGraph.fwd.hh>
28
// AUTO-REMOVED #include <core/pack/interaction_graph/OnTheFlyInteractionGraph.fwd.hh>
29
30
#ifdef WIN32 //VC++ needs full class declaration
31
#include <
core/pack/rotamer_set/RotamerSet.hh
>
// WIN32 INCLUDE
32
#endif
33
34
// Project Headers
35
#include <
core/conformation/Residue.fwd.hh
>
36
// AUTO-REMOVED #include <core/chemical/ResidueTypeSet.fwd.hh>
37
// AUTO-REMOVED #include <core/graph/Graph.fwd.hh>
38
// AUTO-REMOVED #include <core/pose/Pose.fwd.hh>
39
// AUTO-REMOVED #include <core/scoring/ScoreFunction.fwd.hh>
40
41
// Utility Headers
42
#include <utility/vector0.hh>
43
#include <
core/types.hh
>
44
45
#include <utility/vector1.hh>
46
47
48
namespace
core {
49
namespace
pack {
50
namespace
rotamer_set {
51
52
//typedef utility::vector1< RotamerSetOP > RotamerSetVector;
53
54
class
RotamerSubsets
:
public
FixbbRotamerSets
55
{
56
public
:
57
typedef
task::PackerTaskCOP
PackerTaskCOP
;
58
59
public
:
60
RotamerSubsets
(
FixbbRotamerSets
& source,
utility::vector0< int >
const
& rotamer_subset );
61
~RotamerSubsets
();
62
63
virtual
uint
nrotamers
()
const
;
64
virtual
uint
nrotamers_for_moltenres
(
uint
)
const
;
65
66
virtual
uint
total_residue
()
const
;
67
68
virtual
uint
nmoltenres
()
const
;
69
70
virtual
71
uint
72
moltenres_2_resid
(
uint
)
const
;
73
74
virtual
75
uint
76
resid_2_moltenres
(
uint
)
const
;
77
78
virtual
79
uint
80
moltenres_for_rotamer
(
uint
)
const
;
81
82
virtual
83
uint
84
res_for_rotamer
(
uint
)
const
;
85
86
virtual
87
core::conformation::ResidueCOP
88
rotamer
(
uint
)
const
;
89
90
virtual
91
core::conformation::ResidueCOP
92
rotamer_for_moltenres
(
uint
moltenres_id,
uint
rotamerid )
const
;
93
94
virtual
95
uint
96
nrotamer_offset_for_moltenres
(
uint
)
const
;
97
98
virtual
99
RotamerSetCOP
100
rotamer_set_for_residue
(
uint
resid )
const
;
101
102
virtual
103
RotamerSetOP
104
rotamer_set_for_residue
(
uint
resid );
105
106
virtual
107
RotamerSetCOP
108
rotamer_set_for_moltenresidue
(
uint
moltenresid )
const
;
109
110
virtual
111
RotamerSetOP
112
rotamer_set_for_moltenresidue
(
uint
moltenresid );
113
114
RotamerSetVector::const_iterator
begin
()
115
{
return
set_of_rotamer_sets_
.begin(); }
116
117
RotamerSetVector::const_iterator
end
()
118
{
return
set_of_rotamer_sets_
.end(); }
119
120
/// convert rotid in full rotamer enumeration into rotamer id on its source residue
121
virtual
122
uint
123
rotid_on_moltenresidue
(
uint
rotid )
const
;
124
125
/// convert moltenres rotid to id in full rotamer enumeration
126
virtual
127
uint
128
moltenres_rotid_2_rotid
(
uint
moltenres,
uint
moltenresrotid )
const
;
129
130
private
:
131
void
update_offset_data
();
132
133
134
protected
:
135
136
virtual
137
utility::vector1< uint >
const
&
138
resid_2_moltenres_vector
()
const
{
139
return
resid_2_moltenres_
;
140
}
141
142
virtual
143
utility::vector1< uint >
const
&
144
moltenres_2_resid_vector
()
const
{
145
return
moltenres_2_resid_
;
146
}
147
148
private
:
149
uint
nmoltenres_
;
150
uint
total_residue_
;
151
152
uint
nrotamers_
;
153
154
RotamerSetVector
set_of_rotamer_sets_
;
155
utility::vector1< uint >
resid_2_moltenres_
;
156
utility::vector1< uint >
moltenres_2_resid_
;
157
utility::vector1< uint >
nrotamer_offsets_
;
158
159
// originating moltenres for a particular rotamer in the enumeration of all rotamers
160
utility::vector1< uint >
moltenres_for_rotamer_
;
161
utility::vector1< uint >
nrotamers_for_moltenres_
;
162
163
};
164
165
}
// namespace rotamer_set
166
}
// namespace pack
167
}
// namespace core
168
169
170
#endif // INCLUDED_core_pack_RotamerSet_RotamerSets_HH
Generated on Sat Jun 1 2013 11:33:46 for Rosetta 3.5 by
1.8.4